Русский English
[ На главную ] [ Карта сайта ] [ Написать письмо ]
Настройка ПО и регулировка параметров CONTROLEX™

Забыли пароль?

E-mail:

Пароль:

Регистрация

Инструкции

Настройка ПО и регулировка параметров CONTROLEX™.

Для Вашего удобства, ниже приведена часть инструкции по экспулатации CONTROLEX™, которая относится исключительно к установке драйверов, настройке и регулировке CONTROLEX™.

1.

Установка и настройка программного обеспечения

1.1.

Установка драйверов на дистрибутивы основанные на базе CentOS.

1.2.

Сборка драйверов для FXS/FXO из исходных текстов.

1.3.

Проверка состояния устройств CONTROLEX™ на уровне USB .

1.4.

Проверка состояния устройства на уровне Zaptel.

1.5.

Проверка состояния устройства CONTROLEX™ на уровне Asterisk®.

1.6.

Как определить соответствие между модулями CONTROLEX™ и банками каналов Zaptel.

1.7.

Каким образом выяснить или установить источник синхронизации для устройств CONTROLEX™.

2.

Регулировка

2.1.

Настройка разпознавания DTMF сигналов.

2.2.

Регулировка громкости каналов CONTROLEX™ FXO.

2.3.

Использование программы "FXO Tune" для подстройки FXO портов.


Установка драйверов на дистрибутивы основанные на базе CentOS.

Многие используют для работы дистрибутивы собранные на базе дистрибутива CentOS — TrixBox, Elastix. Для правильной установки драйверов CONTROLEX™ необходимо наличие утилиты fxload (часть пакета hotplug). К сожалению этот пакет исключен из репозитория CentOS — поэтому его придется установить отдельно.
Скачать его можно с домашней страницы проекта или на нашем сайте в разделе Драйверы и Утилиты.

Внимание! Всегда проверяйте наличие утилиты fxload. Ее отсутствие является одной из самых распространенных ошибок при установке и настройке драйверов для CONTROLEX™

Наверх


Сборка драйверов для FXS/FXO из исходных текстов.

Начиная с версии 1.2.4, драйвера для CONTROLEX™ (xpp) являются частью стандартного пакета Zaptel. Последнюю версию можно скачать с официального сайта Digium по адресу: http://ftp.digium.com/pub/zaptel/ или на нашем сайте в разделе Драйверы и Утилиты

Шаг 1. Инсталляция необходимого программного обеспечения

Для установки Zaptel из исходных текстов необходимо чтобы в системе были установлены следующие пакеты:

  • Исходные тексты ядра
  • пакет newt для сборки zttool
  • libusb для сборки загрузчика микропрограммы в CONTROLEX™.

Для проверки какие пакеты требуется установить в вашей системе выполните команду

./build_tools/install_prereq test

Чтобы установить все необходимое запустите команду:

./build_tools/install_prereq install

Этого должно быть достаточно по крайней мере для дистрибутивов Debian и CentOS 4/5.

Вы также можете установить необходимые пакеты вручную:

  • Debian 4.0 (Etch)
  • apt-get install linux-headers-`uname -r` build-essential

    libnewt-dev libusb-dev

  • Debian 3.1 (Sarge)
  • apt-get install kernel-headers-`uname -r` build-essential

    libnewt-dev libusb-dev

  • RHEL4 / CentOS 4 / CentOS 5
    1.  
    2. yum install -y gcc newt-devel libusb-devel

      Если вы используете CentOS 5, то вам понадобится установить пакет fxload:

      wget http://www.controlex.ru/drivers/fxload-2002_04_11-1.i386.rpm
      rpm -i fxload-2002_04_11-1.i386.rpm

    3. Если следующая команда не выдала собщения об ошибке то можно переходить сразу к Шагу 2 — Сборка Zaptel
    4. ls /lib/modules/`uname -r`/build/.config

    5. Проверяем какая версия ядра установлена в системе
    6. uname -r |

      В зависимости от того включена или нет в ядре поддержка Symmetric Multi-Processing (SMP) — устанавливаем соответствующий пакет с исходными текстами.

      yum install kernel-smp-devel-`uname -r`

      или

      yum install kernel-devel-`uname -r`

      Возможно что в вашей системе установлена старая версия ядра и исходные тексты для нее уже отсутствуют в репозитории. Тогда придется установить новую версию — для которой имеются исходные тексты. В зависимости от того какая версия нам необходима вполняем команду

      yum install kernel-smp kernel-smp-devel

      или

      yum install kernel kernel-devel

      После этого необходимо перезагрузить компьютер.

Шаг 2. Сборка Zaptel

Для сборки Zaptel версии 1.2.х

./configure
make
make install
# сборка необходимых утилит для CONTROLEX™:
make -C xpp/utils install
make config

Для сборки Zaptel версии 1.4.х

./configure
make
make install
make config

Шаг 3. Конфигурация Asterisk®

Проще всего для конфигурации новых портов воспользоваться программой genzaptelconf:

genzaptelconf -svdM

Она самостоятельно обнаруживает установленое zaptel-оборудование и генерирует файлы /etc/asterisk/zapata-channels.conf и /etc/zaptel.conf.

Наверх


Проверка состояния устройств CONTROLEX™ на уровне USB .

1.   Для того чтобы убедится что устройство подключено к системе и доступно по шине USB нужно воспользоваться командой lsusb:

# lsusb | grep e4e4 Bus 005 Device 012: ID e4e4:1152

После этого проверяем USB Product ID (вторая часть номера после e4e4). При этом возможно 3 варианта:

  • 11x2 — Устройство успешно подключено и микропрограмма полностью загружена;
  • 11x1 — Устройство подключено но процесс загрузки микропрограммы еще не завершился. Такая ситуация может быть некоторое время после подключения устройства к системе но если ситуация не меняется в течении нескольких минут то либо какие то проблемы с загрузкой прошивки или утилита fpga не была установлена при компиляции Zaptel. Нужно проверить установлена ли библиотека libusb-dev(el) и если необходимо установить ее и перекомпилировать Zaptel. Проблемы с загрузкой прошивки возможны при установке новой версии Zaptel ( если изменилась версия протокола загрузчика CONTROLEX™) - для исправления достаточно выключить и снова включить CONTROLEX™&rade — для загрузки микропрограммы с нуля;
  • 11x0 — Означает что микропрограмма не загружена. Попробуйте отключить устройство от системы и подключить по новой. Если это не помогло - убедитесь, что файлы прошивки находятся в каталоге /usr/share/zaptel : USB_*.hex и FPGA_*.hex

2.  Чтобы проверить что устройство нормально подключено и соответствующие драйвера успешно загружены можно воспользоваться командой zaptel_hardware . Ниже приведен результат запуска при одном подключенном и проинициализированном устройстве CONTROLEX™-32 FXS с нормально загруженным драйвером

# zaptel_hardware
usb:005/012 e4e4:1152 [xpp_usb]     (usb-0000:00:10.4-2)
   XBUS-00/XPD-00: FXS     Span 1 XPP-SYNC
   XBUS-00/XPD-10: FXS     Span 2
   XBUS-00/XPD-20: FXS     Span 3
   XBUS-00/XPD-30: FXS     Span 4

Если же устройство проинициализировалось но модули драйвера не загружены то в результате выполнения команды вы увидите:

# zaptel_hardware
usb:005/012     e4e4:1152 []

Наверх


Проверка состояния устройства на уровне Zaptel.

1.  Чтобы проверить что модули CONTROLEX™ зарегистрировались в системе Zaptel нужно выполнить команду zt_registration :

# zt_registration
XBUS-00     usb-0000:00:10.4-2
   XBUS-00/XPD-00:     on Span 1
   XBUS-00/XPD-10:     on Span 2
   XBUS-00/XPD-20:     on Span 3
   XBUS-00/XPD-30:     on Span 4

Внимание! Эта команда показывает только те устройства которые нормально проинициализировались и соответствующие драйвера загружены.

В списке указаны модули CONTROLEX™ и состояние их регистрации в системе Zaptel. Модули которые не зарегистрированны не могут использоваться сервером Asterisk®

# zt_registration
   XBUS-00      usb-0000:00:10.4-2
   XBUS-00/XPD-00:     off
   XBUS-00/XPD-10:     off
   XBUS-00/XPD-20:     off
   XBUS-00/XPD-30:     off

Регистрация в Zaptel обычно является частью скрипта `/etc/init.d/zaptel start`. Для того чтобы зарегистрировать модули вручную достаточно выполнить команду :

zt_registration on

2.  Чтобы проверить конфигурацию каналов Zaptel используется команда lszaptel. Например, для устройства CONTROLEX™-8 FXS она выдаст:

# lszaptel
### Span 1: XBUS-00/XPD-00 "XPD #00/00: FXS"
   1  FXS       FXOLS     (In use)
   2  FXS       FXOLS     (In use)
   3  FXS       FXOLS     (In use)
   4  FXS       FXOLS     (In use)
   5  FXS       FXOLS     (In use)
   6  FXS       FXOLS     (In use)
   7  FXS       FXOLS     (In use)
   8  FXS       FXOLS     (In use)
   9  Output    FXOLS     (In use)
   10 Output    FXOLS     (In use)
   11 Input     FXOLS     (In use)
   12 Input     FXOLS     (In use)
   13 Input     FXOLS     (In use)
   14 Input     FXOLS     (In use)

где,

  • столбец 1 – номер канала в Zaptel. Эти номера используются при адресации конкретных портов в плане набора Asterisk® - extensions.conf;
  • столбец 2 – Тип порта (FXS/FXO);
  • столбец 3 – тип сигнализации канала указанный в конфигурации Zaptel. Он устанавливается при регистрации устройств в системе командой ztcfg;
  • столбец 4 — Показывает используется ли данный канал сервером Asterisk® или нет.

Наверх


Проверка состояния устройства CONTROLEX™ на уровне Asterisk®.

Чтобы вывести список каналов Zaptel доступных серверу Asterisk® выполните команду:

# asterisk -rx "zap show channels"

Вы должны увидеть следующее:

Chan Extension   Context   Language   MOH Interpret
pseudo        from-internal   en        default
   1          from-internal   en        default
   2          from-internal   en        default
   3          from-internal   en        default
   4          from-internal   en        default
   5          from-internal   en        default
   6          from-internal   en        default
   7          from-internal   en        default
   8          from-internal   en        default
   9          output          en        default
   10         output          en        default
   11         input           en        default
   12         input           en        default
   13         input           en        default
   14         input           en        default

Если в списке присутствует только псевдо-канал (см. первую строку списка), то это означает что вы не сконфигурировали ни одного канала в файле zapata.conf.

Если вы получили сообщение об ошибке “Unable to connect to remote asterisk” - это значит ваш сервер Asterisk® не запущен. Возможно у вас ошибка в конфигурационных файлах Asterisk®. Чтобы выяснить точную причину - проверьте содержимое лог-файлов сервера — обычно /var/log/asterisk/messages или /var/log/asterisk/full.

Если вы получили сообщение об ошибке “No such command 'zap show'” - значит модуль chan_zap.so не загружен. Убедитесь в том что файл присутствует в каталоге модулей Asterisk® . Обычно это /usr/lib/asterisk/modules - уточнить расположение можно посмотрев в файле /etc/asterisk/asterisk.conf значение параметра “astmoddir”:

ls -l /usr/lib/asterisk/modules/chan_zap.so

Если файл существует, но не загрузился, попытайтесь загрузить его вручную:

asterisk -rx 'load module chan_zap.so'

Наверх


Как определить соответствие между модулями CONTROLEX™ и банками каналов Zaptel.

В состав пакета драйверов входит утилита xpp_blink, позволяющая включать светодиодную индикацию устройства CONTROLEX™ или отдельного его модуля:

xpp_blink {on|off|bzzt} (span (number) | xpd (bus numb) [(xpd numb)])

где:

  • on – включает светодиодную индикацию — светодиоды модуля начинают мигать;
  • off – отключает индикации;
  • bzzt – включает индикацию на 1 секунду;
  • span (number) - индикация для указанного банка каналов zaptel;
  • (bus num) - XBUS номер устройства. Определяет соответствующее устройство CONTROLEX™. (нумерация начинается с 0);
  • (xpd num) - Определяет конкретный модуль в устройстве CONTROLEX™ . (нумерация начинается с 0)

Допустим что к нашей системе подключен CONTROLEX™-32 FXS :

#zaptel_hardware
usb:005/015  e4e4:1152  [xpp_usb]  (usb-0000:00:10.4-2) <>br XBUS-00/XPD-00:  FXS     Span 1
XBUS-00/XPD-10:  FXS     Span 2
XBUS-00/XPD-20:  FXS     Span 3
XBUS-00/XPD-30:  FXS     Span 4

Все светодиоды устройства CONTROLEX™ имеющего XBUS идентификатор 0 будут мигать в течении секунды:

xpp_blink bzzt xpd 0

Все светодиоды третьего модуля устройства CONTROLEX™ имеющего XBUS идентификатор 0 будут мигать в течении секунды:

xpp_blink bzzt xpd 0 2

Все светодиоды модуля CONTROLEX™ соответствующего в конфигурации Zaptel банку 1 будут мигать в течении секунды:

# xpp_blink bzzt span 1
Using XBUS-00/XPD-00 (connected via usb-0000:00:10.4-2):
channels 1 2 3 4 5 6 7 8 9 10 11 12 13 14

Как видно, что помимо индикации на соответствуещем модуле xpp_blink выводит информацию об идентификаторах XBUS/XPD модуля и номерах каналов Zaptel относящихся к указаному банку.

Таким образом мы легко можем установить соответствие между сконфигурированными каналами Zaptel и физическими портами устройства CONTROLEX™.

Наверх


Каким образом выяснить или установить источник синхронизации для устройств CONTROLEX™.

Для этого используется утилита xpp_sync.

#xpp_sync [ auto | host | nn ]

где,

  • auto — драйвер автоматически выбирает наилучший источник синхронизации
  • host – для синхронизации использовать внутренний таймер драйвера xpp.
  • nn – XBUS идентификатор устройства CONTROLEX™, таймер которого мы хотим использовать как источник синхронизации.

При запуске без параметров выдается текущий источник синхронизации используемый в системе :

#xpp_sync
 Current sync: 02
 Best Available Syncers:
  + XBUS-02  [ FXS*3 FXO ]   (usb-0000:00:1d.7-3)
    XBUS-04  [ FXS*4 ]       (usb-0000:00:1d.7-1)
    XBUS-03  [ FXS*4 ]       (usb-0000:00:1d.7-2)
    XBUS-01  [ FXS*4 ]       (usb-0000:00:1d.7-4)
    XBUS-00  [ FXS*4 ]       (usb-0000:00:1d.7-5)
    XBUS-05  [ FXS*4 ]       (usb-0000:00:1d.7-6)

Наверх


Настройка разпознавания DTMF сигналов.

Мы рекомендуем пользоваться аппаратным распознаванием DTMF для устройств CONTROLEX™. В зависимости от версии пакета zaptel оно может быть не включено по умолчанию. Чтобы проверить в каком режиме функционирует оборудование на вашей системе нужно запустить команду:

cat /sys/module/xpd_fxs/parameters/dtmf_detection

Если в результате вы получили N то аппаратное распознавание выключено. Чтобы его включить достаточно выполнить команду:

echo Y >/sys/module/xpd_fxs/parameters/dtmf_detection

Можно просто поместить ее в скрипт запускающий Asterisk®.

Наверх


Регулировка громкости каналов CONTROLEX™ FXO.

Стандартный для Asterisk® способ регулировки громкости канала — это изменение значений параметров rxgain/txgain. Проблема заключается в том, что этот параметр изменяет режим "цифрового" усиления, которое осуществляется программно. Это приводит к эффекту похожему на эффект "digital zoom" в фотоаппаратах. Вместо этого, мы предлагаем изменять режим усиления непосредственно на чипе. Это делается путем записи специальной команды в соответствующий файл /proc/xpp/XBUS-nn/XPD-nn/slics

Обратите внимание, что каждое устройство CONTROLEX™ представлено директорией XBUS-nn и каждый модуль (блок из 8 портов) представлен директорией XPD-nn. Как определить какие именно значения соответствуют конкретному каналу описано Здесь. Файл slics используется для "общения" с драйвером. В него можно записать команду для чтения регистра и так же для записи в него.

формат команды:
<номер канала> RD <номер регистра> - для чтения
<номер канала> WD <номер регистра> <значение> - для записи

если мы хотим записать значение сразу для всех 8 каналов модуля то используется специальный номер канала - 31
номер регистра и значение задаются в шестнадцатиричном виде. Например,

  1. команда 01 RD 26 приведет к чтению регистра 0x26 (38 в десятичном представлении) из чипа для 1 канала модуля.
  2. команда 01 WD 26 03 приведет к записи значения 0x03 туда же.
  3. команда 31 WD 26 03 приведет к записи значения 0x03 во все каналы модуля.



Для портов типа FXO мы можем задавать усиление/ослабление входного или выходного сигнала в пределах от +12 до -15db.Для настройки громкости передаваемого сигнала используется регистр 38 (0х26), для принимаемого — 39 (0х27). Биты 7,6,5 зарезервированы и не используются.
Бит 4 определяет, что делать с сигналом:

0   =   Усиление сигнала.

1   =   Ослабление сигнала.

Биты 3,2,1,0 указывают насколько усиливать или ослаблять сигнал (шаг 1db)

Например:

Бит 4
Биты 3,2,1,0
Результат
X
0000
усиление / ослабление сигнала не используется 0db
0
0001
усиление на 1db
0
:

0
11xx
усиление на 12db
1
0001
ослабление сигнала на 1db
1
:

1
1111
Ослабление сигнала на 15db


----------------------------- Таким образом, выполнение команды:

echo 31 WD 27 02 > /proc/xpp/XBUS-[bus]/XPD-[module]/slics

вызовет усиление входного сигнала на 2 db, а:

echo 31 WD 26 12 >/proc/xpp/XBUS-[bus]/XPD-[module]/slics

ослабление выходного сигнала на 2 db для всех 8 портов модуля FXO.

Изменения вступают в силу сразу же как изменено значение регистра — те не нужен не только перезапуск Asterisk® но и повторный вызов. То есть можно настроить громкость прямо во время разговора.

-------------------------------- Для точной настройки громкости передаваемого сигнала используется регистр 40 (0х28) для принимаемого — 41 (0х29).

Биты 7,6,5 зарезервированы и не используются.
Бит 4 определяет, что делать с сигналом:

0   =   Усиление сигнала.

1   =   Ослабление сигнала.

Биты 3,2,1,0 указывают насколько усиливать или ослаблять сигнал (шаг 0.1db)

Например:

Бит 4
Биты 3,2,1,0
Результат
X
0000
усиление / ослабление сигнала не используется (0db)
0
0001
усиление на 0.1db
0
:

0
1111
усиление на 1.5db
1
0001
ослабление сигнала на 0.1db
1
:

1
1111
Ослабление сигнала на 1.5db

Обратите внимание — вся вышеприведенная информация относится только к портам FXO!!!

Наверх


Использование программы "FXO Tune" для подстройки FXO портов.

FXO Tune, входящая в состав пакета Zaptel, это программа, которая позволяет уменьшить эхо, образующееся при любых аналогово-цифровых преобразованиях телефонных сигналов. Таким образом, с помощью FXO Tune можно улучшить качество голосового сигнала.

Принцип работы "FXO Tune"

FXO Tune прерывает постоянный тоновый сигнал посредством набора одной цифры (по умолчанию 4) и затем генерирует тоны различной частоты, постоянно измеряя при этом значение уровня эха. Во время теста для данного порта подставляются различные комбинации параметров, регулирующих импеданс линии. И в итоге, для телефонной линии, подключенной к данному порту выбирается набор параметров, который обеспечивает наилучшее качество связи, т.е. минимальное эхо.

В телефонных сетях общего пользования всегда точно определено время между набором двух последовательных цифр. Большинство АТС, установленных на сетях общего поль зования, генерируют сигнал "занято", если очередная цифра при наборе номера не была набрана в течение определенного отрезка времени после предыдущей цифры. Вы можете измерить это время путем поднятия трубки телефона, набора одной цифры и измерения отрезка времени до того момента, когда АТС даст сигнал занято. Параметр по умолчанию в FXO Tune 18 сек. В версии Asterisk® 1.4 этот параметр можно изменять. Как вы понимаете, увеличение этого параметра в большую сторону позволяет сократить время подстройки FXO порта. Если, несмотря на это, АТС телефонной сети общего пользования присылает сигнал занято раньше запрограммированного значения, работа FXO Tune не будет успешно завершена.

При подключении CONTROLEX™ к внешним линиям убедитесь, что данные линии защищены от удара молнии. Обратите внимание, что вы должны использовать только надежные предохранители от удара молнии.

Для того чтобы запустить FXO Tune:

  1. Убедитесь, что "земля" подключена.
  2. Убедитесь, что все внешние линии подсоединены к FXO портам.
  3. Перед тем как подключить внешнии линии к устройству CONTROLEX™ убедитесь, что заземление подключено правильно.

  4. Остановите сервер Asterisk®.
  5. В командной строке Linux наберите fxotune-i 4. Отметим, что число 4 может быть заменено на любой число от 0 до 9, которое будет прерывать тональный сигнал.
  6. Перегрузите сервер Asterisk®.

Наверх


 

 
Оборудование и Решения | Поддержка | Документы | Пресс-центр | О нас
© 2007-08, ООО «Интерком-Телесервис». Все права защищены.
Asterisk® is a registered trademark of Digium, Inc.® Asterisk® является зарегистрированной Торговой Маркой компании DIGIUM, Inc.®
See Trademarks Info.
CONTROLEX™ является заявленным для регистрации торговым обозначением ООО "Интерком Телесервис". Смотрите раздел Правовая информация.
Москва, ул. Вавилова, д.69, офис 404А
+7 (499) 918-03-29
Форма обратной связи