You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Apr 13, 2021. It is now read-only.
The gnss_signal_t is often initialised to {0, 0, 0}
For example in the tracking channel state.
All PRN values for all constellations start at some number >0. E.g. 1 for GPS. Thus PRN = 0 is invalid.
When this invalid value is passed to sid_to_sbp the SBP wire values become {0, 0, 65535}. This is because for CONSTELLATION_GPS (which is 0) we subtract 1 from the PRN for compatibility with old Piksi's and consoles.
We discovered a bug in the SBP log analysis tool where this 65535 value caused a crash.
Improvements needed:
define in the SBP documentation that {0, 0, 0} is invalid
possibly add asserts that {0, 0, 0} or {0, 0, 65535} is not sent in SBP wire
The
gnss_signal_t
is often initialised to{0, 0, 0}
For example in the tracking channel state.
All PRN values for all constellations start at some number >0. E.g. 1 for GPS. Thus PRN = 0 is invalid.
When this invalid value is passed to
sid_to_sbp
the SBP wire values become{0, 0, 65535}
. This is because forCONSTELLATION_GPS
(which is 0) we subtract 1 from the PRN for compatibility with old Piksi's and consoles.We discovered a bug in the SBP log analysis tool where this 65535 value caused a crash.
Improvements needed:
{0, 0, 0}
is invalid{0, 0, 0}
or{0, 0, 65535}
is not sent in SBP wire/cc @swift-nav/firmware @swift-nav/hitl @jacobmcnamee
The text was updated successfully, but these errors were encountered: