Wiki » History » Revision 10
Revision 9 (ptrkrysik, 09/06/2018 09:19 AM) → Revision 10/30 (ptrkrysik, 09/06/2018 09:28 AM)
h1. Welcome to [[SDR PHY for OsmocomBB]] project
{{>toc}}
h2. Introduction
[[OsmocomBB:]] project provides almost free software GSM mobile station implementation, from Layer 1 to Layer 3. The last non-free parts are: layer 1 and low level signal processing that are implemented in a non-free DSP software which is inside of the hardware platform that [[OsmocomBB:]] is currently based on (mainly reverse engineered [[OsmocomBB:TI_Calypso_Chipset|Calypso]] based mobile phones).
The [[SDR PHY for OsmocomBB]] aims to replace these non-free parts through use Software Defined Radio devices and by creating missing software part for tasks such as scheduling, voice encoding/decoding, channel encoding/decoding, burst modulation/demodulation and controlling SDR hardware. In order to achieve this goal the [[SDR PHY for OsmocomBB]] brings together [[OsmocomBB:]] and [[gr-gsm:]] projects, where the role of [[gr-gsm:]] is to provide GSM bursts transmission and reception with everything starting from channel coding/decoding being done in [[OsmocomBB:]].
Having support for general purpose SDR hardware has additional advantage of not being locked to a single and already obsolete hardware platform. Adding support for a new well documented SDR platform is significantly easier than reverse-engineering mobile phone's hardware and software. This could sustain [[OsmocomBB:]] project's life even in the absence of hacked mobile phones it is able to run on.
A comparison of [[OsmocomBB:TI_Calypso_Chipset|Calypso]] based and SDR based approaches can be found on [[SDR PHY vs Calypso]] subpage.
h2. Supported SDR hardware
At the moment only USRP hardware is supported via UHD driver. This limitation is caused by the requirement for the stream tags support by a GNU Radio interface of the SDR device. Currently only UHD USRP source/sink blocks provide that.
The current implementation is known to work on the following devices:
* USRP B2X0, including 'mini'
* Fairwaves [[UmTRX:]]
Note: *LimeSDR is not (yet?) supported* exactly because the stream tags are not supported by "_gr-limesdr_":https://github.com/myriadrf/gr-limesdr.
h2. Project status
Known limitations (not implemented):
* Automatic PHY delay measurement
* AGC (Automatic Gain Control)
* Power measurement
Work in progress:
* Docker scripts (Dockerfiles)
* GAPK based audio back-end
* TCH/H implementation
* Frequency Hopping
Future plans:
* Extend supported hardware list (Soapy?)
* PC/SC physical SIM interface
* AMR (Adaptive Multi-Rate)
h2. Sponsors
The "project":https://nlnet.nl/project/sdr-phy/ has support of NLnet Foundation
!https://osmocom.org/attachments/download/3315/nlnet_logo_320x120.png(fsdafs)!:https://nlnet.nl.