[asterisk-users] What causes this error?

Tzafrir Cohen tzafrir.cohen at xorcom.com
Thu Jun 18 01:53:20 CDT 2009


On Wed, Jun 17, 2009 at 04:09:46PM -0700, Darryl Dunkin wrote:
> hardhdlc is for a BRI, use dchan=24 instead to set the d-channel.

hardhdlc is *NOT* BRI-specific.

In ISDN (BRI/PRI) messages on the D channel are encoded in HDLC:

  http://en.wikipedia.org/wiki/HDLC

Zaptel originally decoded the HDLC stream in software. The D channel can
be any channel. And Zaptel is responsible for decoding its bits.

Some BRI- and E1/T1-handling chips already handle the HDLC decoding on
their own. With the Cologne HFC-* chips it is actually the only
practical way to work, IIRC. The chips used by Digium and Sangoma
E1/J1/T1 adapters also support it as an optional mode.

The bristuff patch thus added an extra code path to pass the D channel
information as if it were a standard PCM channel. Sangoma had their own
patch that added a hook from the driver in almost the same place (by
ugly means of an ioctl, to reduce the size of the patch).

As of Zaptel 1.4 Zaptel added support for "hardhdlc", which is really
"allow the driver to pass the D channel on it own". The driver provides
its own callbacks to handle the D channel.


So in short: hardhdlc is practically required on HFC-based BRI drivers.
Some drivers don't use it but fake it (the bri_dchan patch, originally
from bristuff). For Digium E1/J1/T1 drivers it seems to be optional.
Likewise for Sangoma (but the default). But you must not get it wrong.

-- 
               Tzafrir Cohen
icq#16849755              jabber:tzafrir.cohen at xorcom.com
+972-50-7952406           mailto:tzafrir.cohen at xorcom.com
http://www.xorcom.com  iax:guest at local.xorcom.com/tzafrir



More information about the asterisk-users mailing list