From 78d1fc9a13f84b273facb2f22a291c3d2e6ebd33 Mon Sep 17 00:00:00 2001 From: Alexander Chemeris Date: Sat, 19 Mar 2016 21:16:22 +0300 Subject: transceiver: Properly handle MAXDLY. Previously MAXDLY value was applied to Normal Bursts, which was nice when working with sloppy test equipment like CMD57, but useless for real world usage. At the same time documentation and de facto usage of MAXDLY in OsmoBTS and OpenBTS assumed that it actually applies to Access Bursts (RACH). So this patch changes osmo-rx behavior to apply MAXDLY to RACH bursts and introduces a new command MAXDLYNB for the old behavior. --- Transceiver52M/sigProcLib.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'Transceiver52M/sigProcLib.cpp') diff --git a/Transceiver52M/sigProcLib.cpp b/Transceiver52M/sigProcLib.cpp index f3fa4f0..9674aa8 100644 --- a/Transceiver52M/sigProcLib.cpp +++ b/Transceiver52M/sigProcLib.cpp @@ -1816,21 +1816,22 @@ int detectGeneralBurst(signalVector &rxBurst, * * Correlation window parameters: * target: Tail bits + RACH length (reduced from 41 to a multiple of 4) - * head: Search 4 symbols before target - * tail: Search 10 symbols after target + * head: Search 4 symbols before target + * tail: Search 4 symbols + maximum expected delay */ int detectRACHBurst(signalVector &rxBurst, float thresh, int sps, complex &, - float &toa) + float &toa, + unsigned maxTOA) { int rc, target, head, tail; CorrelationSequence *sync; target = 8 + 40; head = 4; - tail = 10; + tail = 4 + maxTOA; sync = gRACHSequence; rc = detectGeneralBurst(rxBurst, thresh, sps, amp, toa, -- cgit v1.2.3