OsmocomBB is an Free Software / Open Source GSM Baseband software implementation.
It intends to completely replace the need for a proprietary GSM baseband software, such as drivers for the GSM analog and digital baseband (integrated and external) peripherals the GSM phone-side protocol stack, from layer 1 up to layer 3
In short: By using OsmocomBB on a compatible phone, you are able to make and receive phone calls, send and receive SMS, etc. based on Free Software only.
Over the past 12 months, we've been making very good progress. Most of the hardware drivers have been written, and a relatively complete layer1, layer2 and layer3 exist.
No work has yet been done on any sort of UI on the phone. The only user interface is a telnet-based command line.
To get started, checkout the PreliminaryRequirements and then GettingStarted.
Documentation about software developed by this project.
OsmocomBB source code is kept in the git repository at git://git.osmocom.org/osmocom-bb.git, which you can browse best from http://cgit.osmocom.org/
- GettingStarted -- Getting Started with the Software for the target and host.
- SoftwareOverview -- Overview how all the parts below fit together
- osmocon -- A tool for Compal phones; to load code into RAM and execute it
- mobile -- An application implementing a regular GSM mobile phone (and more)
- WiresharkIntegration -- How to use OsmocomBB with wireshark protocol analyzer
- libosmocore -- A library with utility functions
- osmoload -- A tool for flashing and examining phones
- calypso_pll -- A tool to calculate Calypso DPLL multiplier+divider
- rita_pll -- A tool to calculate the Rita PLL multiplier/divider
- layer23 -- An implementation of GSM Layer2 and upwards.
- firmware -- The current staging/testing code base for our own software on the Calypso. From it we build a number of apps:
- hello_world.bin -- An actual 'hello world' application for LCD and serial port
- layer1.bin -- The actual Layer1 software as it is to be used with layer23
- loader.bin -- Our flash loader, dumper and second stage bootloader
- compal_dsp_dump.bin -- A program to dump the ROM of the DSP inside the Calypso
- rssi.bin -- Receive signal strength monitor with spectrum display
Information specific to certain Calypso based phones that we support
Designed + Manufactured by Compal, OEM by Motorola
- MotorolaC115/C117 (E87)
- MotorolaC123/C121/C118 (E88) -- our primary target
- MotorolaC140/C139 (E86)
- MotorolaC155 (E99) -- our secondary target
- MotorolaV171 (E68/E69)
- SonyEricssonJ100i
Designed by Pirelli/Foxconn, manufactured by Foxconn
Designed by Openmoko, manufactured by FIC
- Neo 1973 (GTA01)
- OpenMoko - Neo Freerunner (GTA02)
You will need a SerialCable to connect the phone to a PC
- SIM related
- RebelSIM -- How the Rebel SIM card cand be used as SIM proxy
- RebelSIM_Scanner -- to scan/trace communication between SIM and phone (rubbish)
- SIMtrace -- our custom hardware / firmware / software to get SIM-ME traces into wireshark
- SIMReader -- How to connect to network using provider SIM
- softSIM -- How to do software SIM
- a collection of phone Terminal Profiles
- Notes on sniffing
- dct3-gsmtap -- A tool to obtain GSMTAP messages for SIM and GSM from Nokia DCT3 (eg, 3310) phones
- Hardware/FilterReplacement -- How to replace filters on Motorola phones
- PotentialCalypsoTargets -- Potential phone hardware to use with osmocom-bb
- nuttx-bb -- Port of nuttx on the osmocom-bb comaptible phones.
- airprobe -- Free Software GSM protocol analyzer
- OpenBSC -- Free Software BSC/MSC/HLR/SMSC
- OpenBTS -- Free Software Um-to-SIP gateway
- OsmocomTETRA -- Free Software TETRA related code
- http://laforge.gnumonks.org/papers/gsm_phone-anatomy-latest.pdf -- Introduction to contemporary GSM cellphone hardware
- http://www2.informatik.hu-berlin.de/~goeller/ -- Homepage of Dr.-Ing. Joachim Goeller, lots of GSM tutorials
- http://sourceforge.net/projects/plabs/ -- Source code of the firmware of the Vitelcom TSM30 phone (dead link)
- OsmocomBB presentation at SSTIC 2010
- Article covering OsmocomBB at h-online, from July 2012