From 983dd4db29003262501160610dd6e04f6a14b48f Mon Sep 17 00:00:00 2001 From: Thomas Stauber <48206725+ThomasRigi@users.noreply.github.com> Date: Tue, 5 Oct 2021 14:40:14 +0200 Subject: [PATCH] don't switch to SETPOINT_TYPE_LOITER during transitions (#18350) --- src/modules/fw_pos_control_l1/FixedwingPositionControl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/fw_pos_control_l1/FixedwingPositionControl.cpp b/src/modules/fw_pos_control_l1/FixedwingPositionControl.cpp index 3043358fd4..52ca7a065b 100644 --- a/src/modules/fw_pos_control_l1/FixedwingPositionControl.cpp +++ b/src/modules/fw_pos_control_l1/FixedwingPositionControl.cpp @@ -842,7 +842,7 @@ FixedwingPositionControl::control_position(const hrt_abstime &now, const Vector2 if (pos_sp_curr.type == position_setpoint_s::SETPOINT_TYPE_POSITION) { // POSITION: achieve position setpoint altitude via loiter // close to waypoint, but altitude error greater than twice acceptance - if ((dist >= 0.f) + if ((!_vehicle_status.in_transition_mode) && (dist >= 0.f) && (dist_z > 2.f * _param_fw_clmbout_diff.get()) && (dist_xy < 2.f * math::max(acc_rad, fabsf(pos_sp_curr.loiter_radius)))) { // SETPOINT_TYPE_POSITION -> SETPOINT_TYPE_LOITER