From a9ababa28c7ccedaf4be1501d009f99d9a7ba580 Mon Sep 17 00:00:00 2001 From: kpfleming Date: Wed, 15 Feb 2006 02:26:14 +0000 Subject: Merged revisions 949 via svnmerge from https://origsvn.digium.com/svn/zaptel/branches/1.2 ........ r949 | kpfleming | 2006-02-14 20:24:18 -0600 (Tue, 14 Feb 2006) | 2 lines initial import of Xorcom Astribank driver (issue #6452, with minor mods) ........ git-svn-id: http://svn.digium.com/svn/zaptel/trunk@950 5390a7c7-147a-4af0-8ec9-7488f05a26cb --- README.Astribank | 135 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 135 insertions(+) create mode 100644 README.Astribank (limited to 'README.Astribank') diff --git a/README.Astribank b/README.Astribank new file mode 100644 index 0000000..aa24371 --- /dev/null +++ b/README.Astribank @@ -0,0 +1,135 @@ +This file documents the Zaptel drivers for the Xorcom Astribank8 Channel Bank. +The drivers reside in a separate subdirectory, xpp/ . + + +Building and Installation: +""""""""""""""""""""""""" +Building and installation is basically like the normal procedure of +installing Zaptel. Follow the rest of the documentation here. + +In addition, the file xpp/xpp_modprobe contains modprobe settings. It +should be copied verbatim into /etc/modprobe.conf or (better) copied to +/etc/modprobe.d/ . If you fail to do so, xpp_usb.ko will fail to load +xpd_fxs.ko and as a result will not detect your Astribank. + +Loading Firmware +"""""""""""""""" +The Astribank needs a firmware loaded into it. Without the firmware, +the device will appear in lsusb with vendor ID 04b4 and product ID 8613 +The firmware is provided in the Intel hex format. It can be loaded using +the program fxload, which is typically part of the package 'fxload' or +'hotplug-utils' . + +To load the firmware automatically using the standard hotplug script, +place xpp/xpp_fxloader and xpp/xpp_fxloader.usermap in /etc/hotplug/usb +and place xpp/FPGA_XPD.hex in /etc/xortel (or edit xpp_fxloader +accordingly). + +Alternatively, xpp_fxloader when given the parameter 'xppdetect' will load +the firmware from /etc/xortel/FPGA_XPD.hex . You can use it to load the +firmware manually. + +You should then get in lsusb the vendor ID e4e4 and device ID 2121 +(those IDs are temporary and likely to change in upcoming versions). +Once there is such a device, the xpp_usb driver should load +automatically on hot-plugging. In fact, you may find it simpler to +disconnect and reconnect the device than running 'modprobe xpp_usb'. + + +The driver has been separated into several modules: xpp.ko, xpd_fxs.ko and +xpp_usb.ko . Generally you only need to modprobe xpp_usb, and it should also +be loaded by hotplug when you connect the Astribank. However in order for it +to load xpd_fks.ko correctly + +Refer to the instructions for Zaptel. After our small patches were applies, +you get xpp.ko which is basically yet another zaptel driver, like wcfxo +and wctdm. + +When loaded, you should get one span, of 8 extensions, 2 output ports and +4 input ports: + + root@rapid:~# cat /proc/zaptel/2 + Span 1: XBUS-0/XPD-0 "Xorcom XPD #0/0: FXS" NOTOPEN + + 1 XPP_FXS/0-0 FXOKS (In use) + 2 XPP_FXS/0-1 FXOKS (In use) + 3 XPP_FXS/0-2 FXOKS (In use) + 4 XPP_FXS/0-3 FXOKS (In use) + 5 XPP_FXS/0-4 FXOKS (In use) + 6 XPP_FXS/0-5 FXOKS (In use) + 7 XPP_FXS/0-6 FXOKS (In use) + 8 XPP_FXS/0-7 FXOKS (In use) + 9 XPP_OUT/0-8 FXOKS (In use) + 10 XPP_OUT/0-9 FXOKS (In use) + 11 XPP_IN/0-10 FXOKS (In use) + 12 XPP_IN/0-11 FXOKS (In use) + 13 XPP_IN/0-12 FXOKS (In use) + 14 XPP_IN/0-13 FXOKS (In use) + +For such a simple case you could use: + +/etc/zaptel.conf: + +fxoks=1-14 +loadzone=us +tonezone=us + +/etc/asterisk/zapata.conf: + +[channels] +group=1 +signalling=fxo_ks +immediate=no + +context=from-internal +channels => 1-8 + +; actually they will never generate calls, so the context +; here is irrelevant +;context=outputs +channels => 9-10 + +; input ports should get an answer: +immediate=yes +context=inputs +channels => 11-14 + +;;;;;; end of zapata.conf + + +/proc Interface +""""""""""""""" +The Astribank drivers provide their own /proc interface under /proc/xpp . +(Note that the details of this interface are still potentially subject to +changes) + +/proc/xpp/xbuses lists the connected devices (an xbus is such a device), +one per line. A device is normally "connected". "missing" means that it +was disconnected, but Asterisk still holds channels from it open. You can +also see in the xbuses file to which physical connection the Astribank +is connected. + +/proc/xpp/sync is a read/write file . It prints the current +synchronization source. printing to it can change the synchronization +source. Host-synchronization is currently the default but for better +sound quality you should synchronize from the Astribank. + +/proc/xpp/XBUS-n gives information about device number n (starting from +0). under it, /proc/XBUS-n/XPD-m gives information regarding span number +m in that device. + +/proc/xpp/XBUS-n/XPD-m/zt_registration is a read-write file for +manually registering/unregistering the span with Zaptel. A span will +register automatically when generated, though. Span unregistration may +fail if some channels from the span are used (e.g: by Asterisk). +Registration is by writing 1 and unregistration is by writing 0 to the +file. + +(There are a bunch of other status files under /proc/xpp/ ) + + + +BTW: XPP here does not stand for X Printing Panel, XML Pull Parser, +X-Windows Phase Plane or XML Professional Publisher. It is simply the +Xorcom Peripheral Protocol, which connects a computer to a XPD (Xorcom +Peripheral Device). -- cgit v1.2.3