A200 Card Isn't Working

Hello

I’ve had this issue in the past and was only able to rectify it by paying for tech support from Sangoma. I’m hoping to resolve this with the aid of this forum.

Issue: the FXO & FXS ports aren’t being recognized by the system.

I’ve run trough the command line configuration as well as the DAHDI GUI with no improvement. I’ve disabled and re-enabled the DAHDI module.

Any ideas as to how I can get the card to work? Thanks in advance for any help that can be provided.

Michael

The first thing I’d do is stop everything, start DAHDI by hand, then fwconsole start FreePBX.

Next, I’d look at the /var/log/asterisk/full log and see what’s happening with dahdi on the way up.

Dahdi and Asterisk are separate services and are largely unrelated. Asterisk (and hence FreePBX) will look for dahdi running and, if it finds it, interface to it.

So, stepwise refinement is your friend.

  • Configure DAHDI (which it appears you’ve done).
  • Restart the system (since the card’s options have changed).
  • Start Dahdi by hand.
  • Use the rest of the dahdi management software to make sure the ports are all green.
  • Repeat until the ports are recognized by the Dahdi software and that the dahdi drivers are getting loaded correctly.
  • Put your eyes on the /var/log/asterisk/full file using something like the following:
    tail -F /var/log/asterisk/full | grep dahdi
  • Start FreePBX
  • See what errors pop up in the tail command and report back.
1 Like

Thanks in advance for your help.
MIchael

At the root cli, “shutdown -r now” would be a pretty good way.

Another approach is “service asterisk stop; service dahdi stop” is another. You should reboot at some point after configuring the device to make sure that the card gets the configured settings.

service start dahdi.

One approach is “find / -name 'dahdi*'

fwconsole stop
fwconsole start

Here’s what I’ve found in /var/log/asterisk/full log

[2020-04-29 07:52:04] ERROR[3361] chan_dahdi.c: Unable to reconfigure channel ‘3’
[2020-04-29 07:52:04] WARNING[3361] chan_dahdi.c: Channel ‘3’ failure ignored: ignore_failed_channels.
[2020-04-29 07:52:04] WARNING[3361] chan_dahdi.c: Ignoring any changes to ‘signalling’ (on reload) at line 38.
[2020-04-29 07:52:04] ERROR[3361] chan_dahdi.c: Unable to reconfigure channel ‘4’
[2020-04-29 07:52:04] WARNING[3361] chan_dahdi.c: Channel ‘4’ failure ignored: ignore_failed_channels.

Some of the commands didn’t seem to do anything: tail -F /var/log/asterisk/full | grep dahdi Not really sure what I’m suppose to do with this. How does it work, what do I do after I run it?

I’m not really sure what the following command is supposed to do. When I ran it a lot of info went flying past the screen.
find / -name 'dahdi*'

I’ve included some screen shots of a log fill and error code.

Thanks again for the help.
Michael

Thanks again for the help.
Michael

Your configuration is incomplete for your card. Channels 3 & 4 are likely using the wrong signalling.

From the Unix Command Line (log into the server as ‘root’) you can run this program. Once the program starts, it won’t do anything. Hit ^Z and then type ‘bg’ to put the tail program in the background. After that, when you start Asterisk/FreePBX, everything with ‘dahdi’ in the /var/log/asterisk/full log will be displayed on the screen.

Once again, from the root login, the ‘find’ command should be used to locate all of the dahdi_ management programs in the system. Most of them are in ‘/usr/local/bin’ or ‘/usr/local/sbin’. There should be about 15-20 programs that start with dahdi (look for dahdi_test as an example). Each of these program is designed to help you validate your dahdi configuration.

At least you know why Asterisk isn’t recognizing your ports - the dahdi service is failing to start. Without that, asterisk has no way to talk to your dahdi cards.

Hello
Hope I’ve done this correctly.

  • I don’t see any of the management programs your referring to.
  • What is ^Z Is this Ctrl + Z on the keyboard?

Stopping asterisk (via systemctl): [ OK ]
[root@localhost ~]# service dahdi stop
Stopping dahdi (via systemctl): [ OK ]
[root@localhost ~]# tail -F /var/log/asterisk/full | grep dahdi
^Z
[1]+ Stopped tail -F /var/log/asterisk/full | grep --color=auto dahdi
[root@localhost ~]# bg
[1]+ tail -F /var/log/asterisk/full | grep --color=auto dahdi &
[root@localhost ~]# service asterisk start
Starting asterisk (via systemctl): [ OK ]
[root@localhost ~]# service dahdi start
Starting dahdi (via systemctl): Job for dahdi.service failed because the control process exited with error code. See “systemctl status dahdi.service” and “journalctl -xe” for details.
[FAILED]

I’m not sure if I’m doing this correctly, however here are the results.

[root@localhost bin]# find
.
./pnp_server

[root@localhost bin]# cd /usr/local/sbin
[root@localhost sbin]# find
.
./asterisk-version-switch
./setup-sangoma
[root@localhost sbin]#

You haven’t done what the error message said. Try that next.

Other than that (and the incomplete find command), it all looks about right.

I’m concerned that you might not have the background required to do this on your own, since you weren’t aware that ^z is Control Z.

Hi Dave

This is what I found:

[root@localhost ~]# service dahdi stop
Stopping dahdi (via systemctl): [ OK ]
[root@localhost ~]# service dahdi start
Starting dahdi (via systemctl): Job for dahdi.service failed because the control process exited with error code. See “systemctl status dahdi.service” and “journalctl -xe” for details.
[FAILED]
[root@localhost ~]# journalctl -xe
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: opvxd115: modprobe: FATAL: Module opvxd115 not f
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: [FAILED]
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: opvxa24xx: modprobe: FATAL: Module opvxa24xx not
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: [FAILED]
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: opvxa1200: modprobe: FATAL: Module opvxa1200 not
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: [FAILED]
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: zaphfc: modprobe: FATAL: Module zaphfc not found
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: [FAILED]
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: tor3e: modprobe: FATAL: Module tor3e not found.
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: [FAILED]
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: r1t1: [ OK ]
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: rxt1: [ OK ]
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: rcbfx: [ OK ]
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: Running dahdi_cfg: DAHDI_CHANCONFIG failed on ch
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: Selected signaling not supported
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: Possible causes:
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: FXO signaling is being used on a FXO interface (u
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: RBS signaling is being used on a E1 CCS span
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: Signaling is being assigned to channel 16 of an E
Apr 30 09:04:31 localhost.localdomain kernel: dahdi_ioctl_chanconfig: No channel for number 1
Apr 30 09:04:31 localhost.localdomain dahdi[9165]: [FAILED]
Apr 30 09:04:31 localhost.localdomain systemd[1]: dahdi.service: control process exited, code=exited
Apr 30 09:04:31 localhost.localdomain systemd[1]: Failed to start LSB: DAHDI kernel modules.
– Subject: Unit dahdi.service has failed
– Defined-By: systemd
– Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel

– Unit dahdi.service has failed.

– The result is failed.
Apr 30 09:04:31 localhost.localdomain systemd[1]: Unit dahdi.service entered failed state.
Apr 30 09:04:31 localhost.localdomain systemd[1]: dahdi.service failed.
Apr 30 09:04:31 localhost.localdomain polkitd[3946]: Unregistered Authentication Agent for unix-proc
Apr 30 09:04:34 localhost.localdomain runuser[9253]: pam_unix(runuser:session): session opened for u
lines 1004-1037/1037 (END)

As I said a couple of days ago, there is a problem in your channel configuration file. How did you configure the config file? IIRC (I don’t have access to an Asterisk server from here), the command is dahdi_config or dahdi_configure.

Try this:

man find

Then use the find command to find all of the dahdi executables.

find /usr -name 'dahdi_*' -executable

The slash is the one under the question mark and the single quotes are the ones the one under the quotation marks. Every letter, space, and punctuation mark is there on purpose. Don’t shortcut anything or replace punctuation with something else.

Hello

Thanks again for the help.

I configured the config file via command line and ran “setup sangoma”. That’s the only command line configuration I execute on the card. The rest of the configuration is done via the GUI. The A200 card has died twice and each time it occurred after a module update.

I didn’t find a dahdi_config or a dahdi_configure file but I did find a dahdi_cfg file:

[root@localhost ~]# dahdi_cfg
DAHDI_CHANCONFIG failed on channel 1: Invalid argument (22)
Selected signaling not supported
Possible causes:
FXO signaling is being used on a FXO interface (use a FXS signaling variant)
RBS signaling is being used on a E1 CCS span
Signaling is being assigned to channel 16 of an E1 CAS span

find /usr -name 'dahdi_*' -executable produced this:

[root@localhost ~]# man find
[root@localhost ~]# find /usr -name ‘dahdi_*’ -executable
/usr/share/dahdi/dahdi_span_config
/usr/share/dahdi/dahdi_auto_assign_compat
/usr/share/dahdi/dahdi_handle_device
/usr/src/freepbx-14.0.1.3/amp_conf/htdocs/admin/modules/dahdiconfig/views/dahdi_system_settings.php
/usr/src/freepbx-14.0.1.3/amp_conf/htdocs/admin/modules/dahdiconfig/views/dahdi_digital_settings.php
/usr/src/freepbx-14.0.1.3/amp_conf/htdocs/admin/modules/dahdiconfig/views/dahdi_mfcr2_settings.php
/usr/src/freepbx-14.0.1.3/amp_conf/htdocs/admin/modules/dahdiconfig/views/dahdi_modprobe_settings.php
/usr/src/freepbx-14.0.1.3/amp_conf/htdocs/admin/modules/dahdiconfig/views/dahdi_global_settings.php
/usr/src/freepbx-14.0.1.3/amp_conf/htdocs/admin/modules/dahdiconfig/views/dahdi_analog_hardware.php
/usr/src/freepbx-14.0.1.3/amp_conf/htdocs/admin/modules/dahdiconfig/views/dahdi_advanced_settings.php
/usr/src/freepbx-14.0.1.3/amp_conf/htdocs/admin/modules/dahdiconfig/views/dahdi_modules_settings.php
/usr/src/freepbx-14.0.1.3/amp_conf/htdocs/admin/modules/dahdiconfig/views/dahdi_message_box.php
/usr/src/freepbx-14.0.1.3/amp_conf/htdocs/admin/modules/dahdiconfig/views/dahdi_analog_settings.php
/usr/src/freepbx-14.0.1.3/amp_conf/htdocs/admin/modules/dahdiconfig/views/dahdi_analog_signalling_form.php
/usr/src/freepbx-14.0.1.3/amp_conf/htdocs/admin/modules/dahdiconfig/views/dahdi_digital_hardware.php
/usr/src/freepbx-14.0.1.3/amp_conf/htdocs/admin/modules/dahdiconfig/includes/dahdi_cards.class.php
/usr/sbin/dahdi_waitfor_span_assignments
/usr/sbin/dahdi_tool
/usr/sbin/dahdi_cfg
/usr/sbin/dahdi_span_assignments
/usr/sbin/dahdi_hardware
/usr/sbin/dahdi_span_types
/usr/sbin/dahdi_scan
/usr/sbin/dahdi_genconf
/usr/sbin/dahdi_registration
/usr/sbin/dahdi_speed
/usr/sbin/dahdi_maint
/usr/sbin/dahdi_test
/usr/sbin/dahdi_monitor

Oh look - there they are. Good work!

I’d probably start with the counter-intuitively named “dahdi_genconf” to see if that will generate the configuration. The other commands all do cool trick that you can try once you get the configuration generated and the config applied using “dahdi_cfg”.

[root@localhost ~]# dahdi_genconf
Empty configuration – no spans
Empty configuration – no spans
Empty configuration – no spans

Dave, I have a document that outlines how to install various software packages; one of them being DAHDI. Do you think it would be a good idea to go ahead and re-install the DAHDI package into the /usr/src directory as outlined in the document?

Download Software Packages

The sources for the following three packages are required:

  • Asterisk (pbx software)
  • DAHDI (signaling stack)
  • libPRI (required only for PRI/BRI cards)
  1. Navigate to the /usr/src/ directory which will be used to store the downloaded packages. To do this type the following in your Linux command line, then press <enter>:

  2. -> cd /usr/src

  3. Download Asterisk, DAHDI and LibPRI by copy & pasting the following (without the quotes ""), then press <enter>:

  4. asterisk : " wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz "

  5. DAHDI : " wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz "

  6. LibPRI : " wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4-current.tar.gz "

Install Software Packages

The following instructions will guide you to un-compress the downloaded ‘.tgz’ files and install using make command.

Verify you are still inside the /usr/src/ directory by typing ‘pwd’ in the Linux command line. If you are not, navigate inside by typing ‘cd /usr/src/’ then press <enter>

  1. DAHDI Installation
    -> Untar the download DAHDI software package, and then install. Type the following in the /usr/src/ directory:

  2. tar xvzf dahdi-linux-complete-<version>.tgz

  3. cd dahdi-linux-complete-<version>

  4. make

  5. make install

  6. make config

you are using a Sangoma , you need to first ‘setup’ , part of that offers to provide the DAHDI interface. You threw in VEGA as your platform and RBS/E1 popped up. these pertain to T1/E1 spans, please clarify the hardware involved

Hello

I’m using a Sangoma A200 card with a 2 port FXO and 2 port FXS boards being piggyback on to the card. When I run “setup-sangoma” from the command line, the card is recognized as being a A200. Hope this helps.


A200 detected on slot:4 bus:8

Would you like to enable hardware DTMF detection?

  1. YES
  2. NO
    [1-2, ENTER=‘YES’]:

did you select t1 ? it isn’t

Yup. I selected T1. It isn’t a E1 card either. So is this a wanpipe issue?

No, it’s operator error :wink: the drop down should allow you to select a more suitable Line Mode

No operator error here!:clap: Only two choices available: T1 & E1. So how do I expand the “Line Mode” drop down box to include other selections? I guess A200 would be one of those? Do I need to do something with the wanpipe/global.conf file and if so what?

Thanks for the help.

Sorry, only ever used the setup from a shell.