Freeswitch to VOIP GSM Gateways

Freeswitch to VOIP GSM Gateways
07 May 2016

logo  FreeSwitch

Minimum/Recommended System Requirements

  • 64-bit recommended ( Ubuntu 14.04 LTS )
  • 2GB RAM (4GB recommended)
  • 50GB of Disk Space
  • Unlock Dongles
  • SBO for Bandwidth Optimization

System requirements depend on your deployment needs. We recommend you plan for 50% duty cycle.

Ubuntu 14.04 LTS

Download and Install :

Freeswitch / GUI Installation Script

  1. wget
  2. chmod 755
  3. ./ install-both auto

During the install it will ask you to press continue after verifying that the command ran successfully this is usually the case so you can simply tell it to continue. The install also asks several questions.

Ubuntu LTS 14.04 Server 64 bit

Before building GSMopen module do:

1.apt-get install gsm-utils
2.apt-get install libgsmme-dev
3. apt-get install usb-modeswitch-data usb-modeswitch


  1. cd /usr/src/freeswitch/src/mod/endpoints/mod_gsmopen/libctb-0.16/build
  2. make DEBUG=0 GPIB=0
  3. make DEBUG=0 GPIB=0 install
  4. ldconfig

You may need to reboot to have your dongle recognized

Build and Install

After installing prerequisites (see before), go into mod_gsmopen directory and type:

  1. cd /usr/src/freeswitch/src/mod/endpoints/mod_gsmopen/
  2. make clean
  3. make install

Configuration File

Install and edit the gsmopen configuration file:

  1. cd /usr/src/freeswitch.trunk/src/mod/endpoints/mod_gsmopen/configs
  2. cp gsmopen.conf.xml /usr/local/freeswitch/conf/autoload_configs/
  3. vi /usr/local/freeswitch/conf/autoload_configs/gsmopen.conf.xml

Start FS and Load GSMopen

Launch FreeSWITCH:

  1. /usr/local/freeswitch/bin/freeswitch

Then activate debug logging in console and logfile, and load mod_gsmopen:

[email protected]> console loglevel 9
[email protected]> fsctl loglevel 9
[email protected]> load mod_gsmopen

Dialplan, and how to use GSMopen for outbound voice calls

Like other endpoints it’s easy to build up useful dialplans using GSMopen.

You can use the standard format with the interface name:


To call the number “3472665618” using the gsmopen interface named “interface1″

Dialplan snippet:

<!– dial 3472665618 via gsmopen using interface1 interface to go out –>
<extension name=”gsmopen”>
<condition field=”destination_number” expression=”^2909$”>
<action application=”bridge” data=”gsmopen/interface1/3472665618″/>

The “ANY” and “RR” interfaces, poor man interface grouping

You can also use the “ANY” or “RR” interfaces



Be sure the dongle has the “voice” capability unlocked, or unlock it with dc-unlocker ( ).


Intermittent failures
MORE THAN ONE DEVICE on an USB bus without dedicated power supply can have intermittent failure, because dongles can use all of the power! If you use more than one device, use an external (or many, cascaded), powered from the wall, USB hub. That’s perfectly OK.


SBO is a highly performance VOIP bandwidth optimization service which can reduce bandwidth usage in VOIP termination /Origination upto 85%, SBO not only provide you the security and stability also provide you  public and Dedicated IP so you can remotely access your GSM Gateway.