Page tree
Skip to end of metadata
Go to start of metadata
  • The below information is tailored for Windows 10 (or below) environments using Sangoma Telephony Cards for custom application
  • If your Windows Environment is using NetBorder Express (NBE), do not download or follow the below information since NBE is installed with its own driver support.

Driver Download  

OSSupported HardwareSupported ApplicationsChange LogDownload

Telephony Card Driver
(called 'Wanpipe')
Windows 10, 8, 7, XP
Windows Server 2012 R2

Architecture: 32bit and 64bit
  • T1/E1 Cards
    • A101, A102, A104, A108, A116
  • Tapping Cards
    • T116 16 Port T1/E1 Tapping Board (Rx Only)
  • Analog Cards (FXO/FXS)
    • A200, A400, B600
  • BRI Cards
    • A500
  • Serial Synchronous Cards
    • A142 dual-port, A144 quad-port
  • Mixed Mode Cards
    • B700
  • WAN IP Networking
  • Libsangoma (api)
  • ADSL - S518


click here for more information


SDK used to develop tapping applications: TDM SDK


Telephony Card Driver (called Wanpipe) instructions can be found here

Confirm Driver Installation

Open device manager and see that sangoma communications are listed as below:

Configure E1 as PRI

Right click on Sangoma hardware abstraction driver (Port 1) and choose properties and then Line properties.

Make sure the hardware configuration is as below (change as per your telco provider settings)

Also configure the first port as below

Interface Setup: Configuring RAW HDLC

1. Channels in the group:

Should be set to 31 for E1

If T1 specify up to 24 interfaces

If E1 specify up to 31 interfaces

2. Line mode HDLC/BitStream

Choose HDLC for now. To enable disable HDLC engine on this interface which must be enabled for WANPIPE routing. In HDLC framing mode, hardware decodes/encodes rx/tx streams with HDLC framing.  HDLC framing is used for all serial protocols such as PPP, Frame Relay, X25 ...

Transparent (Bitstreaming/Raw) Mode enabled
In Bitstreaming mode hardware disables HDLC engine.  So raw data is passed up to the API/Stack based on line baud rate.   On RX side, all bits on the line are passed up to the API in chunks of MTU size.  On TX side driver expect the user to continuously transmit data in chunks of MTU size.   


3. MTU

 the local interface Maximum Transfer Unit (for example,  'MTU=2048').

The MTU must be in multiples of channel numbers

           eg: T1 = 24 channels: 24*64  MTU=1544

               E1 = 31 channels: 31*80  MTU=2048


4. Operational Mode

Set Operation Mode to API                                        

API     - Interface Used by custom application


5. Idle char in HEX

Choose “FF” here


6. TDM Voice D-channel

Choose 16 for D channel on 16th timeslot, or any other channel if you want to use any customer specific channel here


Press Ok and then Ok. This will restart the drivers.

Check if E1 pri is connected or not

If the system is at remote site you need to make sure if cable is correctly placed.

Type following command to flash port 1

Wanpipemon –I wanpipe1_IF1 –c dled_blink

Tell the customer to plug the cable in that port

Then type in command below to make sure if E1 is synced or not.

Wanpipemon –I wanpipe1_IF1 –c Ta

If you are receiving LOS and open circuit tell the customer to change the E1 cable to cross if the cable is straight or vice versa

Running sample application


Sample_c.exe is useful utility to show RX and TX packets once wanpipe drivers are installed correctly.

However sample_c.exe needs to be compiled from its source depending on the hardware you run it on.

Compile sample_c


You need to have visual studio with c++ installed on the system where you are planning to run sample_c.exe. Open “<wanpipe installation dir>/api/sample_c” directory. You need to open sample.c in visual studio, doing so you need to have necessary include files mentioned in the visual studio environment. All the header files needed are present in “<wanpipe installation dir>/include/” directory.

You will find following files in include directory

#include "wanpipe_api_iface.h"

#include "wanpipe_api_hdr.h"

#include "sdla_te1.h"

#include "wanpipe_events.h"

#include "wanpipe_api_deprecated.h"

#include "wanpipe_api.h"

#include "wanpipe_events.h"

#include "wanec_api.h"

# include "wanec_iface_api.h"

#include "wanpipe_kernel.h"

After including all the necessary file make executable file sample_c.exe.


Execute sample_c.exe


Now you can execute the sample_c.exe file by going to directory



You can run the app directly over each channel and read/write custom data to a specific timeslot.

The interfaces that have HDLC enabled, will tx/rx HDLC frames. The interface that have HDLC disabled, will tx/rx raw bits with no encapsulation.


The command you need to type in to run sample_c.exe is:

sample_c.exe   -span 1 -chan 1 -rx2tx 


The Driver operation & debugging is described here: Operation

Firmware Update Instructions

Firmware Table

AFT Card ModelBin File DownloadChange LogRelease Date
More Info(2012-12-31)
A116v44More Info(2012-05-14)
A108v44More info(2010-08-24)
A104v45More info(2011-06-29)
A102v39More info(2012-09-28)
A101v39More info (2012-09-28)
A200v13More info(2009-12-10)
A400v11More info (2008-07-10)
A104(pmc framer)v26More info (2007-07-10)
A301v11More info(2007-07-10)
A14Xv08More info(2008-10-28)
A500v35More info(2009-04-30)
(cannot be updated)
 v03 More Info(2009-05-08)
B601v04More info  (2009-05-08)
B500v44More Info(2012-09-07)
B700v35More Info(2009-07-03)
U100v21More Info(2009-09-11)


Upgrade Steps

1) Go into the Windows Device Manager and right click on the PCI adapter and then select "Properties" from menu as shown below.


2) Once in the PCI adapter properties then go to the "Driver Mode Selection" tab, then change the driver mode from "Normal-default" to "Firmware Update" as shown below and then click "OK" to apply changes.


3) After you click "OK" then Windows will ask you if you want to restart the device click YES to this window as shown below.


4) Once the device is restarted then go to the abstraction driver associated with the PCI adapter and right click on it and select "Properties" as shown below.


5) Once in the abstraction driver properties then select the "AFT Firmware Update" tab and then click "Browse" to find the BIN file for the firmware on the C:\ as shown below. Now it is important to put it directly on the C drive as if there is a long path the update application will not work. Firmware list is below, just download the required firmware to the C:\. 



6) After the firmware has been selected click "Start Firmware Update..." and then the window below will appear and just wait for this to finish. Now once the firmware upgrade is complete the window will look like the one below and just hit enter on the key board.


7) Once this is done then right click on the PCI adapter again as shown in step #1 then go to the "Driver Mode Selection" tab and select the "Normal-default" mode again as shown below.


8) To check the firmware version go to the "Details" tab and you will see the version after "SUBSYS_" as shown below.


  • No labels