From fc4fa169df9356203782c5912171495fb6556514 Mon Sep 17 00:00:00 2001 From: Dennis Mannhart Date: Thu, 24 May 2018 08:50:46 +0200 Subject: [PATCH] FlightTaskManualStabilized: valid yaw is required --- .../FlightTasks/tasks/FlightTaskManualStabilized.cpp | 11 +++++++---- .../FlightTasks/tasks/FlightTaskManualStabilized.hpp | 1 + 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/lib/FlightTasks/tasks/FlightTaskManualStabilized.cpp b/src/lib/FlightTasks/tasks/FlightTaskManualStabilized.cpp index 29597e2625..9d6dfaa41f 100644 --- a/src/lib/FlightTasks/tasks/FlightTaskManualStabilized.cpp +++ b/src/lib/FlightTasks/tasks/FlightTaskManualStabilized.cpp @@ -62,13 +62,16 @@ bool FlightTaskManualStabilized::activate() _yaw_setpoint = _yaw; _yawspeed_setpoint = 0.0f; _constraints.tilt = math::radians(_tilt_max_man.get()); - - // need a valid yaw - ret = ret && PX4_ISFINITE(_yaw); - return ret; } +bool FlightTaskManualStabilized::updateInitialize() +{ + bool ret = FlightTaskManual::updateInitialize(); + // need a valid yaw-state + return ret && PX4_ISFINITE(_yaw); +} + void FlightTaskManualStabilized::_scaleSticks() { /* Scale sticks to yaw and thrust using diff --git a/src/lib/FlightTasks/tasks/FlightTaskManualStabilized.hpp b/src/lib/FlightTasks/tasks/FlightTaskManualStabilized.hpp index 1dcd2ce788..e8e9e20865 100644 --- a/src/lib/FlightTasks/tasks/FlightTaskManualStabilized.hpp +++ b/src/lib/FlightTasks/tasks/FlightTaskManualStabilized.hpp @@ -50,6 +50,7 @@ public: virtual ~FlightTaskManualStabilized() = default; bool activate() override; + bool updateInitialize() override; bool update() override; bool initializeSubscriptions(SubscriptionArray &subscription_array) override;