Project

General

Profile

Actions

Bug #4500

open

osmo-bts-{sysmo,oc2g,litecell15}: PTCCH/U is not enabled on PDCH timeslots

Added by fixeria about 4 years ago. Updated almost 4 years ago.

Status:
Stalled
Priority:
Normal
Assignee:
Category:
osmo-bts-sysmo
Target version:
-
Start date:
04/18/2020
Due date:
% Done:

40%

Spec Reference:

Description

Enabling GsmL1_Sapi_Ptcch on direction GsmL1_Dir_RxUplink fails for the black-box DSP based models:

<0006> oml.c:511 activating (bts=0,trx=0,ts=7,ss=0) pchan=PDCH ts_connect_as(PDCH) logChComb=pdtch
<0006> oml.c:808 Successful activation of L1 SAPI PDTCH on TS 7  <-- Downlink
<0006> oml.c:808 Successful activation of L1 SAPI PTCCH on TS 7  <-- Downlink
<0006> oml.c:808 Successful activation of L1 SAPI PRACH on TS 7  <-- Uplink
<0006> oml.c:808 Successful activation of L1 SAPI PDTCH on TS 7  <-- Uplink
<0006> oml.c:813 Error activating L1 SAPI PTCCH on TS 7: Invalid parameter  <-- Uplink

This is needed in order to support Continuous Timing Advance procedures on PDCH (see #1545).

At the moment we can only send PTCCH blocks on Downlink, while the Access Burst (PTCCH/U) detection task is not enabled:

static const struct sapi_dir pdtch_sapis[] = {
    { GsmL1_Sapi_Pdtch,     GsmL1_Dir_TxDownlink },
    { GsmL1_Sapi_Pdtch,     GsmL1_Dir_RxUplink },
    { GsmL1_Sapi_Ptcch,     GsmL1_Dir_TxDownlink },
    { GsmL1_Sapi_Prach,     GsmL1_Dir_RxUplink },
#if 0
    { GsmL1_Sapi_Ptcch,     GsmL1_Dir_RxUplink }, // <-- PTCCH/U
    { GsmL1_Sapi_Pacch,     GsmL1_Dir_TxDownlink },
#endif
};

This SAPI has been disabled on purpose, because the error indication breaks dynamic timeslots in the BSC (see #1796).

My best guess is that the DSP does not allow to enable both GsmL1_Sapi_Prach (Uplink) and GsmL1_Sapi_Ptcch (Uplink) at the same time. As was pointed out by Max, according to the DSP's docs the only channel combination with PTCCH support is GsmL1_LogChComb_XIII. As per 3GPP TS 45.002, this combination XIII includes the following channels:

  • PDTCH/F
  • PACCH/F
  • PTCCH/F

and PRACH is not a part of it! Perhaps we should enable GsmL1_Sapi_Pacch on GsmL1_Dir_RxUplink instead of GsmL1_Sapi_Prach in order to support Packet Control Ack in form of four Access Bursts, and try enabling GsmL1_Sapi_Ptcch on GsmL1_Dir_RxUplink:

static const struct sapi_dir pdtch_sapis[] = {
    { GsmL1_Sapi_Pdtch,     GsmL1_Dir_TxDownlink },
    { GsmL1_Sapi_Pdtch,     GsmL1_Dir_RxUplink },
    /* PTCCH/D and PTCCH/U for Continuous Timing Advance loop */
    { GsmL1_Sapi_Ptcch,     GsmL1_Dir_TxDownlink },
    { GsmL1_Sapi_Ptcch,     GsmL1_Dir_RxUplink },
    /* Packet Control Ack in form of four Access Bursts */
    { GsmL1_Sapi_Pacch,     GsmL1_Dir_RxUplink },
};

I don't have a possibility to verify my (potentially wrong) assumption, so waiting for remote access to be provided by laforge.


Related issues

Related to OsmoBTS - Bug #1796: PTCCH activation breaks dyn TSClosed08/10/2016

Actions
Related to OsmoPCU - Feature #1545: continuous timing advance loop using PTCCHStalledfixeria02/23/2016

Actions
Related to OsmoBTS - Bug #4501: osmo-bts-{sysmo,oc2g,litecell15}: Packet Control Ack (in form of Access Bursts) arrives on PRACH?!?Resolvedfixeria04/18/2020

Actions
Actions

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)