From c033ef959a16ce135ff1f04bd78c1a52bf39bddd Mon Sep 17 00:00:00 2001 From: Andreas Antener Date: Sun, 20 Dec 2015 17:41:47 +0100 Subject: [PATCH] proper setpoint handling on takeoff, switch to loiter sp when takeoff finished --- src/modules/navigator/takeoff.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/modules/navigator/takeoff.cpp b/src/modules/navigator/takeoff.cpp index 9851212320..2effa1b042 100644 --- a/src/modules/navigator/takeoff.cpp +++ b/src/modules/navigator/takeoff.cpp @@ -99,5 +99,11 @@ Takeoff::on_active() if (is_mission_item_reached() && !_navigator->get_mission_result()->finished) { _navigator->get_mission_result()->finished = true; _navigator->set_mission_result_updated(); + + /* set loiter item so position controllers stop doing takeoff logic */ + set_loiter_item(&_mission_item); + struct position_setpoint_triplet_s *pos_sp_triplet = _navigator->get_position_setpoint_triplet(); + mission_item_to_position_setpoint(&_mission_item, &pos_sp_triplet->current); + _navigator->set_position_setpoint_triplet_updated(); } }