When looking at the fixDiagnostic, I am never seeing DGNSS,RTK FLOAT and RTK FIX
Expected behavior
RTK status should be added to diagnostic messages.
void fixDiagnostic(diagnostic_updater::DiagnosticStatusWrapper& stat) {
...
// If DGNSS, then update the differential solution status
if (last_nav_pvt_.flags & ublox_msgs::NavPVT::CARRIER_PHASE_FLOAT) {
stat.message += ", FLOAT FIX";
} else if (last_nav_pvt_.flags & ublox_msgs::NavPVT::CARRIER_PHASE_FIXED) {
stat.message += ", RTK FIX";
}
In the message definition we have:
uint8 FLAGS_CARRIER_PHASE_MASK = 192 # Carrier Phase Range Solution Status
uint8 CARRIER_PHASE_NO_SOLUTION = 0 # no carrier phase range solution
uint8 CARRIER_PHASE_FLOAT = 64 # carrier phase float solution (no fixed
# integer measurements have been used to
# calculate the solution)
uint8 CARRIER_PHASE_FIXED = 128 # fixed solution (>=1 fixed integer
# carrier phase range measurements have
# been used to calculate the solution)
I think we should compare flags with FLAGS_CARRIER_PHASE_MASK instead of CARRIER_PHASE_FLOAT or CARRIER_PHASE_FIXED which is the expected result from flags.
When looking at the fixDiagnostic, I am never seeing DGNSS,RTK FLOAT and RTK FIX
Expected behavior RTK status should be added to diagnostic messages.
In the message definition we have:
I think we should compare flags with FLAGS_CARRIER_PHASE_MASK instead of CARRIER_PHASE_FLOAT or CARRIER_PHASE_FIXED which is the expected result from flags.