Project

General

Profile

Wiki » History » Version 14

laforge, 02/21/2016 02:55 PM

1 10 laforge
h1. [[OsmoBTS]]
2 4 ipse
3 4 ipse
4 10 laforge
[[OsmoBTS]] is a software implementation of Layer2/3 of a BTS. It implements the follwing protocols/interfaces:
5 10 laforge
* LAPDm (GSM 04.06)
6 10 laforge
* RTP
7 10 laforge
* A-bis/IP in IPA multiplex
8 10 laforge
* OML (GSM TS 12.21)
9 10 laforge
* RSL (GSM TS 08.58)
10 1 laforge
11 14 laforge
[[OsmoBTS]] is building up on work done previosuly for [[OpenBSC:]] (e.g. RSL, OML, RTP) and [[OsmocomBB:]] (e.g. LAPDm).  The Abis/IP protocol staking is inspired by ip.access A-bis/IP, sometimes called IPA multiplex.
12 1 laforge
13 11 laforge
h2. OsmoBTS in the Osmocom architecture
14 11 laforge
15 11 laforge
{{graphviz_link()
16 11 laforge
digraph G {
17 11 laforge
    rankdir = LR;
18 11 laforge
    OsmoTRX -> OsmoBTS [label="bursts over UDP"];
19 11 laforge
    sysmoPHY -> OsmoBTS [label="/dev/msgq/"];
20 11 laforge
    octPHY -> OsmoBTS [label="Raw Ethernet"];
21 11 laforge
    OsmoBTS -> OsmoNITB [label="Abis/IP"];
22 11 laforge
    OsmoBTS -> OsmoPCU [label="pcu_sock"];
23 11 laforge
    OsmoPCU -> OsmoSGSN [label="Gb/IP"];
24 11 laforge
    OsmoBTS [color=red];
25 11 laforge
}
26 11 laforge
}}
27 1 laforge
28 10 laforge
h2. Backends / Hardware support
29 9 laforge
30 10 laforge
31 10 laforge
[[OsmoBTS]] is modular and has support for multiple back-ends.  A back-end talks to a specific L1/PHY implementation of the respective BTS hardware. Based on this architecture, it should be relatively easy to add a new back-end to support so-far unsupported GSM PHY/L1 and associated hardware.
32 10 laforge
33 10 laforge
So far [[OsmoBTS]] has been integrated with several different L1/PHY and hardware systems. The backends are:
34 10 laforge
* osmo-bts-sysmo
35 13 laforge
** Multiple indoor and outdoor BTS products  called "sysmoBTS":http://www.sysmocom.de/products/sysmobts by "sysmocom":http://sysmocom.de/
36 1 laforge
* osmo-bts-trx
37 13 laforge
** Wideband SDR transceiver hardware supported by [[OpenBTS]] transceiver or [OsmoTRX] PHY layer software, including the [[umtrx:UmTRX]], the USRP family, etc.
38 13 laforge
** Multiple indoor and outdoor "fairwaves":https://fairwaves.co BTSs, like [[umtrx:UmDESK]] and [[umtrx:UmSITE]]
39 13 laforge
* osmo-bts-litecell15
40 13 laforge
* osmo-bts-octphy
41 10 laforge
* osmo-bts-bb
42 10 laforge
** A pretty crazy experimental BTS hardware based on two [[OsmocomBB]] phones had originally been supported, but needs to be re-integrated with core code changes.
43 10 laforge
44 10 laforge
h2. Status
45 10 laforge
46 10 laforge
47 9 laforge
The source code includes a  http://cgit.osmocom.org/cgit/osmo-bts/tree/README file with current status information
48 9 laforge
49 1 laforge
h2. GPRS support
50 10 laforge
51 12 laforge
In the GSM architecture, the BTS is an element in the circuit-switched domain only.
52 1 laforge
53 12 laforge
For packet-switched support, OsmoBTS provides  a socket interface towards [[OsmoPCU:]]. This adds GPRS and EDGE support to it.
54 10 laforge
55 10 laforge
h2. Source code
56 10 laforge
57 10 laforge
58 1 laforge
The source code is available from git.osmocom.org (module osmo-bts).
59 6 ipse
60 6 ipse
Public read-only access is available via
61 6 ipse
 git clone git://git.osmocom.org/osmo-bts.git
62 6 ipse
You can browse it via cgit: http://cgit.osmocom.org/cgit/osmo-bts/
63 6 ipse
64 6 ipse
65 10 laforge
h2. Authors / Credits
66 1 laforge
67 10 laforge
68 10 laforge
[[OsmoBTS]] was originally developed in 2011 by Andreas Eversberg and Harald Welte.  
69 9 laforge
70 12 laforge
Today it is mostly maintained by Harald Welte and Holger Freyther at sysmocom.  Exception is the osmo-bts-trx back-end which is maintained by Fairwaves.