Skip to main content

PpRx Tuning Tips

The parameters below are usually the most impactful knobs for tuning PpRx performance for a given application.

Signal Acquisition

  • MAX_ACQ_SEARCH_DEPTH: Adjusts the number of non-coherent integration intervals used in signal acquisition. For clean RF environments, set this value lower to reduce CPU overhead (2 to 5). For difficult RF environments, set this value higher to increase SNR and the probability of acquiring a signal (6 to 10).
  • NOM_MIN_DOPPLER_FREQ_HZ / NOM_MAX_DOPPLER_FREQ_HZ: Adjusts the range of Doppler frequency offsets searched during acquisition. For low-speed vehicles, moderate ranges (-4000 to +4000) work well. For higher-speed vehicles, increase this range (-7000 to +7000).
  • DIRECTED_ACQ_ONLY: Forces signals in the specified bank to be acquired with aiding information from other banks. This can save CPU overhead, but should be used carefully if the aiding bank is expected to experience interference.

Tracking Loops

  • EML_CHIP_SPACING: Adjusts the spacing between the early-minus-late correlators within the tracking loops. For high precision in clean RF environments, set low (0.1 to 0.2). For robust performance in contested environments, set high (0.3 to 0.5).
  • NUM_SUBACCUM_PER_ACCUM: Sets the coherent integration interval for signals in the specified bank. For highly dynamic vehicles, set this value low (1 to 5 on GPS L1 C/A). For degraded environments, set it higher (10 to 20 on GPS L1 C/A).
  • PLL_DEFAULT_BANDWIDTH_HZ: Sets the carrier phase tracking gain. Lower values improve stability but reduce responsiveness to fast changes. Higher values (25 to 35) are better for highly dynamic use cases.
  • DLL_DEFAULT_BANDWIDTH_HZ: Sets the code phase tracking gain. Lower values improve stability but reduce responsiveness. Higher values are generally better for highly dynamic use cases.

Estimator Behavior

  • ZENITH_PSEUDORANGE_STD / ZENITH_DOPPLER_STD: Tunes the estimator's trust in the observables. Higher values make the estimator slower to respond but can reduce noise. Lower values increase trust in incoming measurements.
  • SQRT_Q_TILDE: Tunes the estimator's trust in the continuity of the vehicle dynamics. Lower values assume more predictable dynamics, while higher values are appropriate for aggressive changes in motion.
  • CLOCK_TYPE: Adjusts the assumed sampling clock quality. For RadioLion's SiTime 5155 TCXO, it should be set to TCXO.
  • DYNAMICS_MODEL: Sets the overall motion model for the receiver. For nearly all applications, choose STATIC for a stationary receiver or NEARLY_CONSTANT_VELOCITY for a dynamic receiver.