Page tree
Skip to end of metadata
Go to start of metadata

Server and Operating system Selection

Selecting your server

Sangoma cards are compatible with most commercially available servers and motherboards on the market.
Our cards are available in both PCI and PCI express versions and are backwards compatible (i.e. 16x, 8x, 4x, 2x)
Also available are different size brackets for 1U and 2U server form factors.

For Sangoma analog card installations using FXS modules and/or remora expansion boards, please verify that your server has available molex power connection from internal power supply

Selecting your Linux Operating system

Sangoma cards are compatible with most official Linux distributions and kernels (i.e. CentOS, Debian, Ubuntu) 32 and 64bit.
Sangoma recommends the use of CentOS as our R&D and QA departments use this distribution on a frequent basis.

Virtual environments are not supported


Below are instructions for CentOS Installation.  If you would like use a different Linux Distro, please visit the appropriate online resources.

  1. Download latest CentOS distribution:
  2. After downloading the CentOS ISO, simply burn the image on CD/DVD using your choice of burning utility
  3. Boot your server with the CD/DVD containing your CentOS ISO.  Verify your BIOS settings allow for Boot from CD/DVD ROM drive
  4. Follow the on-screen prompts to Install your new operating system. You may wish to visit some online step-by-step tutorials (google:))
  5. Once completed, remove the CD/DVD from your server and reboot your server and log in to your freshly installed operating system


Preparing your Operating system for software packages

After installing your Linux operating system, you must prepare your server with the following software requirements before continuing. 

To Install required system dependencies simply copy and paste the below string directly into your Linux command line. The string will automatically download and install missing dependencies on your server.  

You must have internet connection for this step


Select only the option that applies to your environment:

CentOS (RedHat distros)

yum -y install kernel-devel-$(uname -r) libtool* make gcc patch perl bison flex-devel gcc-c++ ncurses-devel flex libtermcap-devel autoconf* automake* autoconf libxml2-devel cmake


apt-get -y install gcc g++ automake autoconf libtool make libncurses5-dev flex bison patch libtool autoconf linux-headers-$(uname -r) libxml2-dev cmake


Download Software Packages

The sources for the following three packages are required:

  • Asterisk  (pbx software)
  • DAHDI    (signaling stack)
  • libPRI      (required only for PRI/BRI cards) 


  1. Navigate to the /usr/src/ directory which will be used to store the downloaded packages. To do this type the following in your Linux command line, then press <enter>:
    1. -> cd /usr/src
  2. Download Asterisk, DAHDI and LibPRI by copy & pasting the following (without the quotes ""), then press <enter>:
    1. asterisk: " wget "
    2. DAHDI:    " wget "
    3. LibPRI:    " wget "

Install Software Packages

The following instructions will guide you to un-compress the downloaded '.tgz' files and install using make command.

Verify you are still inside the /usr/src/ directory by typing 'pwd' in the Linux command line. If you are not, navigate inside by typing 'cd /usr/src/' then press <enter>


  1. DAHDI Installation
    -> Untar the download DAHDI software package, and then install. Type the following in the /usr/src/ directory:
    1. tar xvzf dahdi-linux-complete-<version>.tgz
    2. cd dahdi-linux-complete-<version>
    3. make
    4. make install
    5. make config


  2. LibPRI Installation (required for PRI/BRI only)
    -> Untar the download DAHDI software package, and then install. Type the following in the /usr/src/ directory: 
    1. tar xvfz libpri-<version>.tgz
    2. cd libpri-<version>
    3. make
    4. make install

  3. Asterisk Installation
    -> Untar the download Asterisk software package, and then install. Type the following in the /usr/src/ directory:
    1. tar xvfz asterisk-<version>.tgz
    2. cd asterisk-<version>
    3. ./configure
    4. make
    5. make install
    6. make samples (will create new configure files and erase any previous configuration)

      If you are upgrading from a previous version of Asterisk make sure that old asterisk modules are removed from /usr/lib/asterisk/modules by typing the following:

      cd /usr/lib/asterisk
      mv modules modules.old 

      If configure fails, you may have to install dependencies. In contrib/scripts, do ./install_prereq install


If there are any error messages while trying the above commands, your system is missing system dependencies

Installing Sangoma Driver (called 'Wanpipe')

The following instructions will guide you through the Installation of the Sangoma Wanpipe driver on your server that contains all required software pacakges already installed(i.e. Asterisk, DAHDI, Libpri).

  1. Download the latest official release of the Sangoma Wanpipe Driver
    1. Copy & Paste the line,without the quotes, into your Linux command line in the /usr/src/ directory.This will automatically download from the internet.
      -> "  wget "

      If your server does not have internet access simply download the driver on another machine with internet access, then transfer the downloaded .tgz package to /usr/src on this serer.

  2. Un-compress the download Wanpipe driver (.tgz file) located in /usr/src
    1. tar xvfz wanpipe-current.tgz
    2. cd wanpipe-<version>/


  3. Install the Sangoma Wanpipe driver by typing the following in the newly created wanpipe-<version> directory:
     ./Setup install

    For A116 Customers: please use ./Setup install --dahdi-chunk=40  

    You will be guided through a series of prompts through the rest of the installation process.

    You will notice the Wanpipe driver installation splash screen next. 

    Press 'y' to continue

    You will be presented with a dependency check with pass/fail results.  If there are any failures, you must exist and install missing dependency manually.
    Press [enter] to continue

    Press [enter] on the following screen for default kernel source location.  

    If there are any error messages that result, that means you are missing your Linux kernel development packages.
    This also means that during the 'Preparing your Operating system for software packages' step above has failed to download your kernel-devel packages. If this happens you must search online for the kernel-devel packages for your kernel, then download and install using (rpm -i...)

    Press [enter] to continue

    Next you will be presented with 7 different options on how to install the Wanpipe driver.

    Select option 2 to install the Wanpipe driver for Asterisk

    You will be asked to provide the location of your DAHDI software package. 
    If you have downloaded and installed DAHDI in /usr/src/, simply press the number pertaining to the location.
    In the example below, Press 1.

    In this example, the user has dahdi version 2.7.0 installed on their system

    If your DAHDI installation lives in another directory, press 'm' then manually enter the full path
    If you have multiple DAHDI versions on your system, select the correct one.
    (to find out which version of dahdi is installed on your system simply type dahdi_cfg -vvv command in another Linux window)

    The Wanpipe driver will now start to compile on your Linux operating system.

    Press 'y' to proceed

    Press [enter] to continue

    Press [enter] to continue

    he example above is for an a108 8 port E1/T1 card 

    continue to press [enter] as seen below

    press [enter] to continue

    You should end up with the following screen. If you see error messages, then you are missing system dependencies.  Go to your Linux header/src build directory, and do make menuconfig, then go back to the Setup script and hit enter

    continue to press [enter] when asked.

    Press 'y' to install Wanpipe start scripts

    The following screen indicates that the Wanpipe driver has completed installation on your server and is now ready to start Configuring your Sangoma hardware on your system

    Press 'y' to configure all Sangoma hardware installed on server. 
    If you have installed Wanpipe to upgrade from a previous version, you must exit installation now because if you continue you will overwrite all previous configuration 

    If you have not installed your Sangoma hardware yet, you can exit the installation, install hardware and continue by typing wancfg_dahdi command to start configuration script.

     your Sangoma hardware was NOT detected by your system, or if the Wanpipe driver failed to install properly, the following screen will appear

    The on-screen prompts that present next will be unique to your Sangoma hardware and specific to your telco settings.
    We will not show these screens here, but if you wish to see more details on what screens would show next, please visit the specific wancfg_dahdi pages for details

    After you have completed the configuration section of your Sangoma hardware, the following summary screen will be presented.

    Example from configuration of 1 analog card

    Select option 3 below to save and stop Asterisk & Wanpipe (if already running). Any new configuration will apply only after restarting

     If you see the following screen, simply press option 2 (YES) to proceed

    Select option 1 to start Wanpipe on system boot. If your server ever reboots unintentionally, you will want the driver to automatically start in order to have your server back in production without manual intervention

    Select option 1 (YES) to have 'dahdi_cfg' run after the Wanpipe driver starts. This step configures on Wanpipe ports for dahdi

    You have now fully installed and configured your Sangoma Hardware for your Asterisk server!

    To verify that you have successfully installed the Sangoma Wanpipe driver by typing the following command in your Linux command line:
    -> wanrouter hwprobe

    You should see details of your Sangoma hardware auto-detected in your system.  
    If you see an error message, this means the Wanpipe driver was NOT installed correctly.  
    Please open /var/log/messages file for error details 


The Installation process of the Sangoma Wanpipe driver also takes care of configuring your card, which is the last part of the above.
For whatever reason, if you wish to configure/re-configuration your Sangoma Card(s), run the following command in your Linux command line:

-> wancfg_dahdi

This command will configure all your Sangoma cards in your system.
Simply follow the prompts and answer all the questions. 

 After running the wancfg_dahdi configuraiton tool, the following files will have been created:

  • Physical layer 
    • /etc/wanpipe/wanpipeX.conf  (x represents each port of your card. For analog cards, you will only see 1 for the entire card)
    • /etc/wanpipe/wanrouter.rc  (The Sangoma driver looks into this file to begin loading each port for your card(s)
  • DAHDI Signaling layer 
    • /etc/dahdi/system.conf 
  • Asterisk related files
    • /etc/asterisk/chan_dahdi.conf  (channel details for your Sangoma card)
      • used to tell asterisk where inbound calls should go, using 'contexts'
      • used to tell asterisk where outbound calls should go, using 'groups'



  1. To start the Sangoma driver, which also starts your Sangoma card(s) run the following command on your Linux command line:
    -> wanrouter start 

    card control commands start with 'wanrouter'


    Immediately after running this command, you will see on-screen output of all the ports (i.e. wanpipe1, wanpipe2..etc) starting on your card.
    You will also see your ports plugging into the DAHDI signaling layer.
     If you see errors occurring, investigate the /var/log/messages file.


  2. Configuring the DAHDI Module
    After your Sangoma card has started and is plugged into DAHDI, you will need to configure DAHDI by typing the following command on your Linux command line:

    -> dahdi_cfg 

     You do not need to run 'dahdi_cfg' if you have selected YES during the Wanpipe driver installation process (or when using the 'wancfg_dahdi' configuration script. In this case the 'wanrouter start' command will take care of doing this automatically


  3. Start Asterisk by typing the following command in your Linux command line
    -> asterisk

  4. Log into your Asterisk CLI and run some basic commands to verify your system is functioning properly.
    Type the following in your Linux command Line:
    -> asterisk -rvvvvvvvvvv       (each 'v' adds verbosity to what you see when logged in to the CLI)
    1. Type the following CLI command to verify all your channels (dahdi channels) are loaded into asterisk:
      -> dahdi show channels

      If you do not see any of your channels after typing the above command, verify chan_dahdi is loaded by typing the following command inside the Asterisk CLI:
      -> module load

      If there is an error message while trying to load, visit /var/log/asterisk/messages, or /var/log/asterisk/full for the reason. 

  5. For PRI/BRI cards only, run the following command to check the status of your pri/bri spans:
    -> pri show spans 

  • No labels


  1. Debian 8 updated and kernel version 3.16 is being used. DAHDI, libpri and Asterisk 13 have all been installed and are operational. I have also installed the libraries and they have been updated as well.

    While trying to run "./Setup install" I received the following errors:


    ERROR: Failed to upgrade WANPIPE device drivers!

    Make sure that following directories exist:





    so I created them manually and reran "./Setup install" and received the following error:


    /usr/src/wanpipe-7.0.23/kdrvtmp/af_wanpipe_src.c:991:2: error: implicit declaration of function ‘memcpy_from_msg’ [-Werror=implicit-function-declaration]

      err = memcpy_from_msg(skb_put(skb,len), msg, len);


    cc1: some warnings being treated as errors

    /usr/src/linux-headers-3.16.0-4-common/scripts/ recipe for target '/usr/src/wanpipe-7.0.23/kdrvtmp/af_wanpipe_src.o' failed

    make[4]: *** [/usr/src/wanpipe-7.0.23/kdrvtmp/af_wanpipe_src.o] Error 1

    /usr/src/linux-headers-3.16.0-4-common/Makefile:1354: recipe for target '_module_/usr/src/wanpipe-7.0.23/kdrvtmp' failed

    make[3]: *** [_module_/usr/src/wanpipe-7.0.23/kdrvtmp] Error 2

    Makefile:181: recipe for target 'sub-make' failed

    make[2]: *** [sub-make] Error 2

    Makefile:8: recipe for target 'all' failed

    make[1]: *** [all] Error 2

    make[1]: Leaving directory '/usr/src/linux-headers-3.16.0-4-amd64'

    Makefile:33: recipe for target 'all' failed

    make: *** [all] Error 2


    What do I need to do to successfully make this step work?

    Thanks for any assistance you can provide.


  2. it failed with me to compile on debian 8.8 x64

    does driver support kernel 3.x ??