ekf2: fix timeout after gps failure (#23346)

This commit is contained in:
Marco Hauswirth
2024-07-02 10:38:49 -04:00
committed by GitHub
parent 0742d356f5
commit 3880073716
5 changed files with 712 additions and 711 deletions
@@ -63,7 +63,8 @@ void Ekf::controlGpsFusion(const imuSample &imu_delayed)
if (_gps_data_ready) {
const gnssSample &gnss_sample = _gps_sample_delayed;
if (runGnssChecks(gnss_sample) && isTimedOut(_last_gps_fail_us, (uint64_t)_min_gps_health_time_us / 2)) {
if (runGnssChecks(gnss_sample)
&& isTimedOut(_last_gps_fail_us, max((uint64_t)1e6, (uint64_t)_min_gps_health_time_us / 10))) {
if (isTimedOut(_last_gps_fail_us, (uint64_t)_min_gps_health_time_us)) {
// First time checks are passing, latching.
_gps_checks_passed = true;