Latest driver info, v.1.6.1, June 2006; Press here to show the document (HTML)
Old driver info, v.1.6.0, April 2006; Press here to show the document (HTML)
Old driver info, v.1.5.10, March 2006; Press here to show the document (HTML)
Old driver info, v.1.5.9.r3, February 2006; Press here to show the document (HTML)
Old driver info, v.1.5.9.r2, February 2006; Press here to show the document (HTML)
Old driver info, v.1.5.5, October 2005; Press here to show the document (HTML)
Old driver info, v.1.5.4, April 2005; Press here to show the document (HTML)
Old driver info, v.1.5.3, October 2004; Press here to show the document (HTML)
Old driver info, v.1.5.2, August 2004; Press here to show the document (HTML)
Old driver info, v.1.5.0, April 2004; Press here to show the document (HTML)
Old driver (January 2003); Press here to show the document (HTML)
Release directory; Press here to show the directory

This directory also contains driver snapshots.
README.TXT from the SVN sources; Press here to show the document (HTML)
Example capi.conf from the SVN sources; Press here to show the document (HTML)
Example extensions.conf from the SVN sources; Press here to show the document (HTML)
Pictures from mini-ITX installation (April 2006); Press here to show the document (HTML)

 


Press here to show the print version.

 


Version 1.5.10
==============

FEATURES
========

  - support for EuroISDN, DSS1 (point to point and point to multipoint)
  - support for overlap sending and dial in digits
  - support for hold and retrieve in NT-mode
  - support for early B-channel connection when dialing out
  - support for Basic Rate Interface, 2xB, in software and hardware
  - support for Primary Rate Interface, 30xB, in software and hardware
  - driver uses a per controller mutex to protect data and chip access
  - direct access to D-channel and B-channels through /dev/ihfcX.Y
  - full support for NT-mode in software and hardware **
  - cloneable "/dev/i4b"
  - new "CAPI 2.0" application interface
  - new "DSS1" protocol
  - new "isdnphone" that uses a kernel soundbridge
  - new "isdntrace"
  - new "isdndecode"
  - new "isdnd"

** not all hardware can run NT-mode


SUPPORTED OPERATING SYSTEMS
===========================

 - FreeBSD-5.3
 - FreeBSD-5.4
 - FreeBSD-5-current
 - FreeBSD-6-current
 - FreeBSD-7-current

 - NetBSD 2.x.x
 - NetBSD 3.x.x

The driver supports generic 
IPAC / ISAC / HSCX / HFC / WINBOND / OHCI / UHCI / EHCI chips.

For a list of supported hardware, see "man ihfc" after install.


CHANGES SINCE LAST VERSION
==========================

 - compilation fixes
 - some improvements to ISDN USB drivers
 - improved non-i386 support
 - some bugfixes for the NetBSD port
 - and more (see SVN log)


HOW TO INSTALL AS ROOT ON FREEBSD
=================================

Download the three files below into a new directory and type "make install".
To uninstall type "make deinstall".

http://www.turbocat.net/~hselasky/isdn4bsd/releases/FreeBSD/1_5_10/Makefile
http://www.turbocat.net/~hselasky/isdn4bsd/releases/FreeBSD/1_5_10/new_ihfc_1_5_10.tar.bz2
http://www.turbocat.net/~hselasky/isdn4bsd/releases/FreeBSD/1_5_10/new_ihfc_1_5_10.diff.bz2

Type "make help" for more help.

If one has the source tree in a directory different from "/usr/src",
simply use "make S=/usr/mydirectory install". The only files that will not
get installed here is a copy of the header files, which is always installed
in /usr/include/....


How to use NT-mode:
===================

To use NT-mode one needs to add the following lines to the 
"SYSTEM section" in the file "/etc/isdn/isdnd.rc":

controller # 0
# uncomment the next line to
# enable NT-mode for controller 0:
#
# driver_type = DRVR_DSS1_NT
#
controller # 1
controller # 2
controller # n

# USB controllers start at n = 7 and decrements
# Also see "man isdnd.rc".
#
# Another way to set NT-mode is to use the new utility "isdnconfig".
# See "man isdnconfig".
#


THIRD PARTY SOFTWARE
====================
#
# My new version of "chan_capi" for Asterisk, http://www.asterisk.org,
# can be obtained by running the following commands:
# 

cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/chan-capi login
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/chan-capi co -r HPS_V_1_0_0 -P chan_capi

cd chan_capi
gmake all install

#
# If you haven't got CVS then a tarball is available here:
#
# http://www.turbocat.net/~hselasky/isdn4bsd/releases/FreeBSD/1_5_10/chan_capi.hps.tar.bz2 
#

#
# NOTE: one must have Asterisk preinstalled. See "/usr/ports/net/asterisk".
#
# NOTE: example configuration files are located at "chan_capi/capi.conf" and
#       "chan_capi/extensions.conf".

# 
# Else the old chan_capi module, http://sourceforge.net/projects/chan-capi,
# for Asterisk, http://www.asterisk.org, works. One needs to download the
# CVS version. No patching or additional libraries are required. If one
# needs to patch anything, "man capi20" might help.
#

#
# Quick install (when asked for password, just press enter):
#

cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/chan-capi login
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/chan-capi co -P chan_capi 

cd chan_capi
gmake all install


NETBSD PORT
===========

There is a NetBSD port of this driver that currently only supports PCI
ISDN devices, primary rate and basic rate. It is available by running
the following subversion command:

svn --username anonsvn --password anonsvn checkout svn://svn.turbocat.net/i4b

There is a readme file, "i4b/trunk/i4b/README.TXT", that explains
more. Thanks to "turbocat.net" for providing the SVN account.

Here is a tarball:

http://www.turbocat.net/~hselasky/isdn4bsd/releases/NetBSD/1_5_10/


QUICK TEST
==========

One can easily test that ones setup is working by using the utility
"capitest". See "man capitest" after install for more information.


NOTES
=====

All I4B header files were moved from "/usr/include/machine/" and
"/usr/src/sys/i386/include", to "/usr/include/i4b/include" and
"/sys/i4b/include", including "capi20.h".

The ISDN4BSD CAPI library is 99% compatible with the Linux CAPI
library.  To make a Linux CAPI application compile on FreeBSD one only
needs to include the file "/usr/include/i4b/include/capi20.h" and make
a few one-line patches.  See "man capi20" for how to resolve those
one-liners.  There is no need to install "liblinuxcapi" !

ISDN4BSD controller 0, is CAPI controller 0. If ones application
cannot handle that, one can add a few lines of code that switches "0"
to "MAX_CONTROLLER" in incoming frames. ISDN4BSD will accept both "0"
and "MAX_CONTROLLER" as controller "0".

See "/usr/src/usr.sbin/i4b/capitest/main.c" for an example on how to
take full advantage of the ISDN4BSD CAPI 2.0 implementation.

See "/usr/src/usr.sbin/i4b/isdntest/main.c" if one wants to stay
updated on the I4B API.

As a consequence of the changes I have made, one can now run
"isdntest" while "isdnd" is running. I have plans to make the device
allocation dynamic, so that applications can allocate devices like
"/dev/i4btelX" dynamically, without need for configuration. Until
further all the "counts" have been put in
"/sys/i4b/include/i4b_global.h". If one needs more than 8 units please
edit that file.

The driver now supports all cards that are supported by the official
version of I4B except active CAPI controllers and one "Frizt" card. So
if one has got an ISDN device the chances should be good that this
driver will support it.

--HPS

This document was last updated on Wed Oct 15 08:55:57 CEST 2008.