From 34c0bb17239877112416765d8fa71d518d19c077 Mon Sep 17 00:00:00 2001 From: Martina Rivizzigno Date: Wed, 13 Mar 2019 11:30:48 +0100 Subject: [PATCH] ObstacleAvoidance: don't inject avoidance setpoint when in loiter mode since it's the failsafe mode --- src/lib/FlightTasks/tasks/Utility/ObstacleAvoidance.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/lib/FlightTasks/tasks/Utility/ObstacleAvoidance.cpp b/src/lib/FlightTasks/tasks/Utility/ObstacleAvoidance.cpp index 943b613dba..a2d42801ee 100644 --- a/src/lib/FlightTasks/tasks/Utility/ObstacleAvoidance.cpp +++ b/src/lib/FlightTasks/tasks/Utility/ObstacleAvoidance.cpp @@ -88,7 +88,8 @@ void ObstacleAvoidance::prepareAvoidanceSetpoints(Vector3f &pos_sp, Vector3f &ve float &yaw_speed_sp) { - if (!COM_OBS_AVOID.get()) { + if (!COM_OBS_AVOID.get() || _sub_vehicle_status->get().nav_state == vehicle_status_s::NAVIGATION_STATE_AUTO_LOITER) { + // if avoidance disabled or in failsafe nav_state LOITER, don't inject setpoints from avoidance system return; }