Project

General

Profile

Actions

MISDN Getting Started

Introduction

mISDN is a split kernel / userspace architecture.

The kernel handles
  • hardware device drivers
  • PHY/L1 related bits
  • [optionally] layer2 like Q.921/LAPD on D-channel, HDLC or X.75slp in the B-channel
  • [optionally] audio processing of B-channels, such as conferencing, DTMF detection, ...
The userspace handles
  • configuration of the kernel code / stack
  • any layers not implemented in the kernel
  • Layer3 (Q.931) is always handled in userspace

The interface between kernel and userspace is based around AF_ISDN sockets. Those sockets carry primitives between the layers.

The userspace part is called mISDNuser and consists of libraries (libmisdn.so and libsuppserv.so) and some utilities + examples.

An introduction can be found in a presentation by Karsten Keil at http://data.guug.de/slides/lk2008/lk2008-mISDN-slides.pdf

Availability

The kernel part of mISDN is still present in mainline kernels today (as of 5.14), and also built by default as kernel modules by Debian 11.

However, not all drivers are present, specifically the XHFC driver is currently only available at https://github.com/ISDN4Linux/mISDN

mISDNuser is available from https://github.com/ISDN4Linux/mISDNuser

Supported Hardware

As of kernel 5.15, the following hardwre is supported in mainline:

First Steps

Assuming you've installed the hardware, have a kernel with mISDN + driver support and built the mISDNuser tools, you can use misdn_info to list the installed cards:

tools/misdn_info

$ sudo ./misdn_info

Found 1 port
  Port  0 'HFC-S_USB.1':     TE/NT-mode BRI S/T (for phone lines & phones)
                              2 B-channels: 1-2
                                B-protocols: RAW HDLC X75slp

tools/misdn_log

misdn_log is a tracer/logger of signaling related activity in mISDN. You can also use it with the -w flag to store pcap files for later analysis by wireshark.

examples/misdntestlayer3

Assuming further that you are operating your adapter in TE mode and are connecte to some PBX / softswitch that can route inbound voice calls to it, you can use misdntestlayer3 as follows:

$ sudo ./misdntestlayer3 -v 3

If you then call any MSN routed to this S/T interface, it will be immediately answered and you will get a playback of a fixed audio recordong (supposedly by Karsten Keil, the developer of the tool).

Updated by WIMPy 7 months ago · 3 revisions

Add picture from clipboard (Maximum size: 48.8 MB)