Project

General

Profile

News

Cellular Network Infrastructure: August 2019 Osmocom CNI releases

Added by laforge 4 months ago

It seems we forgot the release announcement in early August:

The Osmocom project has released new version of the CNI (Cellular Network Infrastructure) software, including OsmoTRX, OsmoBTS, OsmoBSC, OsmoMGW, OsmoMSC, OsmoHLR, OsmoSGSN, OsmoGGSN.

Those new tagged/released versions contain four months of work since the previous versions released during April 2019. The primary focus was on bug-fixing and stabilization as well as some major new features, such as inter-MSC-handover support in osmo-msc.

You can find pre-compiled binary packages of our latest release for a variety of Debian and Ubuntu GNU/Linux versions at Latest_Builds.

List of tagged versions and link to related ChangeLog

Project Version Changelog
libosmocore 1.2.0 http://git.osmocom.org/libosmocore/plain/debian/changelog?h=1.2.0
libosmo-abis 0.7.0 http://git.osmocom.org/libosmo-abis/plain/debian/changelog?h=0.7.0
libosmo-netif 0.6.0 http://git.osmocom.org/libosmo-netif/plain/debian/changelog?h=0.6.0
libosmo-sccp 1.1.0 http://git.osmocom.org/libosmo-sccp/plain/debian/changelog?h=1.1.0
OsmoTRX 1.1.1 http://git.osmocom.org/osmo-trx/plain/debian/changelog?h=1.1.1
OsmoBTS 1.1.0 http://git.osmocom.org/osmo-bts/plain/debian/changelog?h=1.1.0
OsmoBSC 1.5.0 http://git.osmocom.org/osmo-bsc/plain/debian/changelog?h=1.5.0
OsmoMSC 1.5.0 http://git.osmocom.org/osmo-msc/plain/debian/changelog?h=1.5.0
OsmoHLR 1.1.0 http://git.osmocom.org/osmo-hlr/plain/debian/changelog?h=1.1.0
osmo-mgw 1.6.0 http://git.osmocom.org/osmo-mgw/plain/debian/changelog?h=1.6.0
osmo-sip-connector 1.3.0 http://git.osmocom.org/osmo-sip-connector/plain/debian/changelog?h=1.3.0
OsmoSTP 1.1.0 http://git.osmocom.org/libosmo-sccp/plain/debian/changelog?h=1.1.0
OsmoSGSN 1.5.0 http://git.osmocom.org/osmo-sgsn/plain/debian/changelog?h=1.5.0
OsmoGGSN 1.4.0 http://git.osmocom.org/osmo-ggsn/plain/debian/changelog?h=1.4.0

Noteworthy Changes

Misc / Common

  • debian packages now have -doc sub-packages containing the corresponding user and VTY reference manuals of each program.
  • various robustness fixes
  • support LAPDm payloads with more than 200 bytes
  • fsm: Allow millisecond granularity in osmo_fsm built-in timer
  • CBSP (Cell Broadcast Service Protocol) implementatin in libosmogsm
  • vty parser fixes: don't pass incomplete arguments to vty funcs
  • work around gcc bug with gcc < 7.3.0 on ARM related to thread-local storage
  • shared IPA keep-alive FSM in libosmocore; use it wherever possible
  • libosmo-netif Stream client: fix disconnection logic

OsmoTRX

  • new protocol (TRXDv1) support, mainly for passing C/I value from TRX->BTS->PCU for rate adaptation
  • proper counting of under/overruns
  • LimeSuite stability improvements (recovery / re-synchronization after drop-outs)
  • various internal refactoring / code de-duplication
  • fix ARM VFP4 convolution
  • LimeSuite: automatic detection of device type and device specific gains

OsmoBTS

  • Various Abis OML protocol conformance fixes
  • handling of GPRS SUSPEND (from DCCH -> PCU)
  • Full CBCH (Cell Broadcast Channel) support, both basic and extended
  • RSL CBCH LOAD INDICATION for CBCH flow control
  • RSL BS POWER CONTROL support
  • Fix RACH load percentage computation
  • clear GPRS indicator form SI3 when PCU is not connected
  • fix (so far ignored) MS power control in RSL CHANNEL ACTIVATION
  • osmo-bts-oc2g specificx
    • systemd service file + example config installation
    • status LED fixes
    • nominal transmit power fix
    • generate failure event report if calibration data missing
  • osmo-bts-trx specifics
    • TRXDv1 protocol support
    • 11-bit RACH support

OsmoBSC

  • Various AMR rate handling related fixes between AoIP and Abis
  • AMR: Signal usage of octet-aligned or bandwith-efficient mode to MSC
  • various inter-BSC hand-over related fixes for AoIP
  • various manual updates, including documentation for 3G/4G neighbor cells, OSMUX, ...
  • always default to octet-aligned AMR mode
  • keep per-BTS statistics about RACH utilization
  • re-introduce support for IPA-encapsulated MGCP (used with osmo-bsc_nat)
  • OSMUX support with AoIP (we only supported it with SCCPlite so far)
  • support assigning TCH/x in signaling mode

OsmoMSC

  • Add SGs interface for CSFB (circuit switched fall-back) and SMS-over-SGs
  • various SMS and USSD handling related fixes
  • include libsmpp34 memory allocations in talloc reports
  • Fix SMS transmission over Iu (use SAPI3)
  • allow user to disable retrieval of IMEISV early
  • allow transmission of IMEI to HLR (for subscriber-create-on-demand)
  • support inter-BSC hand-over
  • support inter-MSC hand-over
  • do not force encryption on UTRAN/Iu
  • OSMUX support with AoIP

OsmoHLR

  • document --db-upgrade command line argument
  • optionally store IMEI in subscriber table (for non-standard subscriber-create-on-demand)
  • support routing of GSUP messages between clients (MSCs) for inter-MSC hand-over

OsmoMGW (and libosmo-mgcp-client)

  • Add config option to use RFC5593 for GSM HR frames (we normally use ETSI TS 101318 format)
  • SDP parsing related fixes
  • Support OSMUX configuration via MGCP (activated via BSC and MSC)

osmo-sip-connector

  • support international Caller-ID
  • support emergency calling
  • handle SIP re-invite
  • support MNCC HOLD/RETRIEVE

OsmoSTP (and libosmo-sigtran)

  • enable statsd export
  • fix bug when saving config file (pointcode+mask of route)
  • enable memory usage debugging via talloc introspection

OsmoSGSN

  • various parser correctness imporvements for LLC
  • send Iu Release Command upon Attach Complete
  • send Service Reject when no PDP contexts available
  • fix GTP echo behavior
  • require GMM authentication by default

OsmoGGSN (and libgtp)

  • various PCO handling related improvements/fixes
  • minimalistic PAP support during PDP context activation
  • fix missing GTP-C re-transmission
  • Introduce new pdp APIs (and deprecate old ones) to support multiple GSN

gr-osmosdr: gr-osmosdr maintainer needed

Added by laforge 4 months ago

The original author and maintainer of gr-osmosdr (Dimitri horiz0n Stolnikov) has lost time and/or interest in maintaining gr-osmosdr. That's very sad, but it is a fact that people have a limited amount of time, and priorities change. We'd like to thank Dimitri and all other gr-osmosdr developers/contributors for what they have done so far.

We're publicly calling for some other community member[s] to step up and become maintainer[s] of gr-osmosdr.

Who is interested in gr-osmosdr and willing to maintain it, possibly in a team with other interested folks?

The original related mailing list post can be found at http://lists.osmocom.org/pipermail/osmocom-sdr/2019-September/001983.html - it is best to follow-up there in case you are interested and/or have comments.

Ericsson RBS 6xxx: Presentation on commercial cellular base station technology

Added by laforge 4 months ago

On September 10, 2019 Osmocom founder Harald "LaF0rge" Welte gave a presentation as part of the Datengarten series of lectures at the Chaos Computer Club Berlin.

The abstract of the talk is:

In today’s hyper-connected society, everyone constantly uses their smartphone, which in turn uses the commercial cellular networks (from 2G/GSM to 4G/LTE) in order to achieve connectivity. However, contrary to WiFi technology, even most technology-minded people don’t have much of an idea how the infrastructure behind those cellular networks looks like. This talk does not cover the architecture and protocols of underlying cellular systems, but focuses on the physical side of things: what are the typical components of cellular base stations? what are their key functionalities? how did cellular base station technology evolve during the past 20 years? how do we expect cellular base stations to change in the [near] future? We will not cover DIY or hobbyist projects here, but the actual technology deployed in the field by real-world commercial operators.

If you're interested in the presentation, feel free to check out:

Cellular Network Infrastructure: Binary packages for Debian unstable + testing, Ubuntu 19.04

Added by laforge 8 months ago

rtl-sdr: Weekly windows binary packages for rtl-sdr and osmo-fl2k

Added by laforge 8 months ago

While Osmocom in general is a very much Linux-centric development community, we are now finally publishing automatic weekly Windows binary builds for the most widely used Osmocom SDR related projects: rtl-sdr and osmo-fl2k.

You can find the binaries at The actual builds are done by roox who is building them using MinGW on OBS, see

The status of the osmocom binary publish job, executed once per week from now on, can be found at https://jenkins.osmocom.org/jenkins/view/All%20no%20Gerrit/job/Osmocom-OBS_MinGW_weekly_publish/

UmTRX: XTRX SDR workshop on May 12, 2019 in Berlin

Added by laforge 9 months ago

XTRX SDR workshop Berlin

  • Speaker: Sergey Kostanbaev, Founder and Head of Engineering, Fairwaves
  • Duration: 2h+
  • When: Sunday, May 12 from 3pm onwards
  • Where: IN-Berlin e.V., Lehrter Str. 53, 10557 Berlin
  • Admission: Free + Open to anyone

Preliminary agenda:

  • Why XTRX. What's different in XTRX SDR? * XTRX hardware capabilities * XTRX carrier board (USB3 / PCIex2) * Understanding XTRX software layers * Building XTRX driver & host libraries * PCIe Driver specifics, ARM specifics, porting to other platforms * Native API overview, Spoapy wrapper * GNURadio plugins, building simple applications * Q&A

XTRX homepage: https://xtrx.io/

Previous talks, e.g. OsmoDevCon 2018 one year ago: https://media.ccc.de/v/MNL3YJ

OsmoMSC: Handover support merged to OsmoMSC master

Added by neels 9 months ago

We are happy to announce that OsmoMSC handover support for 2G has been merged to the master branch yesterday.
See this talk: https://media.ccc.de/v/osmodevcon2019-103-inter-msc-handover-how-it-works-and-how-we-implement-it
and sensational images of the new code launched to the OsmoMSC master orbit: http://people.osmocom.org/neels/oeZeich5/msc_launch.jpg ;)

OsmoMSC master can now do both inter-BSC as well as inter-MSC handover for 2G (GERAN).
Until now, only OsmoBSC supported handover, i.e. an ongoing phone call moving to another cell within the same BSC.
OsmoBSC since not so long ago can also handover to another BSC, but you needed a third-party MSC for this.

Now, you can use our stock OsmoMSC for inter-BSC handover. Notably OsmoBSC has also received crucial fixes for handover on AoIP.
We also support inter-MSC handover now, i.e. you can handover a 2G call to another OsmoMSC.
To handover to/from a third-party MSC, a separate GSUP-to-MAP compatibility layer will have to be added.

A rather large refactoring effort was necessary to allow handling more than one RAN connection per subscriber.
Though handover to/from 3G is not yet supported, the new code base is a necessary preparation for adding that.
It is not yet clear when or by whom handover on 3G might be taken on, so join us if you are interested.

OsmoMSC v1.4.0 was released to mark a stable version before the new changes.
After due testing by the extended Osmocom community, we will (likely soon) tag a new "latest" release.
Until then, handover support is available in the nightly images and when built from current master.
https://osmocom.org/projects/cellular-infrastructure/wiki/Nightly_Builds
https://osmocom.org/projects/cellular-infrastructure/wiki/Build_from_Source

Osmocom Conferences (OsmoDevCon + OsmoCon): OsmoDevCon 2019 videos released

Added by laforge 9 months ago

Cellular Network Infrastructure: Binary packages for Raspbian 9

Added by laforge 12 months ago

Thanks to the great support of the OpenSuSE Build Service, Osmocom is now offering binary package feeds for the popular Raspbian distribution, Version 9.

As a result, running Osmocom CNI (Cellular Network Infrastructure) on Raspbery Pi embedded computers is easier than ever: Just add the Latest_Builds
or Nightly_Builds feed to /etc/apt/sources.list[.d] and run your Osmocom based 2G and/or 3G cellular network.

The feeds are available from

Cellular Network Infrastructure: New Osmocom Cellular software versions released!

Added by laforge 12 months ago

The Osmocom project has released new version of the CNI (Cellular Network Infrastructure) software, including OsmoTRX, OsmoBTS, OsmoBSC, OsmoMGW, OsmoMSC, OsmoHLR, OsmoSGSN, OsmoGGSN.

Those new tagged/released versions contain half a year of work since the previous versions released during summer 2018. The primary focus was on bug-fixing and stabilization as well as some major new features, such as inter-BSC-handover support in osmo-bsc.

You can find pre-compiled binary packages of our latest release for a variety of Debian and Ubuntu GNU/Linux versions at Latest_Builds.

List of tagged versions and link to related ChangeLog

Project Version Changelog
libosmocore 1.0.1 http://git.osmocom.org/libosmocore/plain/debian/changelog?h=1.0.1
libosmo-abis 0.6.0 http://git.osmocom.org/libosmo-abis/plain/debian/changelog?h=0.6.0
libosmo-netif 0.4.0 http://git.osmocom.org/libosmo-netif/plain/debian/changelog?h=0.4.0
libosmo-sccp 1.0.0 http://git.osmocom.org/libosmo-sccp/plain/debian/changelog?h=1.0.0
OsmoTRX 1.0.0 http://git.osmocom.org/osmo-trx/plain/debian/changelog?h=1.0.0
OsmoBTS 1.0.0 http://git.osmocom.org/osmo-bts/plain/debian/changelog?h=1.0.0
OsmoBSC 1.4.0 http://git.osmocom.org/osmo-bsc/plain/debian/changelog?h=1.4.0
OsmoMSC 1.3.1 http://git.osmocom.org/osmo-msc/plain/debian/changelog?h=1.3.1
OsmoHLR 1.0.0 http://git.osmocom.org/osmo-hlr/plain/debian/changelog?h=1.0.0
osmo-mgw 1.5.0 http://git.osmocom.org/osmo-mgw/plain/debian/changelog?h=1.5.0
osmo-sip-connector 1.2.0 http://git.osmocom.org/osmo-sip-connector/plain/debian/changelog?h=1.2.0
OsmoSTP 1.0.0 http://git.osmocom.org/libosmo-sccp/plain/debian/changelog?h=1.0.0
OsmoSGSN 1.4.0 http://git.osmocom.org/osmo-sgsn/plain/debian/changelog?h=1.4.0
OsmoGGSN 1.3.0 http://git.osmocom.org/osmo-ggsn/plain/debian/changelog?h=1.3.0

Noteworthy Changes

Misc

  • the asciidoc source of the user manuals + VTY reference manuals is now always kept inside the respective repository: osmo-bts.git contains the osmo-bts manual. Before this, we used to have all manuals in osmo-gsm-manuals.git.
  • logging vty: deprecate the 'everything' keyword
  • various logging related improvements
  • various improvements of osmo_fsm
  • new osmo-config-merge utility
  • SGsAP protocol encoding/decoding (SGsAP not yet part of osmo-msc!)
  • GSMTAP definitions for LTE RRC and NAS sub-types
  • introduce osmo_timerfd support as part of libosmocore (recurring timers)

OsmoTRX

  • Introduce OsmoTRX user manual
  • Direct support of LimeSuite as osmo-trx-lms without the detour of uhd+soapy-uhd+soapysdr
  • split device-specific parts into their own classes + binaries: osmo-trx-{uhd,lms,usrp1}
  • make better use of diferent logging sub-systems / log levels

OsmoBTS

  • various correctness fixes related to advanced SACCH FILL scenarios with different SI5/SI6 per channel/subscriber
  • various fixes to bit-rotten CBCH support; related generalization
  • CBCH support for osmo-bts-trx
  • extend precision of TOA mesaurement reports to 1/256 symbol duration
  • make RTP port range configurable
  • extensive fixes on correctness of computed + reported measurement reports
  • Fix build against gpsd >= 3.18
  • Allocate TRX for BTS dynamically, deprecate "-t" command line option
  • Initial support for OpenCellular OC-2G BTS model/PHY

OsmoBSC

  • inter-BSC hand-over support (AoIP and SCCPlite)
  • large refactoring: use FSMs for lchans; timeslots; MGCP endpoints; ...
  • Implement RR Classmark Enquiry in case
  • various LCLS related fixes
  • various codec / channel type related fixes during ASSIGNMENT
  • interop tested against 3rd party MSCs for both AoIP and SCCPlite

OsmoMSC

  • Implementation of MSC-originated CLASSMARK inquiry procedure for MS/UE without early classmark sending to allow A5/3 encryption
  • mncc: fix byte ordering of IP-Address in mncc
  • various improvements on state introspection via VTY
  • forward SS / USSD messages via GSUP to HLR rather than processing it in MSC
  • optional forward of SMS via GSUP to/from HLR rather than using internal SMSC
  • fix Classmark Update without VLR subscriber
  • vty: add SCCP related vty commands
  • GSUP client: send CN domain IE on LU request
  • vty: add command to show all known BSC

OsmoHLR

  • Add GSUP message router
  • Add concept of Internal (IUSE) and external (EUSE) USSD handlers
  • Implement handling of USSD received from OsmoMSC via GSUP
  • Introduce shared libosmo-gsup-client library for client programs connecting to OsmoHLR (like OsmoMSC, OsmoSGSN).

OsmoMGW (and libosmo-mgcp-client)

  • Remove libosmo-legacy-mgcp and osmo-bsc-mgcp (they live in deprecated openbsc.git)
  • various OSMUX related fixes
  • use IETF-allocated port number for call-agent side as default
  • introduce the concept of payload type maps
  • rewrite/translate payload type numbers as per the ptmap
  • make MGCP parser more tolerant (and interoperable)
  • add extensive statistics / counters and improve VTY introspection

osmo-sip-connector

  • various logging improvements (more strings, less numbers)
  • better SIP/MNCC cause mapping

OsmoSTP (and libosmo-sigtran)

  • make SCCP timers configurable (required for some SCCPlite peers)
  • osmo-stp: add SCCP related VTY commands
  • allow less characters for SCCP address book entries
  • skip simple-client default as/asp when saving VTY config
  • fix ipa_asp_fsm down state transition

OsmoSGSN

  • gprs_gmm: introduce a GMM Attach Request FSM
  • sgsn_ggsn_ctx_drop_pdp: protect against nullpointer when MM is gone
  • gprs_gmm: dont answer unknown IMSI/TMSI on Service Requests NET_FAIL
  • gprs_gmm: Fix missing Security Command for 3G when attaching
  • sgsn_libgtp: fix a potential memleak when the GGSN is not reachable
  • gb_proxy: Add ctrl interface and nsvc-state, gbproxy-state commands
  • osmo-sgsn: ping GGSN periodically and check for restart counter
  • Disarm T3395 when dettaching mmctx from pdpctx
  • sgsn: cdr: Fix uninitialized string access if ggsn is detached
  • gbproxy: Add VTY parameter: link stored-msgs-max-length
  • gbproxy: Add new VTY-managed timer: link-list clean-stale-timer
  • Remove local libgsupclient; Use libosmo-gsup-client from osmo-hlr

OsmoGGSN (and libgtp)

  • ggsn: ctrl iface: listen on IP configured by VTY
  • gtp: Allow recv DEL CTX REQ in sgsn and DEL CTX RSP in ggsn
  • gtp: Log ignore CTX DEL REQ due to no teardown and only 1 ctx active
  • gtp: Add new API to avoid freeing pdp contexts during DEL CTX REQ
  • fix support for multiple IPCP in PDP protocol configuration options
(11-20/123)

Also available in: Atom

Add picture from clipboard (Maximum size: 48.8 MB)