Osmocom Base Transceiver Station (BTS) https://osmocom.org/projects/osmobts
Go to file
Harald Welte d39a3a3899 Bump version: 1.2.0.2-94ea → 1.2.1
Cherry-pick gcc-10 compilation fixes.

Change-Id: I4ee92fecd7f1f48922c827c000742d195f78d8b9
2020-07-26 20:50:13 +02:00
contrib contrib/jenkins.sh: run "make maintainer-clean" 2019-07-10 13:36:11 +02:00
debian Bump version: 1.2.0.2-94ea → 1.2.1 2020-07-26 20:50:13 +02:00
doc osmo-bts-virtual.cfg: ms-power-control dsp -> osmo 2019-11-19 18:28:32 +00:00
include fix compilation with gcc-10 2020-07-26 11:48:22 +02:00
src bts-trx: trx_if.c: Fix some printf formats 2020-07-26 20:48:49 +02:00
tests fix compilation with gcc-10 2020-07-26 11:48:22 +02:00
.gitignore gitignore: add oc2g generated files 2019-10-07 09:33:17 +00:00
.gitreview Add .gitreview 2016-06-17 15:33:01 +00:00
.mailmap Add .mailmap for mapping mail addresses in shortlog 2016-08-08 11:31:00 +00:00
COPYING re-work original osmo-bts with support for sysmocom femtobts 2011-06-27 11:25:35 +02:00
Makefile.am contrib: Remove deprecated screen script helpers 2019-03-27 09:57:41 +00:00
README.md Fix common misspellings and typos 2019-10-17 08:05:35 +00:00
configure.ac Bump version: 1.1.0.95-24e7-dirty → 1.2.0 2020-01-03 17:18:44 +01:00
git-version-gen auto-generate a version 2011-09-07 21:28:27 +02:00

README.md

osmo-bts - Osmocom BTS Implementation

This repository contains a C-language implementation of a GSM Base Transceiver Station (BTS). It is part of the Osmocom Open Source Mobile Communications project.

This code implements Layer 2 and higher of a more or less conventional GSM BTS (Base Transceiver Station) - however, using an Abis/IP interface, rather than the old-fashioned E1/T1.

Specifically, this includes

  • BTS-side implementation of TS 08.58 (RSL) and TS 12.21 (OML)
  • BTS-side implementation of LAPDm (using libosmocore/libosmogsm)
  • A somewhat separated interface between those higher layer parts and the Layer1 interface.

Several kinds of BTS hardware are supported:

  • sysmocom sysmoBTS
  • Octasic octphy
  • Nutaq litecell 1.5
  • software-defined radio based osmo-bts-trx (e.g. USRP B210, UmTRX, LimeSDR)

Homepage

The official homepage of the project is https://osmocom.org/projects/osmobts/wiki

GIT Repository

You can clone from the official osmo-bts.git repository using

git clone git://git.osmocom.org/osmo-bts.git

There is a cgit interface at http://git.osmocom.org/osmo-bts/

Documentation

We provide a User Manual as well as a VTY Reference Manual and a Abis reference MAnual describing the OsmoBTS specific A-bis dialect.

Mailing List

Discussions related to osmo-bts are happening on the openbsc@lists.osmocom.org mailing list, please see https://lists.osmocom.org/mailman/listinfo/openbsc for subscription options and the list archive.

Please observe the Osmocom Mailing List Rules when posting.

Contributing

Our coding standards are described at https://osmocom.org/projects/cellular-infrastructure/wiki/Coding_standards

We us a gerrit based patch submission/review process for managing contributions. Please see https://osmocom.org/projects/cellular-infrastructure/wiki/Gerrit for more details

The current patch queue for osmo-bts can be seen at https://gerrit.osmocom.org/#/q/project:osmo-bts+status:open

Known Limitations

As of March 17, 2017, the following known limitations exist in this implementation:

Common Core

  • No Extended BCCH support
  • System Information limited to 1,2,2bis,2ter,2quater,3,4,5,6,9,13
  • No RATSCCH in AMR
  • Will reject TS 12.21 STARTING TIME in SET BTS ATTR / SET CHAN ATTR
  • No support for frequency hopping
  • No reporting of interference levels as part of TS 08.58 RF RES IND
  • No error reporting in case PAGING COMMAND fails due to queue overflow
  • No use of TS 08.58 BS Power and MS Power parameters
  • No support of TS 08.58 MultiRate Control
  • No support of TS 08.58 Supported Codec Types
  • No support of Bter frame / ENHANCED MEASUREMENT REPORT

osmo-bts-sysmo

  • No CSD / ECSD support (not planned)
  • GSM-R frequency band supported, but no NCH/ASCI/SoLSA
  • All timeslots on one TRX have to use same training sequence (TSC)
  • No multi-TRX support yet, though hardware+L1 support stacking
  • Makes no use of 12.21 Intave Parameters and Interference Level Boundaries
  • MphConfig.CNF can be returned to the wrong callback. E.g. with Tx Power and ciphering. The dispatch should take a look at the hLayer3.

osmo-bts-octphy

  • No support of EFR, HR voice codec (lack of PHY support?)
  • No re-transmission of PHY primitives in case of time-out
  • Link Quality / Measurement processing incomplete
  • impossible to modify encryption parameters using RSL MODE MODIFY
  • no clear indication of nominal transmit power, various power related computations are likely off
  • no OML attribute validation during bts_model_check_oml()