osmo-gmr 0.2.104-2b98
Osmocom GMR-1

Files

file  dkab.h
 Osmocom GMR-1 DKABs bursts header.
 
file  dkab.c
 Osmocom GMR-1 DKABs bursts implementation.
 

Macros

#define GMR1_DKAB_SYMS   (39*3)
 
#define DKAB_PWR_RATIO_THRESHOLD   10.0f
 Ratio between peak power and valley power for DKAB detection.
 

Functions

int gmr1_dkab_demod (struct osmo_cxvec *burst_in, int sps, float freq_shift, int p, sbit_t *ebits, float *toa_p)
 All-in-one finding and demodulation of DKAB bursts. More...
 

Detailed Description

Function Documentation

◆ gmr1_dkab_demod()

int gmr1_dkab_demod ( struct osmo_cxvec burst_in,
int  sps,
float  freq_shift,
int  p,
sbit_t *  ebits,
float *  toa_p 
)

All-in-one finding and demodulation of DKAB bursts.

Parameters
[in]burst_inComplex signal of the burst
[in]spsOversampling used in the input complex signal
[in]freq_shiftFrequency shift to pre-apply to burst_in (rad/sym)
[in]pDKAB position
[out]ebitsEncoded soft bits return array
[out]toa_pPointer to TOA return variable
Returns
0 for success, 1 if DKAB not found, -errno for fatal errors

burst_in is expected to be longer than necessary. Any extra length will be used as 'search window' to find proper alignement. Good practice is to have a few samples too much in front and a few samples after the expected TOA.

References M_PIf, and osmo_cxvec_sig_normalize().