diff --git a/src/lib/FlightTasks/tasks/FlightTaskAuto.cpp b/src/lib/FlightTasks/tasks/FlightTaskAuto.cpp index 96ddb25c10..26e08460c4 100644 --- a/src/lib/FlightTasks/tasks/FlightTaskAuto.cpp +++ b/src/lib/FlightTasks/tasks/FlightTaskAuto.cpp @@ -50,6 +50,10 @@ bool FlightTaskAuto::initializeSubscriptions(SubscriptionArray &subscription_arr return false; } + if (!subscription_array.get(ORB_ID(home_position), _sub_home_position)) { + return false; + } + return true; } diff --git a/src/lib/FlightTasks/tasks/FlightTaskAuto.hpp b/src/lib/FlightTasks/tasks/FlightTaskAuto.hpp index dae425b7a7..a7fe25f672 100644 --- a/src/lib/FlightTasks/tasks/FlightTaskAuto.hpp +++ b/src/lib/FlightTasks/tasks/FlightTaskAuto.hpp @@ -42,6 +42,7 @@ #include "FlightTask.hpp" #include #include +#include #include /** @@ -77,6 +78,8 @@ protected: float _mc_cruise_speed{0.0f}; /**< Requested cruise speed. If not valid, default cruise speed is used. */ WaypointType _type{WaypointType::idle}; /**< Type of current target triplet. */ + uORB::Subscription *_sub_home_position{nullptr}; + private: uORB::Subscription *_sub_triplet_setpoint{nullptr};