switching to prev main state after landing when disarmed

This commit is contained in:
Andreas Antener
2015-12-17 10:51:56 +01:00
committed by Lorenz Meier
parent fbf42c8949
commit bfb862763c
+2 -4
View File
@@ -2349,20 +2349,18 @@ int commander_thread_main(int argc, char *argv[])
} }
} }
/* handle main state after takeoff and land */ /* reset main state after takeoff and land */
if (status.main_state == vehicle_status_s::MAIN_STATE_AUTO_TAKEOFF if (status.main_state == vehicle_status_s::MAIN_STATE_AUTO_TAKEOFF
&& mission_result.finished) { && mission_result.finished) {
// transition back to state we had before takeoff
if (status.main_state_prev < vehicle_status_s::MAIN_STATE_MAX if (status.main_state_prev < vehicle_status_s::MAIN_STATE_MAX
&& status.main_state_prev != vehicle_status_s::MAIN_STATE_AUTO_LAND) { && status.main_state_prev != vehicle_status_s::MAIN_STATE_AUTO_LAND) {
main_state_transition(&status, status.main_state_prev); main_state_transition(&status, status.main_state_prev);
} }
} else if (status.main_state == vehicle_status_s::MAIN_STATE_AUTO_LAND } else if (status.main_state == vehicle_status_s::MAIN_STATE_AUTO_LAND
&& status.condition_landed) { && status.arming_state == vehicle_status_s::ARMING_STATE_STANDBY) {
// transition back to state we had before takeoff
if (status.main_state_prev < vehicle_status_s::MAIN_STATE_MAX if (status.main_state_prev < vehicle_status_s::MAIN_STATE_MAX
&& status.main_state_prev != vehicle_status_s::MAIN_STATE_AUTO_TAKEOFF) { && status.main_state_prev != vehicle_status_s::MAIN_STATE_AUTO_TAKEOFF) {
main_state_transition(&status, status.main_state_prev); main_state_transition(&status, status.main_state_prev);