Overview on OsmocomBB software stack

The big picture

For simplicitly, this description only mentions the receive path of a GSM signal into our software. The
transmit part is left out, as is the bootloading/bootstrappig part, and the various control paths especially
from layer1 into the RF hardware.

First, we receive the RF signal at the antenna, pass it through the Rita mixer which does direct
down-conversion into analog I/Q baseband. This in turn is sent into the baseband ADC of the Iota ABB.
The resulting signal is passed to the BSP (baseband serial port) of the HardwareCalypso DBB.

Inside the HardwareCalypso DBB, the digital baseband samples are passed from the BSP into the DSP core, where they are processed,
demodulated, deinterleaved, decoded, etc. before being passed onto the ARM core using a shared memory interface. On the ARM
core we have the OsmocomBB layer1 that processes the MAC blocks and sends them via L1CTL to the UART.

On the PC itself, the L1CTL messages are received on the serial port by the osmocon program, which demultiplexes the different
sercomm streams and passes L1CTL on via a unix domain socket into whatever layer23 program you may be running (e.g. mobile).

Index of Software related wiki pages