Getting started with DAHDI / Asterisk: "dahdi show channels" shows nothing

I am trying to get DAHDI and Asterisk working with a Digium A4A card, 4 x FXO modules. The eventual goal is to have 4 incoming PSTN lines and an IVR system. No internal extensions and no dialing out required.

DAHDI starts but “dahdi show channels” shows no channels. I do not know whether this is due to a hardware or setup problem, or due to a problem with my configuration files.

Thanks to help from this forum thread:

I have got around the “init.d/dahdi start script does not exist” problem and got DAHDI to start.

Being new to Asterisk I don’t fully understand what I’m doing here, but I have attempted to set up chan_dahdi.conf and extensions.conf as indicated in the A4A card manual:

lsmod shows that dahdi is loaded; “dahdi show version” and “dahdi show status” appear to confirm this.

$ lsmod ! grep dahdi
dahdi_transcode 14291 1 wctc4xxp
dahdi_voicebus 59241 2 wctdm24xxp,wcte12xp
dahdi 228088 19 xpp,wctdm24xxp,wcaxx,wcfxo,wctdm,dahdi_transcode,oct612x,dahdi_voicebus,wcb4xxp,wct1xxp,wct4xxp,wcte43x,wcte11xp,wcte12xp,wcte13xp
crc_ccitt 12707 2 wctdm24xxp,dahdi

$ dmesg | egrep ‘dahdi|wcaxx’
[ 31.172824] dahdi: loading out-of-tree module taints kernel.
[ 31.173844] dahdi: module verification failed: signature and/or required key missing - tainting kernel
[ 31.175857] dahdi: Version: 2.11.1
[ 31.176303] dahdi: Telephony Interface Registered on major 196
[ 34.331291] wcaxx 0000:03:02.0: Firmware version: a0017
[ 34.435583] wcaxx 0000:03:02.0: Echo cancellation for 4 channels
[ 35.381058] wcaxx 0000:03:02.0: VPM450: Present and operational servicing 1 span
[ 38.499236] wcaxx 0000:03:02.0: Port 1: Installed – AUTO FXO (FCC mode)
[ 38.499243] wcaxx 0000:03:02.0: Port 2: Installed – AUTO FXO (FCC mode)
[ 38.499247] wcaxx 0000:03:02.0: Port 3: Installed – AUTO FXO (FCC mode)
[ 38.499251] wcaxx 0000:03:02.0: Port 4: Installed – AUTO FXO (FCC mode)
[ 38.501356] wcaxx 0000:03:02.0: Found a Wildcard A4A (SN: 1A4A00F - DM41140100239 - A - 20131212)
[ 38.878990] dahdi_transcode: Loaded.
[ 40.365625] dahdi_devices pci:0000:03:02.0: local span 1 is already assigned span 1

CLI> dahdi show version
DAHDI Version: 2.11.1 Echo Canceller: HWEC

CLI> dahdi show status
Description Alarms IRQ bpviol CRC Fra Codi Options LBO
Wildcard A4A OK 6 0 0 CAS Unk 0 db (CSU)/0-133 feet (DSX-1)

However, “dahdi show channels” shows nothing. Since wcaxx is detecting the 4 x FCO ports I suspect the installation and setup might now be OK, and the problem might be in my .conf files. Would appreciate confirmation that I might be on the right track.

CLI> dahdi show channels
Chan Extension Context Language MOH Interpret Blocked In Service Description
pseudo default default Yes

Asterisk 15.4.1
DAHDI 12.1.1
CentOS Linux 7 (Core) kernel 3.10.0-862.3.3.el7.x86_64

Additional info:

In /etc/dahdi/system.conf I changed loadzone and defaultzone from “us” to “uk” since that’s where I am. Since I have 4 x FXO modules I have “fxsks = 1,2,3,4”.

Then in /etc/asterisk/ I have (at the end):

;FXO Modules
group = 1
echocancel = yes
signalling = fxs_ks
context = Incoming
channel = 1-4

It would be nice to know if there is anything obvious that I’ve done wrong so far.

Support for configuring hardware cards is provided by the vendor (DIgium), not by the open source community. You will need the card serial number when contacting Digium.

Never mind, I seem to have got it working now. The solution was, to ignore the 2 lines in the chan_dahdi.conf in the O’Reilly book (4th edition, p. 117) that say

; The channels context is used when defining channels using the
; older deprecated method. Don’t use this as a section name.

In other words, I moved the relevant config commands from the “phone” section to the “channels” section.