GNU Radio blocks for receiving/transmitting GSM
Go to file
Vadim Yanitskiy 5394c6012d gsm_trx_burst_if: allow to customize the bind address
Pleviously remote address for DATA interface was also used as the
bind address, what is definitely wrong. Let's change the API a bit
in order to allow one to specify a custom bind address.

Change-Id: I6e5f7b7119ac454217b8dd04f9ee0dd3b23972b6
2018-08-10 16:38:59 +07:00
apps trx/ close socket in destructor 2018-08-10 16:38:59 +07:00
cmake Simplify cmake checks related to libosmocore 2018-06-19 12:07:28 +02:00
dists/debian Updated changelog for Ubuntu's PPA 2017-09-11 10:38:40 +02:00
docs Changes so that rst2man presence is optional and not mandatory to compile/install gr-gsm 2017-09-23 21:38:08 +02:00
examples@32727fc905 Updated examples pointer 2017-12-01 12:04:39 +01:00
grc gsm_trx_burst_if: allow to customize the bind address 2018-08-10 16:38:59 +07:00
hier_blocks GRC file for gsm gmsk mod 2017-09-27 21:57:08 +02:00
include/grgsm gsm_trx_burst_if: allow to customize the bind address 2018-08-10 16:38:59 +07:00
lib gsm_trx_burst_if: allow to customize the bind address 2018-08-10 16:38:59 +07:00
python gsm_trx_burst_if: allow to customize the bind address 2018-08-10 16:38:59 +07:00
swig Fix includes after moving trx_burst_if 2018-05-06 22:23:06 +02:00
test_data@e2e5b44bc2 Add tch_f_decoder tests 2018-04-06 15:18:26 +02:00
tests tests: Fix Debian and Kali dockerfiles 2018-07-28 13:25:00 +02:00
.gitignore Updates .gitignore and examples pointer 2017-11-11 11:22:23 +01:00
.gitmodules Added submodules for examples and test data 2015-08-31 17:05:40 +02:00
.travis.yml Do not test with debtest-grgsm-package container 2018-03-30 22:34:52 +02:00
CMakeLists.txt Simplify cmake checks related to libosmocore 2018-06-19 12:07:28 +02:00
COPYING Big update of copyright statements so they can be automatically processed to produce debian/copyright file 2017-08-23 16:02:19 +02:00
LICENSE Added separate file for short license notice (that is used for example by gr_modtool to add these notices) and longer Copying file with full license. 2014-12-15 09:03:49 +01:00 Added more copyright holders 2018-03-22 16:12:03 +01:00 Keep the old mailing list for now 2018-07-12 10:46:39 +02:00 Changed arrangment of directories and names of files for testing 2016-04-11 22:20:35 +02:00

The gr-gsm project

The gr-gsm project is based on the gsm-receiver written by Piotr Krysik (also the main author of gr-gsm) for the Airprobe project.

The aim is to provide set of tools for receiving information transmitted by GSM equipment/devices.

Installation and usage

Please see project's wiki for information on installation and usage of gr-gsm.

Mailing list

Current gr-gsm project's mailing list address is following:

Mailing list is a place for general discussions, questions about the usage and installation. In case of problem with installation please try to provide full information that will help reproducing it. Minimum information should contain:

  • operating system with version,
  • kind of installation (how gr-gsm and its dependencies were installed: with pybombs, from distibution's repository, compiled manually)
  • version of gnuradio (it can be obtained with: gnuradio-companion --version)
  • error messages (in case of pybombs installation they can be obtained after switching it to verbous mode with -v option).

To join the group with any e-mail address, use this link:!forum/gr-gsm/join


New features are accepted through github's pull requests. When creating pull request try to make it adress one topic (addition of a feature x, correction of bug y).

If you wish to develop something for gr-gsm but don't know exactly what, then look for issues with label "Enhancement". Select one that you feel you are able to complete. After that claim it by commenting in the comment section of the issue. If there is any additional information about gr-gsm needed by you to make completing the task easier - just ask.


Short presentation of Airprobe'like application of gr-gsm:


Piotr Krysik <ptrkrysik (at)> - main author and project maintainer

Roman Khassraf <rkhassraf (at)> - blocks for demultiplexing and decoding of voice channels, decryption block supporting all ciphers used in GSM, blocks for storing and reading GSM bursts, project planning and user support

Vadim Yanitskiy <axilirator (at)> - control and data interface for the transceiver, grgsm_trx application

Vasil Velichkov <vvvelichkov (at)> - automatic compilation of grc applications, fixes and user support

Pieter Robyns <pieter.robyns (at)> - block reversing channel hopping


This work is built upon the efforts made by many people to gather knowledge of GSM.

First very significant effort of public research into GSM and its security vulnerabilities was The Hacker's Choice GSM SCANNER PROJECT. One of the results of this project was creation of a software GSM receiver by Tvoid - gsm-tvoid - which was was the most important predecessor of gr-gsm and of gsm-receiver from the Airprobe project.

Gr-gsm wouldn't be also possible without help and inspiration by Harald Welte, Dieter Spaar and Sylvain Munaut.

Special thanks to Pawel Koszut who generously lent his USRP1 to the author of gr-gsm (Piotr Krysik) in 2007-2010.