Connecting an ISDN card to Asterisk can be an exceptionally tough challange to face. Since ISDN has never reached the same level of popularity anywhere that is has in Europe, it is not surprising that ISDN support of Linux software can mostly be categorized on a scale from nonexistent to mediocre at best. HFC- and Digium-ISDN cards that are sold in the US are virutally unknown in Europe, and many European ISDN products did not reach the international market either. As a result there are now a number of incompatible API technologies to choose from, such as Hisax, Bristuff, mISDN, isdn4Linux, vISDN and CAPI4Linux, neither of them working with all types of hardware. It is typical for this situation that the Linux community did not even care that the ISDN support that finally made it into the 2.6 kernal distributions was seriously broken.
It may be fascinating for a Linux enthusiast to get a specific ISDN card / software combination working by applying patches and workarounds, but this is definitely not something that can be recommended as a platform for a mission critical application such as enterprise telephony. So if you plan to build a stable platform for your Asterisk box you should think twice before making your decisions.
- Up-to-Date Linux Kernel
There are enough internet tutorials available describing in detail how to install just about any ISDN card with with any ancient Linux version, so it may be tempting to follow these cookbook recipes and get this spare ISDN card working that you have have put aside for your Asterisk project. But what if you need to replace this ISDN card in case of hardware failure? Will your Linux version still run on a modern replacement PC? If yout Asterisk project is succsessful, can it be easily reproduced? Obviously it makes more sense to start out with a modern 2.6 kernel, an up-to-date PC platform and an ISDN-card that has a good chance of being still available from stock in two years from now.
- Which Linux distribution to choose?
The only Linux distribution that as a sufficiently complete and functional ISDN infrastructure is SUSE Linux 10. Even if you happen to have a very sound Linux knowledge there should be very good reasons to chose another platform and justify the extra effort that may be needed to get ISDN cards working. If not even the guys building the popular Asterisk@home platform managed to solve very basic ISDN issues for months in CentOS (which is a great platform, by the way), do you think you will be able to do it in a couple of days?
- Which ISDN Card to choose?
Because of the PCI bus latency times it is best to have just one ISDN card in an Asterisk box. If you need more channels, buy one of these more expensive cards supporting multiple lines, such as AVM C2, AVM C4, Eicon Dica Server 4BRI or Digium Cards. With just one ISDN BRI line (2 B-channels) a cheap AVM FritzCard PCI is sufficient, there is usually no need to buy an active card such as the AVM B1 in this scenario. Unless you need an NT-mode ISDN connection, avoid using those cheap noname HFC cards because they are of very low quality. Digium cards are not a bad choice considering that one can expect excellent support for their cards in any upcoming Asterisk version. On the downside Digium has a software interface that is incompatible with any other brand, so you are effectively locked into this buying decision.
- Which ISDN-API to choose?
Avoid using obsolete ISDN APIs such as Hisax. It is doubtful whether successor technologies such as mISDN / isdn4Linux are much better because they are still very chipset-oriented. A more general approach is capi4Linux. CAPI is an abstraction layer that is derived from the European CAPI interface, which has become a de-facto-standard across several manufacturers because of its proven reliabilty and flexibility. But beware: it is not possible to mix mISDN and capi4Linux on the same machine! With RedHat and their derivatives such as CentOS you may have a hard time to reliably disable Hisax / mISDN, because this is all they support out of the box and these drivers are automatically installed whenever as a compatible card is detected. The most modular and reliable combination is capi4linux as the ISDN API and chan_capi as the channel driver for Asterisk. Digium ISDN cards do things somewhat differently because they are directly accessed via their own Zaptel/Zapate kernel mode drivers.
Continue to our FritzCard installation how-to for Suse 10 Linux >>