diff --git a/libraries/AP_GPS/AP_GPS_SBF.cpp b/libraries/AP_GPS/AP_GPS_SBF.cpp index 9981344baa9a68..40a0dbe32038a8 100644 --- a/libraries/AP_GPS/AP_GPS_SBF.cpp +++ b/libraries/AP_GPS/AP_GPS_SBF.cpp @@ -455,9 +455,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) {