Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Jun 2003 19:49:20 +0200
From:      Hans Petter Selasky & <hselasky@c2i.net>
To:        Joshua Silver <jaster@shoalhaven.net.au>, freebsd-isdn@freebsd.org
Subject:   Re: 56k DoV
Message-ID:  <20030613194920.A1294@curly.tele2.no>
In-Reply-To: <200306131529.38864.jaster@shoalhaven.net.au>; from jaster@shoalhaven.net.au on Fri, Jun 13, 2003 at 03:29:38PM %2B1000
References:  <200306111208.21922.jaster@shoalhaven.net.au> <20030611011745.A2302@tmp.com.br> <20030611151053.B20101@curly.tele2.no> <200306131529.38864.jaster@shoalhaven.net.au>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi.

isdntrace is currently not capable of tracing the B-channel unless the device 
is connected. I've scratched together a small program that will fetch a
data sample. I assume that you only have one ISDN card in your computer. The 
program will use BPROT_NONE: 

cd ~
fetch http://home.c2i.net/hselasky/isdn4bsd/privat/temporary/isdntest.tar.gz
tar -zxvf isdntest.tar.gz
cd isdntest
make clean all
./isdntest

After you got the program working, you need to do some editing:

cd /sys/i4b/layer3/

"i4b_q931.h":

Add the following line after the line saying IT_RATE_64K

#define	IT_RATE_56K		0x8f	/* BC: information xfer rate (not tested) */

then make a backup (same directory)

cp i4b_l2if.c i4b_l2if.c.bak

"i4b_l2if.c":

Search forward to the function "i4b_l3_tx_setup". Then under "case BRPROT_NONE:"
change IT_RATE_64K to IT_RATE_56K, recompile the kernel, reboot and run my 
program. If the program connects, you might want to redefine IT_RATE_56K to
IT_RATE_64K, so that it does not cause trouble with other programs. If the 
program doesn't connect, you need two computers: One computer to dial 56k DoV 
and another computer to trace the D-channel. See

/usr/src/usr.sbin/i4b/isdntrace/ and
/usr/src/usr.sbin/i4b/isdntrace/cable.txt

for more information.

On Fri, Jun 13, 2003 at 03:29:38PM +1000, Joshua Silver wrote:
> Thanks Guys,
> 
> I've done a little more digging, and found your right, it's a little more 
> complicated than I thought ... dang :( ...
> 
> I'm running 4.8-STABLE, and when you say you need a data stream, is that 
> something like the output from isdn_trace ? ... sorry, I'm still rather new 
> to ISDN ... ;)
> 
> Josh.
> 
> On Wed, 11 Jun 2003 23:10, Hans Petter Selasky & wrote:
> > Hi,
> >
> > I wrote the HDLC encoder/decoder. Q.921's definition of HDLC is a serial
> > (1-bit) protocol, that transfers 8-bit units of data. I'd assume this is
> > the same for all transferrates. If I'm right, all you have to do, is to
> > move the bits around, so that the serial data stream is the same. Bits are
> > transmitted in the order bit[0] to bit[7] inclusively (64k). When using 56k
> > there are two logical choices of unused bits: Either bit[0] or bit[7] can
> > be set to either zero or one. According to the HFC-S manual, setting bit[0]
> > (LSB) to one is default when using 56k mode.
> >
> > To decide for sure what format your ISP is using, I'd need a data-stream
> > sample. What version of FreeBSD are you using?
> >
> > On Wed, Jun 11, 2003 at 01:17:45AM -0300, Sergio de Souza Prallon wrote:
> > > Hi,
> > >
> > > I wrote the driver for this card, but I never had any experience with DoV
> > > (it's not an issue in my country). AFAIK, involves "cheating" the bearer
> > > codes (which can be done - there is at least one patch from NetJet Inc
> > > for it) AND (in the 56K case) ignore the 7th bit of every byte sent or
> > > received does not exists while encoding or decoding the HDLC frames.
> > > Unfortunately, this is not handled by the HDLC encoder/decoder package I
> > > use. It may be possible to hack it, but I don't know for sure, the code
> > > is heavily optimized. I'd suggest you to contact Hans Petter Selasky, the
> > > original author of the encoder.
> > >
> > > Hope this helps.
> > >
> > > []'s
> > >
> > > --
> > > Prallon
> > >

Yours
--HPS


Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030613194920.A1294>