diff --git a/libraries/AP_GPS/AP_GPS_SBF.cpp b/libraries/AP_GPS/AP_GPS_SBF.cpp index 569d5b6910ec4..be5dd5cfa8f94 100644 --- a/libraries/AP_GPS/AP_GPS_SBF.cpp +++ b/libraries/AP_GPS/AP_GPS_SBF.cpp @@ -453,9 +453,8 @@ AP_GPS_SBF::process_message(void) set_alt_amsl_cm(state, ((float)temp.Height - temp.Undulation) * 1e2f); } - if (temp.NrSV != 255) { - state.num_sats = temp.NrSV; - } + // Important to reset count if DNU to use IMU instead + state.num_sats = temp.NrSV != 255 ? temp.NrSV : 0; Debug("temp.Mode=0x%02x\n", (unsigned)temp.Mode); switch (temp.Mode & 15) {