Ok, you got your self an Internal ISDN card and you wish it to work under linux...
I must tell you this will be a nice journey, it can be long also but the buttom line - It is working!.
What is the first step you must take when you wish to get your card working? Or even when
you are on the market shopping for a new card? You most look at the HiSAX.readme to see if your card is listed their as
supported. If its not on the supported card list (which is on our main ISDN page) don't buy
it or try to replace it.
Currently all the major ISDN manufactures got support for
their cards under the HiSAX driver.
What is the HiSax Driver?
HiSax is a Linux hardware-level driver for passive ISDN cards with Siemens chipset (ISAC_S 2085/2086/2186, HSCX SAB 82525). It is based on the Teles driver from Jan den Ouden. It is
meant to be used with isdn4linux, an ISDN link-level module for Linux written by
Fritz Elfert. The driver was written by Karsten Keil.
Good, your card is supported so whats next?
Kernel 2.0.36 (the stable kernel) have added ISDN support for much more cards and drivers by adding HiSAX as part of it. But, HiSAX is still a work in progress, can be even a new version every day. So, what should you do?
The HiSAX development and new versions are locates on SuSE FTP area. What you need to do is ftp
to ftp.suse.com and go to /pub/isdn4linux/v2.0/isdn and get the latest one. They are uploaded as isdn-xxxxxx.tar.gz where xxxxxx stands for the date (16-02-99 is the latest, isdn-9902161200.tar.gz).
Good now you have the lates ISDN support available for your machine but it is not compiled onto your kernel...
Yes a kernel compilation is needed :-) . Don't be worried to much. The kernel-HOWTO can help you a lot to understand how to compile the
kernel.
If you downloded isdn-xxxxxx.tar.gz newer than 15.11.98 than you should open it on your /usr/src directory and it will be opened to the right directories updating your
linux source.
What should you check for compilation onto the kernel when compiling?
Section "Code Maturity level options":
Prompt for development and/or incomplete code/drivers: No
Section "General Setup":
Networking support: Yes
Section "Networking options":
TCP/IP networking: Yes
all other items are up to you.
Section "Network device support":
Network device support: Yes
PPP (point-to-point) support: Yes
all other items are up to you
Section ISDN subsystem":
<M> ISDN support (NOTE: if your card is PnP you need to
answer M for Module other wise it will not work)
<Y> Support synchronous PPP (NEW)
<Y> Use VJ compression with synchronous PPP (NEW)
<Y> Support Audio via ISDN (NEW)
<Y> Support generic MP (RFC 1717) (NEW)
<M> HiSAX Siemens ChipSet driver Support (NEW)
<Y> HiSAX Support for Euro/DSS1 (NEW)
This is the ISDN protocol used in my country
<M> HiSAX Support for Teles 16.3c (NEW)
Now you need to mark your card. If your card is PnP you need to mark it with M as Module!
I have Teles 16.3c PnP so i marked it as a module
I assume now that you have compiled your kernel succesfully. Again if you encounter any problams go read
the The kernel-HOWTO.
The kernel has the ISDN support, this stage of detecting your card is not finished yet.
Now you have to go to read our "Howto use the HiSAX ISDN Driver" which is also found on site.
Basiclly it is explaining how to load the HiSAX driver and which settings are needed for different cards. If you have a PnP
card you will also need to use pnpdump utility and configure /etc/isapnp.conf
so Linux will know to load your card succesfully.
I will give an example with my experience with my Teles 16.3c PnP card:
As root:
Obtaining the ISDN4K-UTILS software:
No we are not done :-) . Your card is detected but you need the utilities to get it working.
Here comes to our help ISDN4k-UTILS an ISDN link-level module for Linux written by Fritz Elfert.
You need to obtain the latest isdn-4k-utils also from SuSE ftp site
at /pub/isdn4linux/v2.1/isdn4k-utils. The isdn4k-utils-xxxxxx.tar.gz
IS NOT included in your kernel source. The latest is 26-01-99 as this document is being written.
You need to untar it and read the README and INSTALL instructions.
isdn4k-utils providing Linux the software for operating your ISDN card.
What is left to be done after your compilation was succesful?
NOTE: This is necessery if you are using an old ISDN4K-Utils. Newer versions currected this problam.
You need to see that all of the devices were created under /dev. If not, you need
to run the script which makes them and is located under [the directory you opened
isdn4k-utils-xxxxxx.tar.gz]/isdn4k-utils/scripts. The script is called makedev.sh .
Look if you have /dev/isdnctrl, if not make a symbolic link:
$ln -s isdnctrl0 isdnctrl
This will add a symbolic link from isdnctrl -> isdnctrl0.
Please refer to the documentation that is part of the isdn4k-utils for all of the details.
After isdn4k-utils was compiled succesfully:
You need to add / edit some files and put information that is needed inorder to connect to your ISP (Internet
Service Provider).
/etc/resolv.conf: Here you will need to enter your ISP Hostname and the DNS servers.
search (your isp host name)
nameserver (DNS server of your ISP)
/etc/ppp/ioptions: Make a file name IOPTIONS for Isdn OPTIONS.
/etc/ppp/pap-secrets: if your isp using pap for authenticating you will have to edit this file and enter your info.
#PAP authentication file: /etc/ppp/pap-secrets
#This file should have a permission of 600.
# ~#chmod 600 /etc/ppp/pap-secrets
# Username      Server      Password      IP address
"youruser"       *                "yourpass"
Make a script to call your isp. Look at ISDNCTRL man page