[Asterisk-Users] Help sought: AVM C4
Michael J. Tubby G8TIC
mike.tubby at thorcom.co.uk
Sun May 29 15:56:26 MST 2005
All,
I'm trying to set up Asterisk with an AVM C4 ISDN card, I've got stuck very
early on -- I'm usually pretty good at this stuff but why is the
documentation for Asterisk/CAPI/ISDN/Fedora so bad (almost non-existent)?
I have the following:
- Hardware: P3 3.2GHz, 1Gb PC3200 RAM, Intel S865WP1E mobo, Digium TDM400P
and AVM C4 Controller
- Software Fedora Core 3 (all yum updates including to doday), Asterisk
1.0.7, Zaptel 1.0.7, Chan_capi 0.3.5
I have made Zaptel and Asterisk-1.0.7 - asterisk is okay - it works with my
Cisco 7960 phones internally and in my VOIP wide area number plan to
friends, etc.
I have done nothing with the TDM400P yet other than test I can load zaptel
and the card driver -- which I can.
I have the C4 controller installed and I want to get CAPI up and working.
I have a /etc/capi.conf with the following in it:
card file proto io irq mem cardnr options
b1isa b1.t4 DSS1 0x150 7 - - P2P
b1pci b1.t4 DSS1 - - - -
c4 c4.bin DSS1 - - - -
c4 - DSS1 - - - -
c4 - DSS1 - - - - P2P
c4 - DSS1 - - - - P2P
t1isa t1.t4 DSS1 0x340 9 - 0
t1pci t1.t4 DSS1 - - - -
fcpci - - - - - -
fcclassic - - 0x300 5 - -
I have the C4's firmware in /usr/lib/isdn. If I do:
modprobe c4
modprobe capi
I get the following in /var/log/messages:
May 29 22:11:29 pabx kernel: capifs: Rev 1.1.2.3
May 29 22:11:29 pabx kernel: capi20: Rev 1.1.2.7: started up with major
68 (middleware+capifs)
May 29 22:12:04 pabx kernel: capi: Rev 1.1.2.7: unloaded
May 29 22:12:14 pabx kernel: CAPI Subsystem Rev 1.1.2.8
May 29 22:12:14 pabx kernel: b1: revision 1.1.2.2
May 29 22:12:14 pabx kernel: ACPI: PCI interrupt 0000:03:01.0[A] -> GSI
22 (level, low) -> IRQ 177
May 29 22:12:14 pabx kernel: c4: PCI BIOS reports AVM-C4 at i/o 0xbc00,
irq 177, mem 0xfeafec00
May 29 22:12:14 pabx kernel: kcapi: Controller 1: c4-bc00 attached
May 29 22:12:14 pabx kernel: kcapi: Controller 2: c4-bc00 attached
May 29 22:12:14 pabx kernel: kcapi: Controller 3: c4-bc00 attached
May 29 22:12:14 pabx kernel: kcapi: Controller 4: c4-bc00 attached
May 29 22:12:14 pabx kernel: c4: AVM C4 at i/o 0xbc00, irq 177, mem
0xfeafec00
May 29 22:12:14 pabx kernel: c4: revision 1.1.2.2
May 29 22:12:25 pabx kernel: capi20: Rev 1.1.2.7: started up with major
68 (middleware+capifs)
I've made the chan_capi code, okay I know about the file-descriptor patch
for BSD and Linux kernel >= 2.6.11 and have applied it, ie. this:
p = malloc(sizeof(struct capi_pipe));
memset(p, 0, sizeof(struct capi_pipe));
p->fd = fds[1];
- c->fds[0] = fds[1];
+ c->fds[0] = fds[0];
p->PLCI = -1;
p->i = i;
p->c = c;
I have the default /etc/asterisk/capi.conf which should let the chan_capi.so
shared library load even though it will be the wrong config for my site.
My /etc/asterisk/modules.conf looks like this:
;
; Asterisk configuration file
;
; Module Loader configuration file
;
[modules]
autoload=yes
;
; If you want, load the GTK console right away.
; Don't load the KDE console since
; it's not as sophisticated right now.
;
noload => pbx_gtkconsole.so
;load => pbx_gtkconsole.so
noload => pbx_kdeconsole.so
;
; Intercom application is obsoleted by
; chan_oss. Don't load it.
;
noload => app_intercom.so
;
; Explicitly load the chan_modem.so early on to be sure
; it loads before any of the chan_modem_* 's afte rit
;
load => chan_modem.so
load => res_musiconhold.so
;
; Load either OSS or ALSA, not both
; By default, load OSS only (automatically) and do not load ALSA
;
noload => chan_alsa.so
;noload => chan_oss.so
;
; CAPI
;
load => res_features.so
load => chan_capi.so
;
; Module names listed in "global" section will have symbols globally
; exported to modules loaded after them.
;
[global]
chan_modem.so=yes
chan_capi.so=yes
When I start asterisk:
asterisk -vvvgc
I get this:
[chan_capi.so] => (Common ISDN API for Asterisk)
== Parsing '/etc/asterisk/capi.conf': Found
May 29 23:04:32 NOTICE[23261]: chan_capi.c:2636 load_module: CAPI not
installed!
May 29 23:04:32 WARNING[23261]: loader.c:345 ast_load_resource:
chan_capi.so: load_module failed, returning -1
May 29 23:04:32 WARNING[23261]: chan_capi.c:2812 unload_module: Unable to
unregister from CAPI!
== Unregistered channel type 'CAPI'
May 29 23:04:32 WARNING[23261]: loader.c:391 load_modules: Loading module
chan_capi.so failed!
[root at pabx asterisk]# Warning, flexibel rate not heavily tested!
Ouch ... error while writing audio data: : Broken pipe
What am I missing or doing wrong? Do I need to use /sbin/capiinit -- it is
not clear? If I try then I always get:
[root at pabx asterisk]# capiinit
ERROR: cannot load module kernelcapi
[root at pabx asterisk]#
whether I have the modules already loaded or not...
I've even done the research on CAPI and FC3 with the device naming under
udev and used the "fix it" script provided here:
http://www.friendglow.net/en/faq/faq_kernel26_udev_en.shtml
to no avail (but I did have to change the ownership of the devices from
"root.dialout" to "root.tty" because my FC3 has no group called "dialout" --
so I picked something approximate/close as a guess...
Can anyone give me some advice on what to do next to get it all going?
Regards
Mike
More information about the asterisk-users
mailing list