From 6934bc908e08c287a2b9d558f19fd39ba4f6cc00 Mon Sep 17 00:00:00 2001 From: dawr68 <43827522+dawr68@users.noreply.github.com> Date: Tue, 19 Aug 2025 14:28:13 +0200 Subject: [PATCH] airspeed calibration: save offset only when full procedure succeed (#25412) * feat: save offset only when full procedure succeed * feat: zero dpres off on all failures * feat: remove unnecessary param_save_default calls --- .../commander/airspeed_calibration.cpp | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/modules/commander/airspeed_calibration.cpp b/src/modules/commander/airspeed_calibration.cpp index d013eb9e73..f68e9c807b 100644 --- a/src/modules/commander/airspeed_calibration.cpp +++ b/src/modules/commander/airspeed_calibration.cpp @@ -178,10 +178,7 @@ int do_airspeed_calibration(orb_advert_t *mavlink_log_pub) return PX4_ERROR; } - /* save */ calibration_log_info(mavlink_log_pub, CAL_QGC_PROGRESS_MSG, 0); - param_save_default(true); - feedback_calibration_failed(mavlink_log_pub); return PX4_ERROR; } @@ -201,6 +198,14 @@ int do_airspeed_calibration(orb_advert_t *mavlink_log_pub) } if (hrt_elapsed_time(&calibration_started) > 90_s) { + diff_pres_offset = 0.0f; + + if (param_set(param_find("SENS_DPRES_OFF"), &(diff_pres_offset))) { + calibration_log_critical(mavlink_log_pub, CAL_ERROR_SET_PARAMS_MSG); + return PX4_ERROR; + } + + calibration_log_info(mavlink_log_pub, CAL_QGC_PROGRESS_MSG, 0); feedback_calibration_failed(mavlink_log_pub); return PX4_ERROR; } @@ -209,6 +214,14 @@ int do_airspeed_calibration(orb_advert_t *mavlink_log_pub) } if (calibration_counter == maxcount) { + diff_pres_offset = 0.0f; + + if (param_set(param_find("SENS_DPRES_OFF"), &(diff_pres_offset))) { + calibration_log_critical(mavlink_log_pub, CAL_ERROR_SET_PARAMS_MSG); + return PX4_ERROR; + } + + calibration_log_info(mavlink_log_pub, CAL_QGC_PROGRESS_MSG, 0); feedback_calibration_failed(mavlink_log_pub); return PX4_ERROR; }