Configuring and Testing Dahdi Hardware
When you install a T1 or FXO/FXS PCI card into an Asterisk PBX starting with version 1.6, you will be using Dahdi drivers to communicate with the card. A little bit of history is required to explain the transition from the Zaptel drivers to the Dahdi drivers.
Dahdi History Lesson
The original FXO/FXS interface was developed by Jim Dixon around 1990 and it was a revolutionary idea in the telephony world.
He named the cards Zapata after the Mexican revolutionary Emiliano Zapata and named the first card Tormenta which means storm. The drivers used were
called Zapata telephony (Zaptel) drivers.
He placed the designs on the net and the rest is history. Here's his story
in his own words. Digium has been maintaining the zaptel drivers since.
The story took a turn when it was found out that the word Zaptel was
copyrighted/trade marked by another company which graciously provided a lengthy period to rename the existing product line and software drivers.
The new name for the legacy cards (referring to FXS/FXO and E1/T1 lines) is Dahdi (should really be all caps) which stands for Digium Asterisk Hardware Device Interface. With the renaming
of the drivers, it was a good time to incorporate some major improvements in the drivers.
The Process of Loading Modules
Note: There is going to be more information presented on the next pages than needed to make the Dahdi cards work. The excess of information
is to provide the maximum information to you for when things go wrong!
The loading and configuring of dahdi cards is divided into 3 main areas:
- Linux Kernel Dahdi Module
- Dahdi Card Drivers
- Asterisk Dahdi Interface
Part 1 - Linux Kernel Dahdi Module
The process of loading the Dahdi modules start with the Linux kernel. Since Linux Version 2.6 kernel, the Dahdi kernel module has been part of the
kernel. We don't have to worry about installing the Dahdi kernel module but we do have to verify that the specific Dahdi modules are being loaded for
the cards that we have installed.
The first task is to determine if the Dahdi kernel module is being loaded. You can try and view the boot time messages as they rapidly scroll past
during the boot process or more simply view them at the Linux command line by typing:
root@pbx:~ $ dmesg | less
("| less" views the boot messages one screen at a time, press the spacebar for the next screen)

You will be looking to determine the version of the Linux Dahdi kernel module for the cards. If you run into problems, the first question that you
will be asked is "Do you have the latest Dahdi version?". Now you know how to find it.
Multiple Dahdi cards and udev Problems
With version 2.6 of the Linux kernel, a new device driver system was incorporated called udev. It's purpose is to provide consistency in the loading
of devices so that they will always be recognized uniquely. If you have multiple Dahdi cards, then visit the Dahdi and udev problem page .
Next the Dahdi card drivers must be configured, go to Part 2 - Dahdi Card Drivers
|