Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
project:asterisk-sarge [2009/08/29 22:34]
micha Page moved and renamed from project:asterisk-sarge:index to project:asterisk-sarge
project:asterisk-sarge [2018/07/25 23:30] (current)
micha
Line 1: Line 1:
 +
 +===== Asterisk, mISDN, chan_capi and Debian Sarge HOWTO =====
 +
 +//​[[micha@dipper.info|Michael Dipper]] 03.11.2005//​
 +
 +**//Please note that this page hasn't been updated for a while and most probably will show outdated information. It is mainly kept here for reference.//​**
 +
 +This documents briefly describes how to get the Asterisk PBX running based on
 +a CAPI 2.0 stack on top of mISDN drivers together with a stock Debian Sarge 
 +installation.
 +The focus is to use debian provided packages as much as possible.
 +
 +Unfortunately latest mISDN drivers do not run with the stock debian kernel 2.6.8. ​
 +Therefore we first install an updated kernel from 
 +[[http://​www.backports.org]].
 +
 +Add backports.org sources to /​etc/​apt/​sources.list:​
 +
 +  deb http://​www.backports.org/​debian/​ sarge-backports main
 +
 +Deactivate packages to be fetched from backports.org by default, we will selectively choose packets from there. ​
 +Put in /​etc/​apt/​preferences:​
 +
 +  Package: *
 +  Pin: release a=sarge-backports
 +  Pin-Priority:​ 200
 +
 +Install the new kernel and reboot (currently it seems to be more stable to
 +use the non-SMP kernel).
 +
 +  apt-get update
 +  apt-get upgrade
 +  apt-get -t sarge-backports install linux-image-2.6.15-1-686
 +  apt-get install linux-source-2.6.15 ​
 +
 +Prepare the kernel sources for building mISDN:
 +
 +  cd /​usr/​src ​
 +  tar xvpjf linux-source-2.6.15.tar.bz2 ​
 +  ln -s linux-source-2.6.15 linux-2.6 ​
 +  ln -s linux-2.6 linux 
 +  ln -s /​usr/​src/​linux-2.6 /​lib/​modules/​2.6.15-1-686/​build ​
 +
 +  cd /​usr/​src/​linux ​
 +  cp /​boot/​config-2.6.15-1-686 ./​.config ​
 +  make oldconfig ​
 +  echo -1-686 > .extraversion
 +
 +Prepare to build mISDN modules and get the latest sources from CVS: 
 +
 +  cd /​usr/​local/​src
 +  export CVSROOT=:​pserver:​guest:​readonly@cvs.isdn4linux.de:/​i4ldev ​
 +  cvs login 
 +  cvs co -r mqueue mISDN 
 +
 +Now patch the kernel sources:
 +
 +  cd mISDN
 +  ./std2kern
 +
 +Activate the mISDN modules in the kernel config by making the following settings:
 +
 +  cd /​usr/​src/​linux
 +  make prepare
 +
 +  Support modular ISDN driver (MISDN_DRV) [N/m/?] (NEW) m
 +    Enable memory leak debug for mISDN (MISDN_MEMDEBUG) [N/y/?] (NEW) n
 +    Support for AVM Fritz!Cards (MISDN_AVM_FRITZ) [N/y/?] (NEW) y
 +    Support for HFC PCI cards (MISDN_HFCPCI) [N/y/?] (NEW) y
 +    Support for HFC multiport cards (HFC-4S/​8S/​E1) (MISDN_HFCMULTI) [N/y/?] (NEW) y
 +    HFC multiport driver with memory mapped IO (HFCMULTI_PCIMEM) [N/y/?] (NEW) y
 +    Support for HFC-S USB based TAs (MISDN_HFCUSB) [N/y/?] (NEW) y
 +    Support for Sedlbauer Speedfax+ (MISDN_SPEEDFAX) [N/y/?] (NEW) y
 +    Support for Winbond 6692 based cards (MISDN_W6692) [N/y/?] (NEW) y
 +    Digital Audio Processing of transparent data (MISDN_DSP) [N/y/?] (NEW) y
 +
 +Build the mISDN modules and install them:
 +
 +  make scripts
 +  make SUBDIRS=drivers/​isdn/​hardware/​mISDN modules
 +  make SUBDIRS=drivers/​isdn/​hardware/​mISDN modules_install
 +
 +Delete /​etc/​init.d/​misdn. We will load misdn drivers from 
 +/​etc/​default/​capiutils
 +
 +Therefore add to /​etc/​default/​capiutils:​
 +
 +  MISDN_MODULES="​mISDN_core mISDN_l1 mISDN_l2 l3udss1 mISDN_capi"​
 +  MISDN_DRIVER="​hfcpci protocol=0x2"​
 +
 +Reboot and check for proper detection and initialization of your card:
 +
 +  mISDNd: kernel daemon started
 +  mISDNd: test event done
 +  mISDN: DSS1 Rev. 1.29.2.12
 +  mISDN_dsp: Audio DSP  Rev. 1.10.2.10 (debug=0xf)
 +  mISDN_dsp: DSP clocks every 64 samples. This equals 8 jiffies.
 +  mISDN Capi 2.0 driver file version 1.14.2.6
 +  mISDN: HFC-PCI driver Rev. 1.39.2.16
 +  mISDN: HFC-PCI card manufacturer:​ CCD/​Billion/​Asuscom card name: 2BD0
 +  mISDNStackd started for id(00000100)
 +  mISDNStackd started for id(10010100)
 +  mISDNStackd started for id(10020100)
 +  mISDN: HFC-PCI driver Rev. 1.39.2.16
 +
 +If you want to run Asterisk as  a user "​asterisk"​ (recommended) be sure to 
 +fix the permissions on all directories and devices.
 +
 +  chown --recursive asterisk:​asterisk /​var/​lib/​asterisk
 +  chown --recursive asterisk:​asterisk /​var/​log/​asterisk
 +  chown --recursive asterisk:​asterisk /​var/​run/​asterisk
 +  chown --recursive asterisk:​asterisk /​var/​spool/​asterisk
 +  chown --recursive asterisk:​asterisk /dev/mISDN
 +  chmod --recursive u=rwX,​g=rX,​o= /​var/​lib/​asterisk
 +  chmod --recursive u=rwX,​g=rX,​o= /​var/​log/​asterisk
 +  chmod --recursive u=rwX,​g=rX,​o= /​var/​run/​asterisk
 +  chmod --recursive u=rwX,​g=rX,​o= /​var/​spool/​asterisk
 +  chmod --recursive u=rwX,​g=rX,​o= /dev/mISDN
 +
 +  chown --recursive root:​asterisk /​etc/​asterisk
 +  chmod --recursive u=rwX,​g=rX,​o= /​etc/​asterisk ​
 +
 +Your ISDN cards are defined in /​etc/​misdn-init.conf. The following example shows a
 +configuration for two HFC-based cards.
 +The first card is running in TE-mode (for connecting to the ISDN provider), ​
 +the second one in NT-mode (for connecting phones).
 +
 +  #
 +  # Configuration file for your misdn hardware
 +  #
 +  # Usage: /​etc/​init.d/​misdn-init start|stop|restart|config|scan|help
 +  #
 +  #
 +  # Card Settings
 +  #
 +  # Syntax: card=<​number>,<​type>​[,<​option>​...]
 +  #
 +  #    <​number> ​  count your cards beginning with 1
 +  #    <​type> ​    ​either 0x1,0x4 or 0x8 for your hfcmulti hardware,
 +  #               or the name of your card driver module.
 +  #    <​option> ​  ​ulaw ​      - uLaw (instead of aLaw)
 +  #               ​dtmf ​      - enable DTMF detection on all B-channels
 +  #               ​pcm_slave ​ - set PCM bus into slave mode
 +  #
 +  card=1,​hfcpci,​pcm_slave
 +  card=2,​hfcpci
 +  ​
 +Avoid HiSax modules from being loaded. To achieve this, add the following ​
 +lines to /​etc/​hotplug/​blacklist.d/​capiutils:​
 +
 +  hisax
 +  hisax_fcpcipnp
 +
 +Get the latest chan_capi from http://​sourceforge.net/​projects/​chan-capi. In future
 +versions bristuffed asterisk packages will include chan_capi but currently this
 +is not working properly.
 +
 +  apt-get install capiutils libcapi20-dev
 +  cd /​usr/​local/​src
 +  tar xvpzf chan_capi-cm-0.6.3.tar.gz ​
 +  cd chan-capi
 +  make
 +  make install
 +
 +Do not forget to edit /​etc/​asterisk/​capi.conf <br>
 +Check for correctly loaded capi within asterisk:
 +
 +  asterisk -r
 +  capi info
 +
 +Now you should be done :) In case you have any additions of corrections to this howto,
 +feel free to contact me!
 +
 +