mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2026-10-28 10:14:33 +00:00
Visibility-aware acquisition search (GNSS-SDR.enable_visibility_aware_search): - Classify GLONASS and QZSS satellites too. GLONASS positions come from the GNAV almanac (new Glonass_Gnav_Almanac::satellite_position with the standard perturbation model), so the search order benefits before any GLONASS ephemeris is decoded. - PVT publishes a lock-free navigation snapshot (ephemeris, almanac, UTC models per system) that the classifier reads instead of locking the PVT maps on every recompute. - Recompute on new navigation data, on position changes larger than visibility_recompute_position_threshold_m, every visibility_recompute_interval_s, and when the almanac ages out; fix the periodic and position-triggered recomputes that never fired, and the off-by-one that excluded satellites in [mask, mask+1) degrees. - Enter the start-up standby only when the feature is enabled, so the default search order is untouched. Secondary-frequency acquisition assistance: - Do not start an acquisition on the PRN 0 placeholder left on assisted channels at connect time; it threw inside the control thread and left the flowgraph running headless with the secondary band never acquired. - Match GLONASS assistance by FDMA frequency channel: the search pool keeps one slot per channel while tracked L1 channels report the decoded slot, so L2 was never picked. - Assist from locked channels before their telemetry is decoded: the observables status now reports tracking-only channels and the flowgraph keeps a separate tracking map for the assisted search.