chan_misdn.so load Problem with digium b410p

Hi!

Installed asterisk 1.4.18.1
and
zaptel 1.4.9 with make b410p

on centos 4 with kernel 2.6.9-67.0.7.EL #1

Compile seemed to work fine:

[root@asterisk /]# ls -l /usr/lib/asterisk/modules/chan_misdn.so
-rwxr-xr-x 1 root root 917514 22. Mär 15:44 /usr/lib/asterisk/modules/chan_misdn.so
BUT:

chan_misdn.so does not load, asterisk CLI says:

*CLI> misdn show stacks
No such command ‘misdn show’ (type ‘help’ for help)

*CLI> load chan_misdn.so
mISDN_close: fid(21) isize(131072) inbuf(0xb78b1008) irp(0xb78b1008) iend(0xb78b1008)
== Parsing ‘/etc/asterisk/misdn.conf’: Found
[Mar 22 17:51:17] WARNING[8009]: config.c:641 process_text_line: parse error: no closing ‘]’, line 438 of /etc/asterisk/misdn.conf
[Mar 22 17:51:17] WARNING[8009]: misdn_config.c:1096 misdn_cfg_init: missing file: misdn.conf
[Mar 22 17:51:17] ERROR[8009]: chan_misdn.c:4993 load_module: Unable to initialize misdn_config.
The ‘load’ command is deprecated and will be removed in a future release. Please use ‘module load’ instead.
*CLI> module load chan_misdn.so
mISDN_close: fid(21) isize(131072) inbuf(0xb78b1008) irp(0xb78b1008) iend(0xb78b1008)
== Parsing ‘/etc/asterisk/misdn.conf’: Found
[Mar 22 17:51:41] WARNING[8009]: config.c:641 process_text_line: parse error: no closing ‘]’, line 438 of /etc/asterisk/misdn.conf
[Mar 22 17:51:41] WARNING[8009]: misdn_config.c:1096 misdn_cfg_init: missing file: misdn.conf
[Mar 22 17:51:41] ERROR[8009]: chan_misdn.c:4993 load_module: Unable to initialize misdn_config.

[root@asterisk ~]# lspci -nn | grep -i d161
02:0b.0 Class 0204: d161:b410 (rev 01)
[root@asterisk ~]# /etc/init.d/misdn-init start

Loading module(s) for your misdn-cards:

/sbin/modprobe --ignore-install hfcmulti type=0x4 protocol=0x2,0x2,0x2,0x2 layermask=0xf,0xf,0xf,0xf poll=128 debug=0
/sbin/modprobe mISDN_dsp debug=0x0 options=0 poll=128 dtmfthreshold=100

[root@asterisk /]# lsmod | grep mISDN
mISDN_dsp 196236 0
mISDN_capi 92940 0
mISDN_l2 37328 0
mISDN_l1 12088 0
mISDN_core 74848 6 mISDN_dsp,hfcmulti,mISDN_capi,l3udss1,mISDN_l2,mISDN_l1
kernelcapi 45153 2 mISDN_capi,capi

[root@asterisk ~]# asterisk -V
Asterisk 1.4.18.1

[root@asterisk ~]# /usr/sbin/misdn-init scan
[OK] found the following devices:
card=1,0x4
[ii] run “/usr/sbin/misdn-init config” to store this information to /etc/misdn-init.conf

/etc/misdn.conf:
card=1,0x4
te_ptmp=1,2
poll=128
dsp_poll=128
dsp_options=0
dtmfthreshold=100
debug=0

[root@asterisk ~]# dmesg | grep mISDN
mISDNd: kernel daemon started (current:dec0ee30)
mISDNd: test event done
mISDN: HFC-multi driver Rev. 1.68
mISDN_register_module(e09c4800)
mISDN_register_module(e09ddc00)
mISDN_register_module(e0b83e80)
mISDN: DSS1 Rev. 1.47
mISDN_register_module(e0b8f880)
mISDN Capi 2.0 driver file version 1.21
mISDN_register_module(e0bd2400)
mISDN_dsp: Audio DSP Rev. 1.29 (debug=0x0) EchoCancellor MG2 dtmfthreshold(100)
mISDN_dsp: DSP clocks every 128 samples. This equals 16 jiffies.
mISDN_register_module(e0c8d900)
mISDN_unregister_module(e0c8d900)
mISDN_unregister_module(e0bd2400)
mISDN_unregister_module(e0b8f880)
mISDN_unregister_module(e0b83e80)
mISDN_unregister_module(e09ddc00)
mISDN_unregister_module(e09c4800)
mISDNd: daemon exit now (current:dec0ee30)
mISDNcore unloaded
mISDNd: kernel daemon started (current:d9b6edd0)
mISDNd: test event done
mISDN_register_module(e09b6c00)
mISDN_register_module(e09c0e80)
mISDN: DSS1 Rev. 1.47
mISDN_register_module(e0b84880)
mISDN Capi 2.0 driver file version 1.21
mISDN_register_module(e0bd2400)
mISDN: HFC-multi driver Rev. 1.68
mISDN_register_module(e0be5800)
mISDN_dsp: Audio DSP Rev. 1.29 (debug=0x0) EchoCancellor MG2 dtmfthreshold(100)
mISDN_dsp: DSP clocks every 128 samples. This equals 16 jiffies.
mISDN_register_module(e0bf6900)
mISDN_unregister_module(e0bf6900)
mISDN_unregister_module(e0bd2400)
mISDN_unregister_module(e0b84880)
mISDNl3 u_dss1 list not empty
mISDN_unregister_module(e09c0e80)
mISDNl2 l2 list not empty
mISDN_unregister_module(e09b6c00)
mISDNl1 inst list not empty
mISDN_unregister_module(e0be5800)
unregister 40000100 st(00000000) not in stack<4>unregister 40000200 st(00000000) not in stack<4>unregister 40000300 st(00000000) not in stack<4>unregister 40000400 st(00000000) not in stack<7>mISDNd: daemon exit now (current:d9b6edd0)
mISDNcore unloaded
mISDNd: kernel daemon started (current:d88ee090)
mISDN_register_module(e09b6c00)
mISDNd: test event done
mISDN_register_module(e0b8ae80)
mISDN: DSS1 Rev. 1.47
mISDN_register_module(e0c17880)
mISDN Capi 2.0 driver file version 1.21
mISDN_register_module(e0bd2400)
mISDN: HFC-multi driver Rev. 1.68
mISDN_register_module(e0be5800)
mISDN_dsp: Audio DSP Rev. 1.29 (debug=0x0) EchoCancellor MG2 dtmfthreshold(100)
mISDN_dsp: DSP clocks every 128 samples. This equals 16 jiffies.
mISDN_register_module(e0c66900)
mISDN_unregister_module(e0c66900)
mISDN_unregister_module(e0bd2400)
mISDN_unregister_module(e0c17880)
mISDNl3 u_dss1 list not empty
mISDN_unregister_module(e0b8ae80)
mISDNl2 l2 list not empty
mISDN_unregister_module(e09b6c00)
mISDNl1 inst list not empty
mISDN_unregister_module(e0be5800)
unregister 40000100 st(00000000) not in stack<4>unregister 40000200 st(00000000) not in stack<4>unregister 40000300 st(00000000) not in stack<4>unregister 40000400 st(00000000) not in stack<7>mISDNd: daemon exit now (current:d88ee090)
mISDNcore unloaded
mISDNd: kernel daemon started (current:d8b9a210)
mISDNd: test event done
mISDN_register_module(e09b6c00)
mISDN_register_module(e0b8ae80)
mISDN: DSS1 Rev. 1.47
mISDN_register_module(e0c17880)
mISDN Capi 2.0 driver file version 1.21
mISDN_register_module(e0bd2400)
mISDN: HFC-multi driver Rev. 1.68
mISDN_register_module(e0be5800)
mISDN_dsp: Audio DSP Rev. 1.29 (debug=0x0) EchoCancellor MG2 dtmfthreshold(100)
mISDN_dsp: DSP clocks every 128 samples. This equals 16 jiffies.
mISDN_register_module(e0c66900)

[root@asterisk asterisk-1.4.18.1]# grep mISDN configure.log
grep: configure.log: Datei oder Verzeichnis nicht gefunden
[root@asterisk asterisk-1.4.18.1]# grep mISDN config.log
configure:20086: checking for mISDN_open in -lmISDN
configure:20121: gcc -o conftest -g -O2 conftest.c -lmISDN >&5
configure:20317: checking mISDNuser/mISDNlib.h usability
configure:20358: checking mISDNuser/mISDNlib.h presence
configure:20426: checking for mISDNuser/mISDNlib.h
configure:20531: gcc -o conftest -g -O2 conftest.c -lisdnnet -lmISDN -lpthread >&5
configure:20727: checking mISDNuser/isdn_net.h usability
configure:20768: checking mISDNuser/isdn_net.h presence
configure:20836: checking for mISDNuser/isdn_net.h
configure:21135: checking mISDNuser/suppserv.h usability
configure:21176: checking mISDNuser/suppserv.h presence
configure:21244: checking for mISDNuser/suppserv.h
configure:21312: checking linux/mISDNdsp.h usability
conftest.c:180:28: linux/mISDNdsp.h: No such file or directory
| #include <linux/mISDNdsp.h>
configure:21353: checking linux/mISDNdsp.h presence
conftest.c:147:28: linux/mISDNdsp.h: No such file or directory
| #include <linux/mISDNdsp.h>
configure:21421: checking for linux/mISDNdsp.h
ac_cv_header_linux_mISDNdsp_h=no
ac_cv_header_mISDNuser_isdn_net_h=yes
ac_cv_header_mISDNuser_mISDNlib_h=yes
ac_cv_header_mISDNuser_suppserv_h=yes
ac_cv_lib_mISDN_mISDN_open=yes
ISDNNET_LIB=’-lisdnnet -lmISDN -lpthread’
MISDN_LIB=’-lmISDN ’

Any hints?

Regards
zilli

i believe there are issues with misdn with kernels before 2.6.15… ish

when i started out with misdn on b410p’s I have only used centos 5 with standard kernel 2.6.18-8.el5 and had no problems.

I have a production box with * 1.4.18 and misdn 1.1.7.2, and all is good.

I have never used the make b410p from zaptel. Only ever compile misdn straight from source downloaded from misdn.org. Only ever use zaptel for ztdummy so timing works for conference/meetme apps etc.

Hope that helps.

Hi,

try following :

reboot your box

misdn-init stop
misdn-init start
amportal restart
asterisk -r
misdn show stacks

its works for me :smile: I dont know why, but it works
ZW