Project

General

Profile

Bug #1548

11bit RACH support

Added by laforge over 4 years ago. Updated 5 months ago.

Status:
Resolved
Priority:
Normal
Assignee:
Target version:
-
Start date:
02/23/2016
Due date:
% Done:

100%

Spec Reference:
3GPP TS 44.004, section 7.4a; 3GPP TS 44.060, sections 11.2.5 and 11.2.5a

Description

This is currently not supported/implemented. Having 11bit RACH gives us more information on the cause of channel establishemnt, especially when GSM + GPRS are used together.


Related issues

Related to OsmoBTS - Bug #1854: 11-bit RACH support breaks default 8-bit RACH: collisions are possibleResolved11/18/2016

Related to OsmoTRX - Feature #3054: Extended (11-bit) RACH support in OsmoTRXStalled03/10/2018

Related to OsmoPCU - Feature #3014: fix re-apply patches reverted by #3013, related: UL and DL packet assignment, and Timing AdvanceResolved02/27/2018

Related to OsmoPCU - Bug #4338: Add EGPRS tests toTTCN3 PCU_Tests_RAWIn Progress12/23/2019

Has duplicate OsmoPCU - Bug #1834: Extended (11-bit) RACH is not properly handledClosed10/25/2016

History

#1 Updated by laforge almost 4 years ago

  • Status changed from New to In Progress
  • Assignee set to arvind.sirsikar

11bit RACH is actually being worked on, assigning this to aravind. It might even be complete for some BTS models by now.

#2 Updated by arvind.sirsikar almost 4 years ago

Currently it is supported and integration tested for NuRAN LC1.5 and LC1.0. However there is no support for osmo-trx.

#4 Updated by laforge about 3 years ago

  • Assignee changed from arvind.sirsikar to sysmocom

#5 Updated by laforge about 3 years ago

  • Status changed from In Progress to New
  • Assignee changed from sysmocom to msuraev

#6 Updated by laforge about 3 years ago

  • Priority changed from Normal to High

#7 Updated by msuraev almost 3 years ago

  • Status changed from New to In Progress
  • % Done changed from 0 to 10

Encoding/decoding support for 11-bit RACH for libosmocoding is available in gerrit 5062.

#8 Updated by msuraev almost 3 years ago

  • Related to Bug #1854: 11-bit RACH support breaks default 8-bit RACH: collisions are possible added

#9 Updated by msuraev almost 3 years ago

  • Status changed from In Progress to Stalled
  • % Done changed from 10 to 20

Gerrit 5062 has been merged. Have to verify whether 11-bit RACH is supported on sysmoBTS.

#10 Updated by msuraev over 2 years ago

Test with "gprs 11bit_rach_support_for_egprs" failed - seems like smth wasn't merged/missing. See related BTS bug.

#11 Updated by laforge over 2 years ago

  • Assignee changed from msuraev to sysmocom

#12 Updated by laforge over 2 years ago

  • Assignee changed from sysmocom to lynxis

#13 Updated by fixeria about 2 years ago

The following patch should implement 11-bit RACH support of osmo-bts-trx:

https://gerrit.osmocom.org/#/c/osmo-bts/+/6315/

but should be properly tested.

#14 Updated by laforge about 2 years ago

  • Assignee changed from lynxis to msuraev

#15 Updated by msuraev almost 2 years ago

  • Has duplicate Bug #1834: Extended (11-bit) RACH is not properly handled added

#16 Updated by msuraev almost 2 years ago

  • Related to Feature #3054: Extended (11-bit) RACH support in OsmoTRX added

#17 Updated by msuraev over 1 year ago

  • Related to Feature #3014: fix re-apply patches reverted by #3013, related: UL and DL packet assignment, and Timing Advance added

#18 Updated by laforge over 1 year ago

  • Assignee changed from msuraev to fixeria

#19 Updated by fixeria about 1 year ago

  • Assignee deleted (fixeria)

Both osmo-trx and osmo-bts-trx do support 11-bit encoded Access Bursts now. We also have a TTCN-3 test case for that (see BTS_Tests.TC_pcu_ext_rach_content) and it passes. However, all my attempts to test the network with the real phones have been unsuccessful. Unfortunately, I have no time to investigate further now.

#20 Updated by laforge 9 months ago

  • Assignee set to daniel
  • Priority changed from High to Normal

#21 Updated by pespin 9 months ago

  • Related to Bug #4338: Add EGPRS tests toTTCN3 PCU_Tests_RAW added

#22 Updated by pespin 9 months ago

I'm trying to add some TTCN3 tests with 11bit RACH support for osmo-pcu in PCU_Tests_RAW as part of #4338. I'd say that's all what's missing here.

#23 Updated by fixeria 9 months ago

I'd say that's all what's missing here.

I don't think so. OsmoPCU does not seem to handle 11-bit RACH correctly when running with osmo-trx and osmo-bts-trx.

#24 Updated by fixeria 7 months ago

  • Spec Reference set to 3GPP TS 44.004, section 7.4a; 3GPP TS 44.060, sections 11.2.5 and 11.2.5a

#25 Updated by fixeria 7 months ago

OsmoPCU does not seem to handle 11-bit RACH correctly when running with osmo-trx and osmo-bts-trx.

https://gerrit.osmocom.org/c/libosmocore/+/17692/ tests/coding: add 11-bit Access Burst samples from a real phone
https://gerrit.osmocom.org/c/libosmocore/+/17693/ coding: fix bit ordering in 11-bit RACH coding functions

With this fix applied, OsmoPCU works much better when running with osmo-bts-trx.
I also have a (draft) TTCN-3 test case for OsmoPCU.

#26 Updated by fixeria 7 months ago

I also have a (draft) TTCN-3 test case for OsmoPCU.

https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/17704/ library/RLCMAC_CSN1_Types: add EGPRS Packet Channel Request definition
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/17706/ PCU: add test cases for EGPRS Packet Channel Request

For some reason, TITAN decodes different extended RA value in IA Rest Octets...
Any help would be appreciated. Wireshark shows that everything is ok (as expected).

#27 Updated by fixeria 6 months ago

  • % Done changed from 20 to 60

TTCN-3 test cases have been merged and, as can be seen, they're passing in Jenkins.

Though I am still not satisfied by some code parts handling 11 bit EGPRS Packet Channel Request in osmo-pcu, for example:

static inline uint16_t mslot_class_from_ra(uint16_t ra, bool is_11bit)
{
        if (is_11bit)
                return (ra & 0x3e0) >> 5;

        /* set multislot class to 0 for 8-bit RACH, since we don't know it yet */
        return 0;
}

The way we parse the multislot class does not seem to be correct, because it's optional and its presence depends on type of EGPRS Packet Channel Request. I believe we should implement proper parsing, and here is a draft change for that: https://gerrit.osmocom.org/c/osmo-pcu/+/17718.

#28 Updated by laforge 6 months ago

  • Assignee changed from daniel to fixeria

#29 Updated by fixeria 5 months ago

  • Status changed from Stalled to In Progress

I just realized that RR Immediate Assignment Reject (IAR Rest Octets) should also contain Extended RA, when sent in response to EGPRS Packet Access Request. More details can be found in 3GPP TS 44.018, section 10.5.2.17.

#30 Updated by fixeria 5 months ago

Actually, Encoding::write_immediate_assignment_reject() does support writing IAR Rest Octets with Extended RA. We just need a TTCN-3 test case.

#31 Updated by fixeria 5 months ago

  • % Done changed from 60 to 80

Actually, Encoding::write_immediate_assignment_reject() does support writing IAR Rest Octets with Extended RA. We just need a TTCN-3 test case.

https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18420/ library/GSM_RR_Types: fix definition of FeatureIndicator
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18421/ library/GSM_RR_Types: add IAR Rest Octets definition
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18422/ library/GSM_RR_Types: add receive templates for IMM ASS Reject
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18423/ PCU: introduce TC_egprs_pkt_chan_req_reject_content
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18424/ PCU: introduce TC_egprs_pkt_chan_req_reject_emergency

#32 Updated by fixeria 5 months ago

https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18425 PCU: introduce TC_egprs_pkt_chan_req_reject_exhaustion

#33 Updated by fixeria 5 months ago

While working on EGPRS Packet Channel Request coding support, I discovered and fixed some problems in CSN.1 codec:

https://gerrit.osmocom.org/c/osmo-pcu/+/18430/ csn1: fix M_CHOICE: restirct maximum length of the choice list
https://gerrit.osmocom.org/c/osmo-pcu/+/18431/ csn1: fix csnStreamEncoder(): also check length of the choice list
https://gerrit.osmocom.org/c/osmo-pcu/+/18432/ csn1: fix csnStreamEncoder(): always check the choice index
https://gerrit.osmocom.org/c/osmo-pcu/+/18433/ csn1: fix: never use enumerated types in codec structures

#34 Updated by fixeria 5 months ago

  • Status changed from In Progress to Feedback
  • % Done changed from 80 to 100

All previously submitted changes have been merged. These two new changes are waiting for review:

https://gerrit.osmocom.org/c/osmo-pcu/+/18386/ bts: refactor handling and parsing of RACH.ind
https://gerrit.osmocom.org/c/osmo-pcu/+/18387/ BTS::parse_rach_ind(): properly handle EGPRS Packet Channel Request

as soon as they're merged, we can finally close this ticket.

#35 Updated by fixeria 5 months ago

  • Status changed from Feedback to Resolved

All patches have been merged.

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)