GSM

Overview

GSM (Global System for Mobile Communications, originally Groupe Spécial Mobile), is a standard developed by the European Telecommunications Standards Institute (ETSI) to describe protocols for second generation (2G) digital cellular networks used by mobile phones. It is the de facto global standard for mobile communications with over 90% market share, and is available in over 219 countries and territories.

The GSM standard was developed as a replacement for first generation (1G) analog cellular networks, and originally described a digital, circuit-switched network optimized for full duplex voice telephony. This was expanded over time to include data communications, first by circuit-switched transport, then packet data transport via GPRS (General Packet Radio Services) and EDGE (Enhanced Data rates for GSM Evolution or EGPRS).

Subsequently, the 3GPP developed third generation (3G) UMTS standards followed by fourth generation (4G) LTE Advanced standards, which are not part of the ETSI GSM standard.

"GSM" is a trademark owned by the GSM Association. It may also refer to the initially most common voice codec used, Full Rate.

Sangoma SDK allows us to use this technology using Sangoma GSM card (W400).

Sangoma SDK allows a user to execute GSM commands like:

  • Place GSM Call

  • Send SMS

  • View GSM port statistics and status

 

Operation

One can perform following gsm operations using Sangoma SDK:

Sample GSM application mainly monitors events received on span configured by user and take appropriate action as shown in the diagram below:

 

  •  Once UP/START event is received this application mainly answer the call and launch a media thread that will perform I/O operation.
     NOTE: Media thread mainly read raw data from the channel on which call is being received and write the same on to the channel for transmitting to other end.

  • Application also provides user with a menu in order to perform following operations:

    • Place a GSM call.

    • Send SMS.

    • View GSM port statistics and status.

    • Exit from application.

 

Build and Run sample GSM application

   For WINDOWS

  1. Change directory to applications\sample_gsm\sample_gsm\.

  2. Open sample_gsm 2010 Visual Studio Solution File.

  3. Run: Rebuild Project

    1. Note do not try to run gsm application from Visual Studio

    2. It needs a console.

    3. Exe file is located: Debug\sample_gsm.exe

  4. Open cmd shell in Administrator mode.

  5. Run: applications\sample_gsm\sample_gsm\Debug\sample_gsm.exe

 

   For LINUX

  1. Change directory to applications/sample_gsm/

  2. Run following commands:

    1. ./configure

    2. make

    3. ./run_sample_gsm

 
NOTE: For much information w.r.t. gsm application and its configuration please go through the README file as present in applications\sample_gsm\README.

Return to Documentation Home I Return to Sangoma Support