DAHDI drivers fail to install on a brand new AsteriskNOW v.1.5.0 SOLVED

Brand new installation of FreePBX/AsteriskNOW v.1.5.0 32-bit, downloaded from http://dl.digium.com/load_balance.php?q=AsteriskNOW-1.5.0-i386-1of1.iso
CentOS 5.3 (Final), Server Dell PE1950 with 4 GB of RAM.

Errors when booting the system: FATAL directory /dev/dahdi does not exist

Errors in Asterisk log: ERROR[3350] chan_dahdi.c: Unable to load chan_dahdi.conf
ERROR[3350] codec_dahdi.c: Failed to open /dev/dahdi/transcode: No such file or directory

Error when attempting to install DAHDI manually: You do not appear to have the sources for the 2.6.18-128.1.1.el5PAE kernel installed.
I assume the same error caused the driver installation to fail during the initial install of the system. What do I do next?

I know that you can’t load drivers in a system if it is not there. This may seem intuitive, but I was building a backup system and only had one card. I got an error similar.

Yes, the card is seated correctly. I am able to use this server/card/PRI by installing another flavor of Linux and Asterisk. The problem only happens with FreePBX/AsteriskNOW v.1.5.0 32-bit, downloaded from http://dl.digium.com/load_balance.php?q=AsteriskNOW-1.5.0-i386-1of1.iso
This looks like a defect/bug in the AsteriskNOW-1.5.0

It could be. I could not say one way or the other though. I am not enough of a Linux user to make a declaration one way or the other. Any help from Digium?

Here is a web link to check out.

On testing Zap: http://www.cadvision.com/blanchas/Asterisk/TestingZaptelHW.html

Thank you for the link Cliffster. However, I can not follow the test procedure, because the DAHDI/ZAP driver is not installed, so there is nothing to test.
I then follow Digium documentation to install the driver manually, but get an error:
You do not appear to have the sources for the 2.6.18-128.1.1.el5PAE kernel installed.

Sounds like it requires source code for the 2.6.18-128.1.1.el5PAE kernel be available for building and installing certain drivers included in this bundle.

The directory, /lib/modules/2.6.18-128.1.1.el5PAE/build, is either missing, or is empty.

(I found that note, and I have no idea, how you fill that directory or where to find the files, but I will keep looking).

But I really don’t know what to do with them.

The missing kernel source looks like a bug in FreePBX to me. Can anyone help with it?

I found two ways to resolve this:

First method:
a. Download pre-compiled DAHDI driver from http://elrepo.org/tiki/tiki-index.php. In my case , the file is kmod-dahdi-PAE-
b. install the driver
rpm -ivh kmod-dahdi-PAE-
c. configure DAHDI settings
This is the easy/fast way. The only problem is that the system still does not have the kernel source, hence compiling any other drivers or applications may still fail.

Second method:
a. download the kernel source. In my case it is kernel-PAE-devel-2.6.18-128.1.1.el5.i686.rpm, found on http://linux.web.psi.ch/dist/scientific/53/kernel (thanks to Cliffster)
b. install the source rpm -ivh kernel-PAE-devel-2.6.18-128.1.1.el5.i686.rpm
c. follow Digium procedure to install DAHDI drivers http://docs.digium.com/misc/ADL_quickstart.pdf
d. configure DAHDI settings

IMHO: the missing kernel source is a defect in AsteriskNow v.1.5.0. The fact that the developers did not express any interest in this post is depressing. Hopefully they will address the defect in the future releases.

I am having the same problem with this error message while trying to re-install DAHDI from a SRPM I downloaded off the internet. In fact, I downloaded the current DAHDI and libpri SRPMs. When running ‘make’ I get that same error message. After a lot of googleing, I found that while trying to install into the kernel,they really only need dependencies that were listed on that website for Asterisk packages to be installed. The ones I chose that I needed were as follows and ran the following from the command line;
yum install-y ncurses-devel libtermcap-devel kernel-devel kernel-smp-devel openssh-devel unixodbc-devel.
When I ran this, yum said thet it couldn’t find some of the files and therefore had nothing to do. (couldn’t install them) I looked at the repositories with my web browser and found the missing files that had been moved to other directories except for kernel-smp-devel. I searched all over the Asterisk and CentOS download merrors and couldn’t find it any ware.

With all other dependencies installed, I still get this error message when trying to run ‘make’. What I would like to know is why did kernel-smp-devel get removed from the libraries and where the BLANKITY-BLANK is it!

Sorry about being too verbose here but I am also having problems with the latest release of AsteriskNow and things missing in it.

Fix CDR:

yum install asterisk14-addons.i386
chown -R asterisk /var/lib/php/session
yum install ncurses-devel.i386
yum install php-gd
service httpd restart

##Fix Uploads and PHP Memory notices:

sed -i “s/User apache/User asterisk/” /etc/httpd/conf/httpd.conf
sed -i “s/Group apache/Group asterisk/” /etc/httpd/conf/httpd.conf
echo “memory_limit = 100M” > /etc/php.d/freepbx.ini
echo “upload_max_filesize = 20M” >> /etc/php.d/freepbx.ini
service httpd restart

Fix Dahdi:

chkconfig dahdi on
service dahdi start
amportal restart

I tried yum install for the addons and yum reported that no package was available. What repository (URL) would it be found in?

Tom S.

Thomasj, in you first post in this thread you state “I am having the same problem”. In this case you should be able to resolve it by following instructions offered earlier in this thread (post with subject Fixed, which offers you two options). If you are unable to follow these instructions, then your problem is different. In this case please provide more details: why can’t you use this solution, your versions and exact errors.

After Reading a lot more on this subject, I find that since kernel 2.6.?? the zapata mods are already in the kernel. They are kust dorement waiting for hardware to be found and load and use them as needed. As you can see below, AsteriskNow seems to load all the drivers and not just for the hardware found in the box. I have a single TDM400P in my server and none of the other hardware that these drivers are loaded for.

dahdi_echocan_mg2 39048 0
wctc4xxp 83264 0
dahdi_transcode 42376 1 wctc4xxp
wcb4xxp 110756 0
wctdm 73804 0
wcfxo 47136 0
wctdm24xxp 159332 0
wcte11xp 59936 0
wct1xxp 48544 0
wcte12xp 102404 0
wct4xxp 349696 0
dahdi 232144 13 dahdi_echocan_mg2,xpp,dahdi_transcode,wcb4xxp,w

After more probing with my Asterisk, it does actually see the Hardware and Driver but is not connecting to it or setting up channels for the FXSs I do a “CLI> dahdi show channels” and it shows pseudo where it should be listing the channels with default as the context. I commented in another post that I had the dahdi-channels.conf but was missing the dahdi_chan.conf file which chains to the dahdi-channels.conf file. I found on another thread, a mention of the missing file and copied it to my /etc/asterisk/ but it doesn’t change anything.

I read every node of this thread as well as many others before typing into the threads myself. I am trying to get this system up as soon as possible. My first hope is that I would find someone posting the same problem with the same cause and that his/her issue resolution would be what I need. This is a lengthly process of question and answer on a BBS and I just as soon would like th find the answer without having to ask the questions. I am looking into other threads also, but I am at a loss to figure out whaqt is missing in my installation that was no problem to me when the old zaptel config files existed.

Thomasj, the problem you are facing is obviously different from the one in this thread. Please use another thread to address it.

i did yum install kernel-PAE-devel on centos 5.4 and dadhi happily compiled.

it seemed the errors only occur on the PAE kernel.

From the Asterisk Quickstart guide.

  1. Download the latest DAHDI drivers. DAHDI is available for download from:

wget http://downloads.digium.com/pub/telephony/dahdi-linux-complete/dahdi-linux-complete.tar.gz

  1. Expand the downloaded fle, compile its contents, and install the drivers and applications. Substitute
    the version of DAHDI for the X.X.X in the command lines below.

tar -zxvf dahdi-linux-complete-current.tar.gz

cd dahdi-linux-complete-X.X.X+X.X.X


make install

That sorted it. The service now starts quite happily.