Feature #4941
openVAMOS support in OsmoBTS
90%
Description
This ticket should document what needs to be done in terms of supporting VAMOS from OsmoBTS, and to track its status via check-lists and possibly sub-issues.
Our implementation will be focusing on osmo-bts-trx
as none of the "proprietary PHY" we support implement any VAMOS support.
- Indication of [which level of] VAMOS support the BTS has via OML attributes to BSC
- Implementation of "shadow TRX" concept in data structures
- Implementation of VAMOS related RSL extensions on Abis
- Implementation of a new TRXDv2 protocol from/to the TRX
- VAMOS-aware uplink + downlink power control
- generation of one set of downlink symbols from the real + shadow timeslot/lchan
The corresponding BSC related work is tracked in #4940
Related issues
Updated by laforge almost 3 years ago
- Related to Feature #4940: VAMOS support in OsmoBSC added
Updated by Hoernchen almost 3 years ago
According to https://opus4.kobv.de/opus4-fau/files/5533/DissertationMichaelRuder.pdf chapter 4 random pairings with scpir=0 should be fine for the time being.
Updated by fixeria almost 3 years ago
- Related to Feature #4006: TRX protocol: wind of change added
Updated by fixeria over 2 years ago
- Blocked by Bug #5112: osmo-gsm-manuals: build verification is broken added
Updated by fixeria over 2 years ago
- % Done changed from 0 to 20
I've submitted a bunch of TRXDv2 related changes to Gerrit:
https://gerrit.osmocom.org/c/osmo-bts/+/23822 osmo-bts-trx: cosmetic: TRXD 'header version' -> 'PDU version'
https://gerrit.osmocom.org/c/osmo-bts/+/23823 osmo-bts-trx: remove outdated TRXD protocol documentation
https://gerrit.osmocom.org/c/osmo-bts/+/23824 osmo-bts-trx: cosmetic: use '#pragma once' in trx_if.h
https://gerrit.osmocom.org/c/osmo-bts/+/23825 osmo-bts-trx: reduce and share TRXC message buffer size
https://gerrit.osmocom.org/c/osmo-bts/+/23826 osmo-bts-trx: move TRXD message length to trx_if.h
https://gerrit.osmocom.org/c/osmo-bts/+/23827 osmo-bts-trx: 'burst type' is actually modulation type
https://gerrit.osmocom.org/c/osmo-bts/+/23828 osmo-bts-trx: move MTS parser into trx_data_parse_mts()
https://gerrit.osmocom.org/c/osmo-bts/+/23829 osmo-bts-trx: discard TRXD PDUs with unexpected version
https://gerrit.osmocom.org/c/osmo-bts/+/23830 osmo-bts-trx: move TDMA frame number check to trx_data_read_cb()
https://gerrit.osmocom.org/c/osmo-bts/+/23831 osmo-bts-trx: cosmetic: get rid of TRX_CHDR_LEN macro
https://gerrit.osmocom.org/c/osmo-bts/+/23832 osmo-bts-trx: refactor handling of version specific TRXD parts
https://gerrit.osmocom.org/c/osmo-bts/+/23833 osmo-bts-trx: implement TRXDv2 protocol support
together with other L1SAP/RSL related changes (all of them have been merged):
https://gerrit.osmocom.org/c/libosmocore/+/23788 protocol/gsm_08_58.h: add RSL_CMOD_SP_{GSM4,GSM5,GSM6}
https://gerrit.osmocom.org/c/libosmocore/+/23789 protocol/gsm_08_58.h: add more 'Channel rate and type' values
https://gerrit.osmocom.org/c/libosmocore/+/23790 protocol/gsm_08_58.h: add asymmetric CSD data rates
https://gerrit.osmocom.org/c/osmo-bts/+/23787 l1sap: fix incorrect pointer cast in l1sap_chan_act()
https://gerrit.osmocom.org/c/osmo-bts/+/23791 rsl: rename, fix and refactor lchan_tchmode_from_cmode()
https://gerrit.osmocom.org/c/osmo-bts/+/23792 rsl: add missing Channel Mode values to rsl_handle_chan_mod_ie()
Updated by fixeria over 2 years ago
- % Done changed from 20 to 60
For some reason, the related changes are not appearing here automatically, so adding manually:
remote: https://gerrit.osmocom.org/c/osmo-bts/+/24323 [VAMOS] osmo-bts-trx: rework and split up bts_sched_fn() [NEW]
remote: https://gerrit.osmocom.org/c/osmo-bts/+/24324 [VAMOS] osmo-bts-trx: implement and enable PDU batching for TRXDv2 [NEW]
remote: https://gerrit.osmocom.org/c/osmo-bts/+/24325 [VAMOS] osmo-bts-trx: indicate MTS in Downlink TRXDv2 PDUs [NEW]
remote: https://gerrit.osmocom.org/c/osmo-bts/+/24326 [VAMOS] common/scheduler: unify symbol names for training sequences [NEW]
remote: https://gerrit.osmocom.org/c/osmo-bts/+/24327 [VAMOS] struct gsm_lchan: store Training Sequence Code/Set [NEW]
remote: https://gerrit.osmocom.org/c/osmo-bts/+/24328 [VAMOS] scheduler: add new GMSK training sequences from 3GPP 45.002 [NEW]
remote: https://gerrit.osmocom.org/c/osmo-bts/+/24153 [VAMOS] Implement the concept of 'shadow' transceiver [WIP]
remote: https://gerrit.osmocom.org/c/osmo-bts/+/24329 [VAMOS] l1sap_chan_act(): handle Osmocom specific Training Sequence IE [NEW]
Updated by fixeria over 2 years ago
- Status changed from In Progress to Feedback
- % Done changed from 60 to 90
Everything is implemented except "VAMOS-aware uplink + downlink power control", but some patches got stuck in Gerrit:
https://gerrit.osmocom.org/q/topic:%22VAMOS%22+(status:open%20OR%20status:wip)
Updated by fixeria over 2 years ago
- Status changed from Feedback to Stalled
- Priority changed from Urgent to Normal
Updated by fixeria over 1 year ago
- Checklist item CMI mapping as per 3GPP TS 45.009, section 3.2.1.3 added
3GPP TS 45.009, section 3.2.1.3 defines different TDMA frame numbers for channels in VAMOS mode. See tables 3.2.1.3-{3,4}.