The mobile program

The mobile program is one of the various host (PC) based programs that you can use together with the layer1.*.bin firmware images inside the phone.

mobile is the most sophisticated OsmocomBB application so far. It implements most of the behavior of a regular GSM telephone, but is extended in many ways with features interesting to researchers.

Using mobile, you can e.g.

  • perform cell (re)selection according to TS 03.22
  • MM procedures like location updating, authentication, encryption
  • Establish MT and MO voice calls
  • Send and receive SMS
  • Perform supplementary services like USSD or call forwarding
  • hook it up to a PBX

In the spirit of all Osmocom projects, the user interface of mobile is based on text commands issued on the command line.

Prerequirements

It is assumed that you have already obtained the OsmocomBB source code and compiled both the host programs as well as the firmware (using a cross-compiler). Please see the general OsmocomBB GettingStarted for guidance.

Getting started with mobile

You need to follow the usual procedure using a CalypsoSerialCable, osmocon and the layer1.*.bin firmware image for your phone.

mobile working:

  • uses the configuration file ~/.osmocom/bb/osmocom.cfg
  • creates a vty (virtual terminal) on port 4247 (per default)
  • prints the debug messages to stdout
  • sends debug messages using GSMTAP

To start mobile:

cd osmocom-bb/src/host/layer23/src/mobile/
./mobile -i 127.0.0.1

Note: You should:

  • start mobile
  • start osmocon and load the layer1.*.bin firmware image for your phone
  • press the start button on your phone

To capture sent and received packets:

  • launch wireshark: $ nc -u -l -p 4729 > /dev/null & wireshark -k -i lo -f 'port 4729'

To connect to the vty:

telnet localhost 4247
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Welcome to the OsmocomBB Control interface
OsmocomBB>

Command Reference

mobile usage:

Usage: ./mobile
 Some help...
  -h --help		this text
  -i --gsmtap-ip	The destination IP used for GSMTAP.
  -v --vty-port		The VTY port number to telnet to. (default 4247)
  -d --debug		Change debug flags.

vty usage: TODO

Missing features

  • Handover support

Authors

mobile was primarily written by Andreas Eversberg, based on some initial work that Harald did on layer23. The list of contributors is long, see the git log for details.