HFC-Karte mit Dahdi und Asterisk 1.6

Hallo Stefan,

das Ganze läuft zum Testen auf einem Soekris net4801 (http://soekris.com/net4801.htm) mit 256 MB RAM und 266 MHz AMD Geode CPU. Mit mISDN 1.1.9 lief es bisher problemlos.

Ich hab noch nichts im Netz zu der Fehlermeldung gefunden.

Beim Booten kommen folgende Meldungen im Syslog:

Code:
Mar 22 20:09:39 net4801 user.info kernel: dahdi: Telephony Interface Registered on major 196
Mar 22 20:09:39 net4801 user.info kernel: dahdi: Version: 2.2.1
Mar 22 20:09:39 net4801 user.info kernel: vzaphfc: HFC-S PCI A ISDN (V1.42) loading
Mar 22 20:09:39 net4801 user.info kernel: vzaphfc: card 0: registered ZTHFC1/0/1
Mar 22 20:09:39 net4801 user.info kernel: vzaphfc: card 0: registered ZTHFC1/0/2
Mar 22 20:09:39 net4801 user.info kernel: vzaphfc: card 0: registered ZTHFC1/0/3
Mar 22 20:09:39 net4801 user.info kernel: vzaphfc: card 0: resetting
Mar 22 20:09:39 net4801 user.info kernel: vzaphfc: card 0 configured for TE mode at mem 0xa0003000 (0xd0832000) IRQ 11
Mar 22 20:09:39 net4801 user.info kernel: dahdi: Registered tone zone 29 (Germany)
Mar 22 20:09:39 net4801 user.warn kernel: vzaphfc: card 0: chan B1: TX FIFO has become empty
Mar 22 20:09:39 net4801 user.info kernel: vzaphfc: card 0: chan B1 opened as ZTHFC1/0/1.
Mar 22 20:09:39 net4801 user.info kernel: vzaphfc: card 0: chan B1 closed as ZTHFC1/0/1.
Mar 22 20:09:39 net4801 user.warn kernel: vzaphfc: card 0: chan B2: TX FIFO has become empty
Mar 22 20:09:39 net4801 user.info kernel: vzaphfc: card 0: chan B2 opened as ZTHFC1/0/2.
Mar 22 20:09:39 net4801 user.info kernel: vzaphfc: card 0: chan B2 closed as ZTHFC1/0/2.
Mar 22 20:09:39 net4801 user.info kernel: vzaphfc: card 0: chan D opened as ZTHFC1/0/3.
Mar 22 20:09:39 net4801 user.info kernel: vzaphfc: card 0: chan D closed as ZTHFC1/0/3.
Mar 22 20:09:39 net4801 user.info kernel: eth1: DSPCFG accepted after 0 usec.
Mar 22 20:09:39 net4801 user.info kernel: eth0: DSPCFG accepted after 0 usec.
Mar 22 20:09:39 net4801 user.notice kernel: eth0: link up.
...
Mar 22 20:09:54 net4801 local0.notice asterisk[1493]: NOTICE[1487]: loader.c:1057 in load_modules: 1 modules will be loaded.
Mar 22 20:09:54 net4801 local0.notice asterisk[1493]: NOTICE[1487]: cdr.c:1474 in do_reload: CDR simple logging enabled.
Mar 22 20:09:55 net4801 local0.notice asterisk[1493]: NOTICE[1487]: loader.c:1057 in load_modules: 163 modules will be loaded.
Mar 22 20:09:55 net4801 local0.notice asterisk[1493]: NOTICE[1487]: res_smdi.c:1361 in load_module: No SMDI interfaces are available to listen on, not starting SMDI listener.
Mar 22 20:09:57 net4801 local0.warn asterisk[1493]: WARNING[1487]: chan_dahdi.c:17050 in process_dahdi: Ignoring any changes to 'userbase' (on reload) at line 23.
Mar 22 20:09:57 net4801 local0.warn asterisk[1493]: WARNING[1487]: chan_dahdi.c:17050 in process_dahdi: Ignoring any changes to 'vmsecret' (on reload) at line 31.
Mar 22 20:09:57 net4801 local0.warn asterisk[1493]: WARNING[1487]: chan_dahdi.c:17050 in process_dahdi: Ignoring any changes to 'hassip' (on reload) at line 35.
Mar 22 20:09:57 net4801 local0.warn asterisk[1493]: WARNING[1487]: chan_dahdi.c:17050 in process_dahdi: Ignoring any changes to 'hasiax' (on reload) at line 39.
Mar 22 20:09:57 net4801 local0.warn asterisk[1493]: WARNING[1487]: chan_dahdi.c:17050 in process_dahdi: Ignoring any changes to 'hasmanager' (on reload) at line 47.
Mar 22 20:09:57 net4801 local0.notice asterisk[1493]: NOTICE[1487]: chan_sip.c:23915 in build_peer: The 'username' field for sip peers has been deprecated in favor of the term 'defaultuser'
Mar 22 20:09:57 net4801 local0.err asterisk[1493]: ERROR[1487]: codec_dahdi.c:620 in find_transcoders: Failed to open /dev/dahdi/transcode: No such file or directory
Mar 22 20:09:58 net4801 user.info kernel: vzaphfc: card 0: chan B1 opened as ZTHFC1/0/1.
Mar 22 20:09:58 net4801 user.info kernel: vzaphfc: card 0: chan B2 opened as ZTHFC1/0/2.
Mar 22 20:09:58 net4801 user.info kernel: vzaphfc: card 0: chan D opened as ZTHFC1/0/3.
Mar 22 20:09:58 net4801 user.warn kernel: vzaphfc: card 0: chan D: TX FIFO has become empty
...
Mar 22 20:10:03 net4801 local0.err asterisk[1493]: ERROR[1506]: chan_dahdi.c:12280 in dahdi_pri_error: Warning: unknown/inappropriate protocol discriminator received (aa/170)
Mar 22 20:10:11 net4801 local0.err asterisk[1493]: ERROR[1506]: chan_dahdi.c:12280 in dahdi_pri_error: Warning: unknown/inappropriate protocol discriminator received (aa/170)
Mar 22 20:10:19 net4801 local0.err asterisk[1493]: ERROR[1506]: chan_dahdi.c:12280 in dahdi_pri_error: Warning: unknown/inappropriate protocol discriminator received (aa/170)
Mar 22 20:10:27 net4801 local0.err asterisk[1493]: ERROR[1506]: chan_dahdi.c:12280 in dahdi_pri_error: Warning: unknown/inappropriate protocol discriminator received (aa/170)
Mar 22 20:10:35 net4801 local0.err asterisk[1493]: ERROR[1506]: chan_dahdi.c:12280 in dahdi_pri_error: Warning: unknown/inappropriate protocol discriminator received (aa/170)
Mar 22 20:10:43 net4801 local0.err asterisk[1493]: ERROR[1506]: chan_dahdi.c:12280 in dahdi_pri_error: Warning: unknown/inappropriate protocol discriminator received (aa/170)
Mar 22 20:10:51 net4801 local0.err asterisk[1493]: ERROR[1506]: chan_dahdi.c:12280 in dahdi_pri_error: Warning: unknown/inappropriate protocol discriminator received (aa/170)
Mar 22 20:11:54 net4801 local0.warn asterisk[1493]: WARNING[1490]: asterisk.c:3050 in canary_thread: The canary is no more.  He has ceased to be!  He's expired and gone to meet his maker!  He's a stiff!  Bereft of life, he rests in peace.  His metabolic processes are no

Update: Und das hier kommt, wenn "pri debug" aktiviert ist:

Code:
[Mar 22 22:58:58] ERROR[1506]: chan_dahdi.c:12282 dahdi_pri_error: Call Reference Length not supported: 0
< Call Ref: len= 0 (reference 0/0x0) (Originator)
< Message type: Unknown Message Type (0)
< [70 07 01 05 03 07 07 00 00]
< Called Number (len= 9) [ Ext: 0  TON: Unknown Number Type (0)  NPI: ISDN/Telephony Numbering Plan (E.164/E.163) (1)  '' ]
[Mar 22 22:58:58] ERROR[1506]: chan_dahdi.c:12280 dahdi_pri_error: Warning: unknown/inappropriate protocol discriminator received (aa/170)
< Protocol Discriminator: Unknown (170)  len=12
 
Zuletzt bearbeitet:
Sehr interessantes Board,
wurde das über mini PCI durch eine hfc-s Karte erweitert?

Aus den Logmeldungen kann ich leider nicht direkt auf den Fehler schließen. Es wäre wie gesagt sinnvoll mal alle Quelltexte nach der Fehlermeldung zu durchsuchen. Da ich das Board nicht habe, kann ich leider wenig zu möglichen Debug Methoden sagen. Es wird vermutlich auf Trial und Error hinauslaufen.

Stefan
 
Nö, ganz normal über PCI (allerdings nur 3,3 V. Da passt nur die Longshine HFC Karte rein).

Ich hab ansonsten den größeren Bruder net5501 in Production mit Astlinux.
http://soekris.com/net5501.htm mit 500 MHz (allerdings nicht gerade preiswert, aber dafür auch ohne bewegliche Teile
und unverwüstlich im Dauerbetrieb bei minimalem Stromverbrauch, das OS ist auf der CF-Card).

Für andere Anwendungen, wenn kein PCI (für ISDN) benötigt wird, kann man auch schön das Teil hier nehmen:

http://pcengines.ch/alix2d13.htm

Update: Ich hab die Fehlermeldung nun im Quelltext gefunden:

libpri-1.4.10.2/q931.c - in Funktion "q931_receive" in Zeile 3299, aber mir sagt das gar nichts :)
 
Zuletzt bearbeitet:
Ich habe versucht ein asterisk mit dahdi/vzaphfc zum laufen zu bewegen.
Ich schreibe lieber nicht wielange ich daran sitze, aber nun fällt mir nichts mehr ein und bitte deshalb um eure Hilfe.

Starte ich Asterisk, bekomme ich Fehlermeldungen:
Code:
[Mar 29 08:14:20] ERROR[21132]: chan_dahdi.c:16564 process_dahdi: Unknown signalling method 'bri_net_ptmp' at line 36.

Code:
CLI> dahdi show channels
   Chan Extension  Context         Language   MOH Interpret        Blocked    State
 pseudo            default                    default                         In Service
      1            default         de         default                         In Service
      2            default         de         default                         In Service

*CLI> dahdi show status
Description                              Alarms  IRQ    bpviol CRC4   Fra Codi Options  LBO
HFC-S PCI A ISDN card 0 [TE]             OK      0      0      0      CCS AMI  YEL      0 db (CSU)/0-133 feet (DSX-1)
DAHDI_DUMMY/1 (source: HRtimer) 1        UNCONFI 0      0      0      CAS Unk  YEL      0 db (CSU)/0-133 feet (DSX-1)

Ohne bri_net_ptmp geht die HFC Karte nicht in den NT Modus :(

Hardwareseitig ist eine AVM Fritzcard PCI (TE) und eine billig HFC-S Karte (TA=soll) verbaut. OS ist Opensuse 11.2 mit Kernel 2.6.31.12-0.2-default.

Installiert wurde zunächst die AVM Karte, die alle ein- und ausgehende Anrufe über die ISDN Leitung realisieren (chan_capi) soll. Fax per hylafax läuft.
Libpri 1.4.10.2-4.1 und dann gepatchtes (Larry #131) Dahdi 2.2.1 mit tools installiert.
Code:
dahdi_scan
[1]                                
active=yes                         
alarms=OK
description=HFC-S PCI A ISDN card 0 [TE]
name=ZTHFC1
manufacturer=Cologne Chips
devicetype=HFC-S PCI-A ISDN
location=PCI Bus 01 Slot 16
basechan=1
totchans=3
irq=10
type=digital-TE
syncsrc=0
lbo=0 db (CSU)/0-133 feet (DSX-1)
coding_opts=AMI
framing_opts=CCS
coding=AMI
framing=CCS
[2]
active=yes
alarms=UNCONFIGURED
description=DAHDI_DUMMY/1 (source: HRtimer) 1
name=DAHDI_DUMMY/1
manufacturer=
devicetype=DAHDI Dummy Timing
location=
basechan=4
totchans=0
irq=0

Dahdi_test und dahdi_speed laufen fehlerfrei.

Alle Module sind geladen

Code:
#lsmod

Module                  Size  Used by        
zaphfc                 19148  0              
capidrv                30004  1              
isdn                  144096  5 capidrv      
dahdi_dummy             3752  0              
dahdi_echocan_oslec     2720  2              
echo                    5856  1 dahdi_echocan_oslec
dahdi_transcode         8392  0                    
capi                   17184  6                    
capifs                  4680  2 capi               
fcpci                 600736  3                    
kernelcapi             43348  3 capidrv,capi,fcpci 
dahdi                 201512  4 zaphfc,dahdi_dummy,dahdi_echocan_oslec,dahdi_transcode                         crc_ccitt               1984  1 dahdi                                                            



asterisk:/etc/asterisk # lspci -vnn 
01:0e.0 Network controller [0280]: AVM GmbH Fritz!PCI v2.0 ISDN [1244:0e00] (rev 02)
        Subsystem: AVM GmbH Fritz!PCI v2.0 ISDN [1244:0e00]
        Flags: medium devsel, IRQ 12
        Memory at d4001000 (32-bit, non-prefetchable) [size=32]
        I/O ports at c400 [size=32]
        Capabilities: [40] Power Management version 2
        Kernel driver in use: fcpci

01:0f.0 Network controller [0280]: Cologne Chip Designs GmbH ISDN network controller [HFC-PCI] [1397:2bd0] (rev 02)
        Subsystem: Cologne Chip Designs GmbH ISDN Board [1397:2bd0]
        Flags: bus master, medium devsel, latency 16, IRQ 10
        I/O ports at c800 [disabled] [size=8]
        Memory at d4002000 (32-bit, non-prefetchable) [size=256]
        Capabilities: [40] Power Management version 1
        Kernel driver in use: vzaphfc


Code:
asterisk:/etc/asterisk # cat /proc/dahdi/1
Span 1: ZTHFC1 "HFC-S PCI A ISDN card 0 [TE] " AMI/CCS

           1 ZTHFC1/0/1 Clear (SWEC: OSLEC)
           2 ZTHFC1/0/2 Clear (SWEC: OSLEC)
           3 ZTHFC1/0/3 Hardware-assisted HDLC

asterisk:/etc/asterisk # cat /proc/dahdi/2
Span 2: DAHDI_DUMMY/1 "DAHDI_DUMMY/1 (source: HRtimer) 1" (MASTER)

asterisk:/etc/asterisk # ls -l /dev/dahdi
insgesamt 0
crw-rw---- 1 asterisk asterisk 196,   1 29. Mär 15:51 1
crw-rw---- 1 asterisk asterisk 196,   2 29. Mär 15:51 2
crw-rw---- 1 asterisk asterisk 196,   3 29. Mär 15:51 3
crw-rw---- 1 asterisk asterisk 196, 254 29. Mär 00:33 channel
crw-rw---- 1 asterisk asterisk 196,   0 29. Mär 00:33 ctl
crw-rw---- 1 asterisk asterisk 196, 255 29. Mär 00:33 pseudo
crw-rw---- 1 asterisk asterisk 196, 253 29. Mär 00:33 timer
crw-rw---- 1 asterisk asterisk 196, 250 29. Mär 00:36 transcode




Starte ich dahdi_cfg -vnn bekomme ich die folgenden Meldungen:

Code:
asterisk:/etc/asterisk # dahdi_cfg -vvvvv
DAHDI Tools Version - 2.2.1

DAHDI Version: 2.2.1
Echo Canceller(s): OSLEC
Configuration
======================

SPAN 1: CCS/ AMI Build-out: 0 db (CSU)/0-133 feet (DSX-1)

Channel map:

Channel 01: Clear channel (Default) (Echo Canceler: oslec) (Slaves: 01)
Channel 02: Clear channel (Default) (Echo Canceler: oslec) (Slaves: 02)
Channel 03: Hardware assisted D-channel (Default) (Echo Canceler: none) (Slaves: 03)

3 channels to configure.

Setting echocan for channel 1 to oslec
Setting echocan for channel 2 to oslec
Setting echocan for channel 3 to none



asterisk:/etc/asterisk # dmesg
[ 1050.027177] vzaphfc: card 0: chan B1 opened as ZTHFC1/0/1.
[ 1050.027400] vzaphfc: card 0: chan B1 closed as ZTHFC1/0/1.
[ 1050.027525] vzaphfc: card 0: chan B2 opened as ZTHFC1/0/2.
[ 1050.027581] vzaphfc: card 0: chan B2 closed as ZTHFC1/0/2.
[ 1050.027651] vzaphfc: card 0: chan D opened as ZTHFC1/0/3.
[ 1050.027684] vzaphfc: card 0: chan D closed as ZTHFC1/0/3.

Code:
Asterisk-1.6.2.6 mit allen Patchen (#131) installiert.  Starte ich den *, erhalte ich o.g. Fehlermeldungen. 

[CODE][trunkgroups]

[channels]
language=de
switchtype=euroisdn

pridialplan=unknown
prilocaldialplan=unknown
internationalprefix = 00
nationalprefix = 0
;localprefix = VORWAHL
;privateprefix = VORWAHL+MSN
unknownprefix = 
priindication = outofband

facilityenable = yes
usecallerid=yes
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
immediate=no
echocancel=yes
echocancelwhenbridged=yes
echotraining=yes
callgroup=1
pickupgroup=1
mohinterpret=default
mohsuggest=default

group=1
signalling=bri_net_ptmp
; p2p TE mode  => bri_cpe
; p2mp TE mode => bri_cpe_ptmp
; p2p NT mode  => bri_net
; p2mp NT mode => bri_net_ptmp
context=default
channel => 1-2


Code:
asterisk:/etc/asterisk # dmesg

[   14.730364] vzaphfc: HFC-S PCI A ISDN (V1.42) loading                                                                                             
[   14.730760] vzaphfc 0000:01:0f.0: found PCI INT A -> IRQ 10                                                                                       
[   14.730827] vzaphfc 0000:01:0f.0: sharing IRQ 10 with 0000:00:1f.3                                                                                
[   14.731233] vzaphfc: card 0: registered ZTHFC1/0/1                                                                                                
[   14.731256] vzaphfc: card 0: registered ZTHFC1/0/2                                                                                                
[   14.731267] vzaphfc: card 0: registered ZTHFC1/0/3                                                                                                
[   14.732196] vzaphfc: card 0: resetting                                                                                                            
[   14.830727] vzaphfc: card 0 configured for TE mode at mem 0xd4002000 (0xe0902000) IRQ 10    

[  206.008210] dahdi_transcode: Loaded.
[  206.030521] echo: module is from the staging directory, the quality is unknown, you have been warned.
[  206.047754] dahdi_echocan_oslec: Registered echo canceler 'OSLEC'
[  206.075004] dahdi_dummy: Trying to load High Resolution Timer
[  206.075019] dahdi_dummy: Initialized High Resolution Timer
[  206.075028] dahdi_dummy: Starting High Resolution Timer
[  206.075048] dahdi_dummy: High Resolution Timer started, good to go
 
Zuletzt bearbeitet:
Ich hab mich jetzt auch am am zaphfc versucht nachdem mISDN sich einige Male zerlegt hat in den letzten Tagen, zu den unpassendsten Zeiten nachdems ne ganze Weile eigentlich lief. Ein derzeit ausreichendes Szenario wäre für mich 2x HFC-S Karten gleichzeitig im PTMP-TE Modus benutzen zu können, die hauptsächliche eingehende Rufe in den Asterisk stopfen, leider gelingt mir das nicht. Eine Karte bekommen ich zum laufen, die zweite wird auch gefunden, gelistet, konfiguriert, aber alles was auf der Karte eingeht bringt den * zu keinem Mucks, null Ausgaben bei Verbosity Level 10 auf der Asterisk Konsole. Hat schon jemand erfolgreich 2 HFC-S Karten gleichzeitig zum Laufen gebracht ?
Falls ja wär ich über Konfigurationsauszüge höchst erfreut ;)

Grüz !
Hibbelharry
 
D'oh. Läuft jetzt. Zu langer Tag, zuviel gefummelt. Ich hatte einen Fehler in die system.conf gebastelt. Alarm also zurück, mehrere HFC-S Karten laufen nach ersten Tests anscheinend. Die Stabilität wird das nächste Kriterium, würde jetzt noch NT-PTMP funktionieren wär ich ja zu hoch erfreut. Da gehts aber schon für meine heutigen Ansprüche Richtung Dekadenz :)

Grüz !
Hibbelharry
 
Jetzt führ ich schon Selbstgespräche :rolleyes:

Der o.g. Fehler

Code:
[Mar 30 20:31:18] ERROR[18710]: chan_dahdi.c:16564 process_dahdi: Unknown signalling method 'bri_net_ptmp' at line 36.

ist wohl darauf zurückzuführen, das libpri wird nicht geladen wird, obwohl es installiert ist:

Code:
# ldd /usr/lib/asterisk/modules/chan_dahdi.so
        linux-gate.so.1 =>  (0xffffe000)
        libtonezone.so.2.0 => /usr/lib/libtonezone.so.2.0 (0xb7688000)
        libss7.so.1 => /usr/lib/libss7.so.1 (0xb7673000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xb7659000)
        libc.so.6 => /lib/libc.so.6 (0xb74f9000)
        libm.so.6 => /lib/libm.so.6 (0xb74d0000)
        /lib/ld-linux.so.2 (0xb7728000)

Es fehlt libpri.so.1.4 => /usr/lib/libpri.so.1.4, aber wie bekomm ich die libpri Bibliothek in den * ......
 
Wie sieht es copyright mässsig eigentlich mit den sourcen vom vzaphfc grundsätzlich aus? Weil, Ziel müsste sein, den irgenedwann mal in den Dahdi trunk zu bekommen. Sonst wird man den auf ewig immer selbst den kommenden dahdi/kernel Version anpassen müssen (Ich spreche von vielen anderen Asterisk Patches aus Erfahrung) was ein ziemliches PITA ist. Denke mal das größte Problem sind immer noch die Codezeilen von Junghanns? Sind die eigentlich immer noch so divenhaft drauf?

Hier hatte jemand es mal mit dem zaphfc versucht, und ist ganau daran gescheitert:
https://issues.asterisk.org/view.php?id=15736

Dä, und genau von diesem Treiber reden wir ja.
Irgendwo dort stand auch mal, dass Digium genaugenommen gar kein Interesse hat, dass dieser Treiber in deren Code wandert, da dies "aus Marketing-Gründen niemals geschehen würde". Klar, die wollen lieber deren eigene und teurere Hardware verkaufen.
Ich sehe das aber gelassen. Solange DAHDI sich nicht grundlegend ändert und der vzaphfc-Code gepflegt wird, ist der Patch für mich persönlich durchweg ok.
 
Beim Booten kommen folgende Meldungen im Syslog:

Code:
Mar 22 20:09:57 net4801 local0.err asterisk[1493]: ERROR[1487]: codec_dahdi.c:620 in find_transcoders: Failed to open /dev/dahdi/transcode: No such file or directory
Mar 22 20:10:03 net4801 local0.err asterisk[1493]: ERROR[1506]: chan_dahdi.c:12280 in dahdi_pri_error: Warning: unknown/inappropriate protocol discriminator received (aa/170)
Mar 22 20:11:54 net4801 local0.warn asterisk[1493]: WARNING[1490]: asterisk.c:3050 in canary_thread: The canary is no more.  He has ceased to be!  He's expired and gone to meet his maker!  He's a stiff!  Bereft of life, he rests in peace.  His metabolic processes are no

Hast Du auch zuallererst libpri installiert und hiernach dahdi/asterisk kompiliert? Ist in chan_dahdi.conf switchtype=euroisdn gesetzt? Ggf. mal gegen qsig ändern und testen.
Außerdem solltest Du noch dahdi_transcode laden...
 
Ich habe versucht ein asterisk mit dahdi/vzaphfc zum laufen zu bewegen.
Ich schreibe lieber nicht wielange ich daran sitze, aber nun fällt mir nichts mehr ein und bitte deshalb um eure Hilfe.

Starte ich Asterisk, bekomme ich Fehlermeldungen:
Code:
[Mar 29 08:14:20] ERROR[21132]: chan_dahdi.c:16564 process_dahdi: Unknown signalling method 'bri_net_ptmp' at line 36.

Code:
*CLI> dahdi show status
Description                              Alarms  IRQ    bpviol CRC4   Fra Codi Options  LBO
HFC-S PCI A ISDN card 0 [TE]             OK      0      0      0      CCS AMI  YEL      0 db (CSU)/0-133 feet (DSX-1)
DAHDI_DUMMY/1 (source: HRtimer) 1        UNCONFI 0      0      0      CAS Unk  YEL      0 db (CSU)/0-133 feet (DSX-1)

Ohne bri_net_ptmp geht die HFC Karte nicht in den NT Modus :(
Ich sehe das doch richtig, dass Du die HFC-Karte im NT-Modus betreiben willst? DAHDI schreibt aber, dass sich die Karte noch im TE-Modus befindet.
Für den NT-Modus musst Du das zaphfc-Modul mit dem Parameter nt_modes=CardNr laden. Wenn nur eine HFC-Karte im System ist, wäre CardNr=0.
Da für BRI der NT-Modus noch gar nicht vorgesehen ist, muss Du noch chan_dahdi.c patchen, falls noch nicht geschehen.

Code:
diff -uNr asterisk-1.6.2.6.ORIG/channels/chan_dahdi.c asterisk-1.6.2.6/channels/chan_dahdi.c
--- asterisk-1.6.2.6.ORIG/channels/chan_dahdi.c         2009-09-29 09:53:36.000000000 +0200
+++ asterisk-1.6.2.6/channels/chan_dahdi.c 2009-09-29   2009-09-29 09:53:36.000000000 +0200
@@ -14398,7 +14398,8 @@
                                        confp->chan.sig = SIG_BRI_PTMP;
                                        confp->pri.nodetype = PRI_CPE;
                                } else if (!strcasecmp(v->value, "bri_net_ptmp")) {
-                                       ast_log(LOG_WARNING, "How cool would it be if someone implemented this mode!  For now, sucks for you. (line %d)\n", v->lineno);
+                                       confp->chan.sig = SIG_BRI_PTMP;
+                                       confp->pri.nodetype = PRI_NETWORK;
                                } else if (!strcasecmp(v->value, "gr303fxoks_net")) {
                                        confp->chan.sig = SIG_GR303FXOKS;
                                        confp->pri.nodetype = PRI_NETWORK;

Danach sollte der NT-Modus gehen. Bei mir hat das im Test sogar einmal funktioniert. Da ich den NT-Modus aber nicht benötige, habe ich dies nicht weiter verfolgt.
 
Der o.g. Fehler

Code:
[Mar 30 20:31:18] ERROR[18710]: chan_dahdi.c:16564 process_dahdi: Unknown signalling method 'bri_net_ptmp' at line 36.

ist wohl darauf zurückzuführen, das libpri wird nicht geladen wird, obwohl es installiert ist:

Code:
# ldd /usr/lib/asterisk/modules/chan_dahdi.so
        linux-gate.so.1 =>  (0xffffe000)
        libtonezone.so.2.0 => /usr/lib/libtonezone.so.2.0 (0xb7688000)
        libss7.so.1 => /usr/lib/libss7.so.1 (0xb7673000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xb7659000)
        libc.so.6 => /lib/libc.so.6 (0xb74f9000)
        libm.so.6 => /lib/libm.so.6 (0xb74d0000)
        /lib/ld-linux.so.2 (0xb7728000)

Es fehlt libpri.so.1.4 => /usr/lib/libpri.so.1.4, aber wie bekomm ich die libpri Bibliothek in den * ......

Das ist nicht ganz richtig. libpri wird nicht geladen, sondern ist eine Bibliothek, gegen welche dahdi/asterisk kompiliert/gelinkt wird. Kurz: Willst Du Asterisk mit ISDN einsetzen, brauchst Du libpri zwingend. Für mich sieht es aus, als ob Du libpri gar nicht oder aber erst nach dahdi/asterisk gebaut hast.
Bei mir hat sich bewährt, erst libpri, dann dahdi/dahdi-tools und dann asterisk/asterisk-addons zu bauen. Ganz wichtig auch bei einem Update von libpri.
 
Für mich sieht es aus, als ob Du libpri gar nicht oder aber erst nach dahdi/asterisk gebaut hast.
Bei mir hat sich bewährt, erst libpri, dann dahdi/dahdi-tools und dann asterisk/asterisk-addons zu bauen. Ganz wichtig auch bei einem Update von libpri.

Vielen Dank das du dir Zeit nimst mir unter die Arme zu greifen.

Da hast du wohl recht gehabt. Ich hatte mehrfach asterisk und auch dahdi deinstalliert und libpi neu compiliert. Warum auch immer, heute habe ich es nochmal probiert und siehe da, es klappt:

Code:
asterisk:/home/siluan # ldd /usr/lib/asterisk/modules/chan_dahdi.so
        libpri.so.1.4 => /usr/lib/libpri.so.1.4 (0xb7719000)

Ich sehe das doch richtig, dass Du die HFC-Karte im NT-Modus betreiben willst? DAHDI schreibt aber, dass sich die Karte noch im TE-Modus befindet.
Für den NT-Modus musst Du das zaphfc-Modul mit dem Parameter nt_modes=CardNr laden. Wenn nur eine HFC-Karte im System ist, wäre CardNr=0.
Da für BRI der NT-Modus noch gar nicht vorgesehen ist, muss Du noch chan_dahdi.c patchen, falls noch nicht geschehen.

Danach sollte der NT-Modus gehen. Bei mir hat das im Test sogar einmal funktioniert. Da ich den NT-Modus aber nicht benötige, habe ich dies nicht weiter verfolgt.

zaphfc habe ich noch nicht mit nt_modes=x geladen. Erstmal wollte ich die lipbri Sache i.O. bringen.

Das ist nun erledigt, aber nun das nächste Problem :(

Ich vermute die Karte wird nicht mehr richtig erkannt. Die hatte (s.o.) [1397:2bds0] und nun [1397:01d0]. Zaphfc ist wie dahdi_dummy , -transcode und -echocan_oslec geladen und so sollte auch der benutzte Kernel Treiber angezeigt werden, wird er aber nicht

Code:
asterisk:/home/siluan # lspci -vnn                                    

01:0e.0 Unclassified device [0080]: Cologne Chip Designs GmbH Device [1397:01d0] (rev 02)
        Subsystem: Cologne Chip Designs GmbH Device [1397:01d0]
        Flags: bus master, fast devsel, latency 16, IRQ 11
        I/O ports at c400 [size=8]
        Memory at d4001000 (32-bit, non-prefetchable) [size=256]
        Capabilities: [40] Power Management version 1

dahdi_scan liefert auch nur DAHDI_DUMMY/1. dahdi_hardware liefert (erwartungsgemäß) kein Ergebnis. Offenbar findet die Karte den Treiber oder der Treibe die Karte nicht mehr.
 
Da hast du wohl recht gehabt. Ich hatte mehrfach asterisk und auch dahdi deinstalliert und libpi neu compiliert. Warum auch immer, heute habe ich es nochmal probiert und siehe da, es klappt. [...]
Freut mich zu hören :)

Das ist nun erledigt, aber nun das nächste Problem :(
Ich vermute die Karte wird nicht mehr richtig erkannt. Die hatte (s.o.) [1397:2bds0] und nun [1397:01d0].
Wie jetzt? Verstehe ich Dich richtig, dass ein und die selbe Karte zuvor die PCI-ID 2BD0 hatte, nun aber die 01D0? Oder hast Du zwischenzeitlich die Karte gewechselt? :confused:
Bei letzerem kann ich Dein Problem nachvollziehen: Die PCI-ID 01D0 taucht nicht im vzaphfc-Code auf und würde demzufolge auch nicht erkannt werden. Sollte dem so sein, bitte nochmal prüfen ob die PCI-ID so 100% korrekt ist und mir mitteilen, dann haue ich die PCI-ID in den Code hinein und melde es dem Code-Maintainer.
Wenns denn schneller gehen soll ;): such im vzaphfc-Patch folgende Zeile:
{PCI_VENDOR_ID_CCD, PCI_DEVICE_ID_CCD_2BD0,
kopiere diese und die nächste Zeile und klebe beide direkt darunter, so dass der Block wie folgt aussieht:

Code:
+       {PCI_VENDOR_ID_CCD, PCI_DEVICE_ID_CCD_2BD0,
+               PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
+       {PCI_VENDOR_ID_CCD, PCI_DEVICE_ID_CCD_01D0,
+               PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
+       {PCI_VENDOR_ID_CCD, PCI_DEVICE_ID_CCD_B000,
+               PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},

-
Larry
 
Freut mich zu hören :)
Wie jetzt? Verstehe ich Dich richtig, dass ein und die selbe Karte zuvor die PCI-ID 2BD0 hatte, nun aber die 01D0? Oder hast Du zwischenzeitlich die Karte gewechselt? :confused:

Bei letzerem kann ich Dein Problem nachvollziehen: Die PCI-ID 01D0 taucht nicht im vzaphfc-Code auf und würde demzufolge auch nicht erkannt werden. Sollte dem so sein, bitte nochmal prüfen ob die PCI-ID so 100% korrekt ist und mir mitteilen, dann haue ich die PCI-ID in den Code hinein und melde es dem Code-Maintainer.
Wenns denn schneller gehen soll ;): such im vzaphfc-Patch folgende Zeile:
{PCI_VENDOR_ID_CCD, PCI_DEVICE_ID_CCD_2BD0,
kopiere diese und die nächste Zeile und klebe beide direkt darunter, so dass der Block wie folgt aussieht:

Code:
+       {PCI_VENDOR_ID_CCD, PCI_DEVICE_ID_CCD_2BD0,
+               PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
+       {PCI_VENDOR_ID_CCD, PCI_DEVICE_ID_CCD_01D0,
+               PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
+       {PCI_VENDOR_ID_CCD, PCI_DEVICE_ID_CCD_B000,
+               PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},

-
Larry

Ich bin auch verwirrt. Es gibt 2 HFC Karten. Baue ich jeweils eine ein, zeigt diese entweder die PCI-ID 01bd0 oder 21bd0.
Ich glaube (!) irgendwas ist mit Rechner nicht ok, hab aber keine Ahnung was kaputt ist. Es ist ein Advantech Board auf einer backplane mit zwei freien PCI Steckplätzen.
Nächste Woche bau ich einen neuen Rechner auf und dann schaun mer mal.

Per > modinfo zapfhfc kann man sehen das kein 01bd0 auftaucht und so hatte ich die base.c bereits gepatched. make steigt mit einer Fehlermeldung aus:

Code:
base.c:133: error: ‘hfc_pci_ids’ undeclared here (not in a function)  

make: *** [modules] Fehler 2                                                                                                       
[1]+  Exit 2                  make
 
Ich bin auch verwirrt. Es gibt 2 HFC Karten. Baue ich jeweils eine ein, zeigt diese entweder die PCI-ID 01bd0 oder 21bd0.
Ich glaube (!) irgendwas ist mit Rechner nicht ok, hab aber keine Ahnung was kaputt ist. Es ist ein Advantech Board auf einer backplane mit zwei freien PCI Steckplätzen.
Ah jetzt ja! Ich dachte zuerst, es wäre ein Tippfehler (=2BD0). Wie auch immer, ich kann die beiden IDs 01bd0 und 21bd0 nicht in der PCI-ID Datenbank finden - sie erscheinen mir auch etwas "krumm". Die von Dir zuvor genannte ID 01d0 steht eigentlich für "nvidia GeForce", außerdem scheint sich Deine ID ja stets weiter zu verändern (2bds0, 21bd0). Da schließe ich mich Dir an, dass an Deinen System etwas ganz arg nicht zu stimmen scheint (HFC-Karten, Backplane, OS)...

Gib halt Bescheid, was Dein neuer Rechner von sich gibt...
 
Ah jetzt ja! Ich dachte zuerst, es wäre ein Tippfehler (=2BD0). Wie auch immer, ich kann die beiden IDs 01bd0 und 21bd0 nicht in der PCI-ID Datenbank finden - sie erscheinen mir auch etwas "krumm". Die von Dir zuvor genannte ID 01d0 steht eigentlich für "nvidia GeForce", außerdem scheint sich Deine ID ja stets weiter zu verändern (2bds0, 21bd0). Da schließe ich mich Dir an, dass an Deinen System etwas ganz arg nicht zu stimmen scheint (HFC-Karten, Backplane, OS)...

Gepatched, d.h. die PCI-ID 21d0 hinzugefügt, habe ich 3 Dateien:
linux/dahdi/drivers/zaphfc/base.c
/usr/src/linux/include/linux/pci_ids.h
/usr/lib/perl5/vendor_perl/5.10.0/Dahdi/Hardware/PCI.pm

Alles sieht nun gut aus, ohne Fehler, Karte in NT-Modus, aber asterisk gibt kein Ton von sich.:(
Es reicht, ich hör jetzt erstmal auf.

Gib halt Bescheid, was Dein neuer Rechner von sich gibt...

Mach ich :)
 
Asterisk 1.6.2.6, dahdi trunk + Junghanns duoBRI

Moin Jungs,

ich kämpfe zur Zeit mit eigentlich dem selben Problem, außer das ich eine Junghanns duoBRI Karte einsetze. Der 1. Port läuft im TE und hängt am S0/Amt und der 2. Port ist im NT Modus und daran hängt eine ISDN Basisstation (Testphase).
Was bei mir reibungslos ging war, dass ich mit dem ISDN Telefon den Asteriskserver anrufen konnte (z.b. über die Extension 99 für den AB). Klappte sofort. Aber ein

console dial 888 (führt Dial(Dahdi/g2/MSNISDNMOBILTEIL)

endet im

cause 34 - Circuit/channel congestion

Über Dial(Dahdi/g1/${EXTEN}) nach draußen zu telefonieren geht einwandfrei. Nur der NT Modus suckt zur Zeit derbst.
 
Den seltsamen Rechner mit den wechselnen PCI-ID's nutze ich solange nicht mehr, bis eine neue Batterie eingebaut/eingelötet ist.

Ich habe deshalb einen neuen Rechner aufgesetzt, libpri, dahdi, dahdi tools und asterisk installiert.
zaphfc wird automatisch beim booten geladen:
Code:
[    7.910191] dahdi: Telephony Interface Registered on major 196                                               
[    7.910203] dahdi: Version: 2.2.1                                                                            
[    7.936701] Intel(R) PRO/1000 Network Driver - version 7.3.21-k3-NAPI                                        
[    7.936713] Copyright (c) 1999-2006 Intel Corporation.                                                       
[    8.327259] e1000: 0000:01:0d.0: e1000_probe: (PCI:33MHz:32-bit) 00:03:47:4e:21:cd                           
[    8.522896] vzaphfc: HFC-S PCI A ISDN (V1.42) loading                                                        
[    9.033068] e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection                                   
[    9.033821] vzaphfc 0000:01:0b.0: PCI INT A -> Link[LNKD] -> GSI 9 (level, low) -> IRQ 9                     
[    9.034028] vzaphfc: card 0: registered ZTHFC1/0/1                                                           
[    9.034038] vzaphfc: card 0: registered ZTHFC1/0/2                                                           
[    9.034047] vzaphfc: card 0: registered ZTHFC1/0/3                                                           
[    9.034420] vzaphfc: card 0: resetting                                                                       
[    9.052098] vzaphfc: card 0 configured for TE mode at mem 0xf4110400 (0xe1038400) IRQ 9

allerdings nur im TE modus. Das muß geändert werden, allerdings
verstehe ich nicht wer oder was zaphfc lädt und wie ich nt_modes=X hinzufügen kann.


edit: gelöst:
Code:
asterisk1:/home/siluan # cat /etc/modprobe.d/dahdi.conf
# You should place any module parameters for your DAHDI modules here
# Example:
#
# options wctdm24xxp latency=6
options zaphfc nt_modes=0
 
Zuletzt bearbeitet:
Capi, chan_capi, lipbri, dahdi, asterisk habe ich jeweils in gepatchten Versionen installiert. Soweit so gut.
Alle Treiber werden automatisch und fehlerfrei geladen, starte ich dahdi, finden sich Einträge wie "TX FIFO has become empty",
"chan B1 opened as ZTHFC1/0/1" und "chan B1 closed as ZTHFC1/0/1". Wird asterisk dann gestartet, werden die "chan" geöffnet.

Hardwareseitig sieht das doch nicht schlecht aus, aber das ISDN Telefon welches am inneren S0 Bus hängt scheint tot. Angeschlossen ist dieses über ein gekreuztes ISDN Kabel und Adapter mit 2x100 OHM an die HFC-S Karte und lief so über Jahre problemlos.

Ich weis nicht mehr weiter und bin genervt. Jahrelang lief asterisk stabil und nun so ein Gefrickel. :((

Hilfe nehm ich dankbarst an.


Meine bestimmt fehlerhaften Konfigurationsdateien:

Code:
asterisk1:/home/siluan # cat /etc/asterisk/sip.conf                                                                  
[general]                                                                                                            
port = 5060                                                                                                          
bindaddr = 0.0.0.0                                                                                                   
externip = xxxxxxxxxx                                                                                           
Localnet = 192.168.0.1/255.255.255.0                                                                                 
; srvlookup = yes                                                                                                    
disallow=all                                                                                                         
allow=gsm                                                                                                            
languge=de                                                                                                           
videosupport=no                                                                                                      
insecure=port,invite                                                                                                 
register => xxxxxx:[email protected]/xxxxxxxx

context =default
canreinvite=no
tos=0×18
nat=yes
dtmfmode=info
language=de

[sipgate]
type=friend
username=xxxxxx
secret=xxxxxxx
host=sipgate.de
fromuser=xxxxxxx
fromdomain=sipgate.de
insecure=port,invite
context=incoming-sip
canreinvite=no
qualify=yes
nat=yes
tos=0×18


asterisk1:/home/siluan # cat /etc/asterisk/extensions.conf
[general]                                                 

static = yes
writeprotect = no

[globals]

[default]
include => incoming-sip
include => outgoing-sip

include => incoming-capi
include => outgoing-capi
include => zeitansage   



[incoming-sip]

exten => xxxxxx,1,Dial(dahdi/g1/881,35,trg)
exten => xxxxxx,2,Voicemail(Sipgate)       
exten => xxxxxxx,3,Hangup                   

[outgoing-sip]
; 9 vorwaehlen -> Ueber SIP waehlen
exten => _9.,1,Set(CALLERID(all)=xxxxxx)
exten => _9.,2,Dial(SIP/${EXTEN:1}@sipgate,60,trg)
exten => _9.,3,Hangup                             

[incoming-capi]

exten => xxxxx,1,Set(CHANNEL(language)=de)
exten => xxxxxx,n,Dial(dahdi/g1/881)       
;exten => xxxxx,n,Answer                  
exten => xxxxx,n,Wait(35)                 
exten => xxxxxx,n,Voicemail(Sipgate)       
exten => xxxxxxx,n,Hangup                   

[outgoing-capi]
; 8 vorwaehlen -> Ueber Capi waehlen
exten => _9.,1,Set(CALLERID(all)=xxxxx)
exten => _8.,1,Dial(Capi/contr1/${EXTEN:1},60)
exten => _8.,2,Congestion
exten => _8.,3,Hangup


[zeitansage]

exten => 77,1,NoCDR()
exten => 77,1,Set(CHANNEL(language)=de),
; Winterzeit exten => 99,2,Set(MEZ=$[${EPOCH} + 3600])
exten => 77,2,Set(MEZ=$[${EPOCH} ] )
exten => 77,3,Answer
exten => 77,4,Wait(1)
exten => 77,5,SayUnixTime(${MEZ},,a)
exten => 77,6,SayUnixTime(${MEZ},,k)
exten => 77,7,SayUnixTime(${MEZ},,M)
exten => 77,8,Wait(1)
exten => 77,9,Playback(vm-goodbye)
exten => 77,10,Hangup








Code:
asterisk1:/home/siluan #dmesg
[  592.392009] dahdi: Registered tone zone 0 (United States / North America)
[  592.393243] dahdi: Registered tone zone 29 (Germany)
[  592.393319] vzaphfc: card 0: chan B1: TX FIFO has become empty
[  592.393338] vzaphfc: card 0: chan B1 opened as ZTHFC1/0/1.
[  592.393433] vzaphfc: card 0: chan B1 closed as ZTHFC1/0/1.
[  592.393471] vzaphfc: card 0: chan B2: TX FIFO has become empty
[  592.393489] vzaphfc: card 0: chan B2 opened as ZTHFC1/0/2.
[  592.393511] vzaphfc: card 0: chan B2 closed as ZTHFC1/0/2.
[  592.393546] vzaphfc: card 0: chan D opened as ZTHFC1/0/3.
[  592.393587] vzaphfc: card 0: chan D closed as ZTHFC1/0/3.


asterisk starten


asterisk1:/home/siluan #dmesg
[  677.179702] vzaphfc: card 0: chan B1 opened as ZTHFC1/0/1.
[  677.179912] vzaphfc: card 0: chan B2 opened as ZTHFC1/0/2.
[  677.182602] vzaphfc: card 0: chan D opened as ZTHFC1/0/3.




01:07.0 Network controller [0280]: AVM GmbH A1 ISDN [Fritz] [1244:0a00] (rev 02)
        Subsystem: AVM GmbH FRITZ!Card ISDN Controller [1244:0a00]
        Flags: medium devsel, IRQ 5
        Memory at f4110000 (32-bit, non-prefetchable) [size=32]
        I/O ports at 3400 [size=32]
        Kernel driver in use: fcpci

01:0b.0 Network controller [0280]: Cologne Chip Designs GmbH ISDN network controller [HFC-PCI] [1397:2bd0] (rev 02)
        Subsystem: Cologne Chip Designs GmbH ISDN Board [1397:2bd0]
        Flags: bus master, medium devsel, latency 16, IRQ 9
        I/O ports at 3800 [disabled] [size=8]
        Memory at f4110400 (32-bit, non-prefetchable) [size=256]
        Capabilities: [40] Power Management version 1
        Kernel driver in use: vzaphfc

asterisk1:/home/siluan # dahdi_scan
[1]                                
active=yes                         
alarms=OK                          
description=HFC-S PCI A ISDN card 0 [NT] 
name=ZTHFC1                              
manufacturer=Cologne Chips               
devicetype=HFC-S PCI-A ISDN
location=PCI Bus 01 Slot 12
basechan=1
totchans=3
irq=9
type=digital-NT
syncsrc=0
lbo=0 db (CSU)/0-133 feet (DSX-1)
coding_opts=AMI
framing_opts=CCS
coding=AMI
framing=CCS
[2]
active=yes
alarms=UNCONFIGURED
description=DAHDI_DUMMY/1 (source: HRtimer) 1
name=DAHDI_DUMMY/1
manufacturer=
devicetype=DAHDI Dummy Timing
location=
basechan=4
totchans=0
irq=0
asterisk1:/home/siluan #


asterisk1:/home/siluan # dahdi_hardware
pci:0000:01:0b.0     zaphfc+      1397:2bd0 HFC-S ISDN BRI card


asterisk1:/home/siluan # cat /proc/dahdi/2
Span 2: DAHDI_DUMMY/1 "DAHDI_DUMMY/1 (source: HRtimer) 1"

asterisk1:/home/siluan # cat /proc/dahdi/1
Span 1: ZTHFC1 "HFC-S PCI A ISDN card 0 [NT] " (MASTER) AMI/CCS

           1 ZTHFC1/0/1 Clear (In use) (SWEC: OSLEC)
           2 ZTHFC1/0/2 Clear (In use) (SWEC: OSLEC)
           3 ZTHFC1/0/3 Hardware-assisted HDLC (In use)



asterisk1:/home/siluan # dahdi_cfg -vvvvv
DAHDI Tools Version - 2.2.1

DAHDI Version: 2.2.1
Echo Canceller(s): OSLEC
Configuration
======================

SPAN 1: CCS/ AMI Build-out: 0 db (CSU)/0-133 feet (DSX-1)

Channel map:

Channel 01: Clear channel (Default) (Echo Canceler: oslec) (Slaves: 01)
Channel 02: Clear channel (Default) (Echo Canceler: oslec) (Slaves: 02)
Channel 03: Hardware assisted D-channel (Default) (Echo Canceler: none) (Slaves: 03)

3 channels to configure.

Setting echocan for channel 1 to oslec
Setting echocan for channel 2 to oslec
Setting echocan for channel 3 to none

*CLI> dahdi show status
Description                              Alarms  IRQ    bpviol CRC4   Fra Codi Options  LBO
HFC-S PCI A ISDN card 0 [NT]             OK      0      0      0      CCS AMI  YEL      0 db (CSU)/0-133 feet (DSX-1)
DAHDI_DUMMY/1 (source: HRtimer) 1        UNCONFI 0      0      0      CAS Unk  YEL      0 db (CSU)/0-133 feet (DSX-1)


*CLI> dahdi show channels
   Chan Extension  Context         Language   MOH Interpret        Blocked    State
 pseudo            default                    default                         In Service
      1            default         de         default                         In Service
      2            default         de         default                         In Service
*CLI>

asterisk1:/home/siluan # ldd /usr/lib/asterisk/modules/chan_dahdi.so
        linux-gate.so.1 =>  (0xffffe000)
        libtonezone.so.2.0 => /usr/lib/libtonezone.so.2.0 (0xb7780000)
        libpri.so.1.4 => /usr/lib/libpri.so.1.4 (0xb7752000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xb7738000)
        libc.so.6 => /lib/libc.so.6 (0xb75d8000)
        libm.so.6 => /lib/libm.so.6 (0xb75af000)
        /lib/ld-linux.so.2 (0xb782f000)


asterisk1:/home/siluan # dmesg   
[    8.411421] dahdi: Telephony Interface Registered on major 196                                                     
[    8.411437] dahdi: Version: 2.2.1                                                                                  
[    8.450396] ACPI: PCI Interrupt Link [LNKA] enabled at IRQ 11                                                      
[    8.450413] PCI: setting IRQ 11 as level-triggered                                                                 
[    8.450427] e1000 0000:01:0d.0: PCI INT A -> Link[LNKA] -> GSI 11 (level, low) -> IRQ 11                           
[    8.711462] e1000: 0000:01:0d.0: e1000_probe: (PCI:33MHz:32-bit) 00:03:47:4e:21:cd                                 
[    8.729441] vzaphfc: HFC-S PCI A ISDN (V1.42) loading                                                              
[    8.740538] MPU-401 device not found or device busy                                                                
[    8.785956] Intel ICH 0000:00:1f.5: PCI INT B -> Link[LNKB] -> GSI 5 (level, low) -> IRQ 5                         
[    8.785995] Intel ICH 0000:00:1f.5: setting latency timer to 64                                                    
[    9.101074] e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection                                         
[    9.101542] vzaphfc 0000:01:0b.0: PCI INT A -> Link[LNKD] -> GSI 9 (level, low) -> IRQ 9                           
[    9.102046] vzaphfc: card 0: registered ZTHFC1/0/1                                                                 
[    9.102058] vzaphfc: card 0: registered ZTHFC1/0/2                                                                 
[    9.102066] vzaphfc: card 0: registered ZTHFC1/0/3                                                                 
[    9.102846] vzaphfc: card 0: resetting                                                                             
[    9.120354] vzaphfc: card 0 configured for NT mode at mem 0xf4110400 (0xe102e400) IRQ 9    

[ 1739.954758] dahdi_transcode: Loaded.                                                                               
[ 1749.091684] dahdi_echocan_oslec: Registered echo canceler 'OSLEC'                                                  
[ 1754.414676] dahdi_dummy: Trying to load High Resolution Timer                                                      
[ 1754.414688] dahdi_dummy: Initialized High Resolution Timer                                                         
[ 1754.414694] dahdi_dummy: Starting High Resolution Timer                                                            
[ 1754.414715] dahdi_dummy: High Resolution Timer started, good to go                                                 
[ 1809.323466] dahdi: Registered tone zone 0 (United States / North America)                                          
[ 1809.324679] dahdi: Registered tone zone 29 (Germany)           

[ 9494.477761] vzaphfc: card 0: chan B1 opened as ZTHFC1/0/1.
[ 9494.477843] vzaphfc: card 0: chan B1 closed as ZTHFC1/0/1.
[ 9494.477886] vzaphfc: card 0: chan B2 opened as ZTHFC1/0/2.
[ 9494.477931] vzaphfc: card 0: chan B2 closed as ZTHFC1/0/2.
[ 9494.477969] vzaphfc: card 0: chan D opened as ZTHFC1/0/3.
[ 9494.477991] vzaphfc: card 0: chan D closed as ZTHFC1/0/3.
[ 9496.690490] vzaphfc: card 0: chan B1 opened as ZTHFC1/0/1.
[ 9496.690715] vzaphfc: card 0: chan B2 opened as ZTHFC1/0/2.
[ 9496.691897] vzaphfc: card 0: chan D opened as ZTHFC1/0/3.
 
Zuletzt bearbeitet:
nachdem wir es ja nun endlich hinbekommen haben hfc-s Karten mit dem vzaphfc dahdi setup auf asterisk laufen zu bekommen habe ich daran gesetzt zwei kleine Howtos zu schreiben.

HOWTOs sind super! Vielen Dank dafuer.

Ich habe jetzt alles gepatcht wie beschrieben. Genau gleiche Versionen von Asterisk, dahi-tools, dahdi-linux etc.

Im Rechner betreibe ich nur eine einzige HFC-S PCI. Der TE-Mode funktioniert inzwischen auch ohne Probleme.

Soweit so gut. Ich muss die Karte aber im NT-Mode betreiben.

meine Frage:
hat irgendjemand eine HFC-S PCI mit DAHDI/vzaphfc im NT-Mode am Laufen?

zum Vergleich:
Die HFC funktioniert bei mir NT-Mode problemlos auf einer uralten zaptel-bristuff Version. Sozusagen meine Referenzanlage.

Stecke ich die ISDN-Leitungen auf das aktuell gepatchte System sagt er partout:

Code:
pri show span 1

Primary D-channel: 3
Status: Provisioned, Down, Active
Switchtype: EuroISDN
Type: Network
Window Length: 0/7
Sentrej: 0
SolicitFbit: 0
Retrans: 0
Busy: 0
Overlap Dial: 0
Logical Channel Mapping: 0
T200 Timer: 1000
T203 Timer: 10000
T305 Timer: 30000
T308 Timer: 4000
T309 Timer: -1
T313 Timer: 4000
N200 Counter: 3
Overlap Recv: No

wenn der hier nicht 'Up' anzeigt, kann es natuerlich nicht gehen.

in der Config kann ich keine Fehler erkennen. Die Karte hat ihren Interrupt alleine.

Code:
/etc/dahdi/system.conf:

# Span 1: ZTHFC1 "HFC-S PCI A ISDN card 0 [NT] " (MASTER) AMI/CCS 
span=1,0,0,ccs,ami
# termtype: nt
bchan=1-2
hardhdlc=3
echocanceller=oslec,1-2

Code:
/etc/asterisk/chan_dahdi.conf:

[channels]
usecallerid=yes
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=yes
group=1
callgroup=1
pickupgroup=1

nationalprefix = 0
internationalprefix = 00

context=from-pstn
switchtype = euroisdn
signalling = bri_net_ptmp
channel => 1-2

Code:
dahdi_scan:

[1]
active=yes
alarms=OK
description=HFC-S PCI A ISDN card 0 [NT] 
name=ZTHFC1
manufacturer=Cologne Chips
devicetype=HFC-S PCI-A ISDN
location=PCI Bus 05 Slot 01
basechan=1
totchans=3
irq=20
type=digital-NT
syncsrc=0
lbo=399-533 feet (DSX-1)
coding_opts=AMI
framing_opts=CCS
coding=AMI
framing=CCS


ich behaupte mal, dass NT-Mode derzeit schlicht und einfach noch nicht funktioniert, obwohl hier: http://blog.flemming.info/?p=51 was anderes behauptet wird:

If you want to use your devices in NT mode it is only a few minutes more work.
:)

Oder habe ich was uebersehen?

- sparkie
 
Zuletzt bearbeitet:
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.