Asterisk and ISDN2 in the Netherlands

For a few weeks now, I’m trying to get Asterisk to work on the KPN Telecom network here in the Netherlands, by means of an ISDN2 (BRI). This seems trivial, since there’s more than one way to do it.

The hardware I use in this case are 2 Cologne HFC-S cards, which are quite popular since they support TE (Terminal Equipment) as well as NT (Network Terminator) mode. The software used in this case is Ubuntu Dapper with Asterisk from packages as provided by dapper-backports (part of the official Ubuntu project). A goal I set is to use as much as possible from the official repositories.

The setup I’m trying to build is an Asterisk machine with 2 HFC-S ports, one in TE, one in NT mode, with the TE side connected to KPN and the NT side connected to an ISDN->analog converter like a KPN Quattrovox or Moduvox (for a fax and some analog phones). Later on I will add a fax2email solution and a sip2gsm box (more about those in later postings).

First off, there’s vISDN by Daniele “vihai” Orlandi. A really promising project. It’s built completely from scratch, and tries to implement EuroISDN and onderlying layers q.931 and q.921 as strict as possible. The modular setup of his design gives room for lots of other applications, up to using the supported cards as a full blown network interface. Also, the framework is set up so that support for other hardware can be easily added.

Since the project is new, it’s not quite polished. Setting up can be quite frustrating, especially because there’s no packages (yet — working on that). Also, the author indicated that he doesn’t have a lot of time at the moment, and since there’s no one else developing, development has come to a standstill. Debugging, however, is almost too easy. With an altered version of libpcap you can even use tcpdump for packet debugging.

After installing and configuring the driver and the chan_visdn asterisk module (yes, own channel module – doesn’t use a bit of zaptel or libpri) all seems to work nicely. Small testing was done. I called from one of the analog phones to a cell phone, and it worked. some more testing was done. All hell broke loose.

Using the transfer option from features.conf crashed Asterisk. Routing a call back to the outside world resulted in even more crashing. Not really a motivation to stick with vISDN, but I did. Later on I found out vISDN is using it’s own timing source, and this got screwed up after a while in a conversation, giving choppy sound as a result. MusicOnHold was not usable at all because of this. Next to that, the driver does not implement any form of buffering right now, which results in even more choppy sound.

Also, due to the strange implementation of EuroISDN by KPN here in the Netherlands, we couldn’t have a call going for more than 3 minutes. After that, the Quattrovox sends a packet about a timer that was supposed to be reset, and the conversation gets cut off.

In the end, I chose for the quick-and-dirty solution in the form of BRIstuff. Bristuff is a big, fat patch on Asterisk, zaptel and libpri that implements BRI support piggybagging on the Zaptel driver. PRI support in Asterisk is lost, and while the project is actually about as old as Asterisk itself, there’s still a lot of bugs. More about BRIstuff in a later posting.

Why did I stick to vISDN for so long? I think this project has a lot of potential to be the number 1 choice for HFC-users. It requires no patching of Asterisk, your kernel or libs whatsoever. I hope Daniele will continue to bring us the good stuff that is vISDN, so we can all enjoy our Asterisk to the fullest.

In following postings I will talk about my experiences with BRIstuff, mISDN and other methods on how to use Cologne’s HFC-cards with Asterisk and/or OpenPBX. Keep a close watch!

One thought on “Asterisk and ISDN2 in the Netherlands

  1. About vISDN “more than 3 minutes” call problem.
    I also have this problem. Here is my situation: HFC-S PCI A card, ran in NT mode, connected to a TODOS ISDN telephone. Calls from sip zone to ISDN are with unlimited length, but when it’s called from ISDN to SIP (registrar is asterisk), the call is dropped on 2:59 second, – 180 seconds (3 minutes).
    I tried to lower timer times in visdn.conf to see if any of them is the problem – no, they are not! My ISDN timings
    T302 = 5
    T301 = 24
    T307 = 18
    T316 = 12
    T317 = 10
    T312 = 10

    I searched for hardcored “180″ value in vISDN sources, but i did not find any suspisious code.
    So the problem is not in Netherlands’ ISDN lines.
    Anyone with more experience on this?
    Asterisk 1.2.14
    vISDN 18.3

    macTijn, have you success to pass this, anything to me to try?

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>