From c883e46d797f4986d24c695cbf4e36faa8ed5b67 Mon Sep 17 00:00:00 2001 From: Clyde McQueen Date: Mon, 8 Jun 2026 15:37:52 -0700 Subject: [PATCH] Sub: small Auto_TerrainRecover fixes --- ArduSub/mode_auto.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ArduSub/mode_auto.cpp b/ArduSub/mode_auto.cpp index ad140b238d2..9564cab5989 100644 --- a/ArduSub/mode_auto.cpp +++ b/ArduSub/mode_auto.cpp @@ -497,7 +497,7 @@ void ModeAuto::auto_terrain_recover_run() break; case RangeFinder::Status::OutOfRangeHigh: - target_climb_rate = sub.wp_nav.get_default_speed_down_cms(); + target_climb_rate = -sub.wp_nav.get_default_speed_down_cms(); rangefinder_recovery_ms = 0; break; @@ -538,6 +538,7 @@ void ModeAuto::auto_terrain_recover_run() #else gcs().send_text(MAV_SEVERITY_CRITICAL, "Terrain failsafe recovery failure: No Rangefinder!"); sub.failsafe_terrain_act(); + return; #endif // exit on failure (timeout) @@ -545,6 +546,7 @@ void ModeAuto::auto_terrain_recover_run() // Recovery has failed, revert to failsafe action gcs().send_text(MAV_SEVERITY_CRITICAL, "Terrain failsafe recovery timeout!"); sub.failsafe_terrain_act(); + return; } // run loiter controller