Welcome to the OsmocomBB project
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
This is the project page about our experiments (so far) only with phones based on the Ti Calypso/Iota/Rita GSM baseband chipset. The main target is the MotorolaC123. For more supported phones, check below.
We originally intended to build an inexpensive GSM experimentation board built with/around that chipset, but right now are pursuing a slightly alternative course by using cheap off-the-shelf feature phones and write custom software for it.
Mailing List/IRC Chat
We offer Mailing Lists and hang out on IRC.
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/
Host programs (running on the PC)
- 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
Advanced / special purpose tools
- 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.
Target programs (running on the phone baseband chip)
- 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
Supported Phone hardware
Information specific to certain Calypso based phones that we support
- Designed + Manufactured by Compal, OEM by Motorola
- Designed by Openmoko, manufactured by FIC
- Neo 1973 (GTA01)
- OpenMoko - Neo Freerunner (GTA02)
You will need a Hardware/SerialCable to connect the phone to a PC
Random bits and pieces
- 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
For a complete list of local wiki pages, see TitleIndex.