Browse Source

Commander: Fix modes switching back to prev mode

sbg
Lorenz Meier 9 years ago
parent
commit
befab7303f
  1. 15
      src/modules/commander/commander.cpp

15
src/modules/commander/commander.cpp

@ -2590,15 +2590,12 @@ int commander_thread_main(int argc, char *argv[])
} }
} }
/* reset main state after takeoff or land has been completed */ /* reset main state after takeoff has completed */
/* only switch back to at least altitude controlled modes */ /* only switch back to posctl */
if (main_state_prev == commander_state_s::MAIN_STATE_POSCTL || if (main_state_prev == commander_state_s::MAIN_STATE_POSCTL) {
main_state_prev == commander_state_s::MAIN_STATE_ALTCTL) {
if (internal_state.main_state == commander_state_s::MAIN_STATE_AUTO_TAKEOFF
if ((internal_state.main_state == commander_state_s::MAIN_STATE_AUTO_TAKEOFF && mission_result.finished) {
&& mission_result.finished) ||
(internal_state.main_state == commander_state_s::MAIN_STATE_AUTO_LAND
&& land_detector.landed)) {
main_state_transition(&status, main_state_prev, main_state_prev, &status_flags, &internal_state); main_state_transition(&status, main_state_prev, main_state_prev, &status_flags, &internal_state);
} }

Loading…
Cancel
Save