Browse Source

commander: fix enable_failsafe reason (#19391)

- In this case, no action is configured for datalink lost. Action is configured for RC lost.
 - In case of no data link and no rc failsafe is enabled but reporting a "no_datalink" reason but "no_rc_and_no_datalink" seems more explicit.
v1.13.0-BW
Nicolas MARTIN 3 years ago committed by GitHub
parent
commit
eb1bb4335b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 6
      src/modules/commander/state_machine_helper.cpp

6
src/modules/commander/state_machine_helper.cpp

@ -412,7 +412,7 @@ bool set_nav_state(vehicle_status_s &status, actuator_armed_s &armed, commander_ @@ -412,7 +412,7 @@ bool set_nav_state(vehicle_status_s &status, actuator_armed_s &armed, commander_
// All links lost, no data link loss reaction configured -> immediately do RC loss reaction
// Lost all communication, by default it's considered unsafe to continue the mission
// This is only reached when flying mission completely without RC (it was not present since boot)
enable_failsafe(status, old_failsafe, mavlink_log_pub, event_failsafe_reason_t::no_datalink);
enable_failsafe(status, old_failsafe, mavlink_log_pub, event_failsafe_reason_t::no_rc_and_no_datalink);
set_link_loss_nav_state(status, armed, status_flags, internal_state, rc_loss_act, 0);
} else if (status.rc_signal_lost && (param_com_rcl_except & RCLossExceptionBits::RCL_EXCEPT_MISSION)
@ -462,7 +462,7 @@ bool set_nav_state(vehicle_status_s &status, actuator_armed_s &armed, commander_ @@ -462,7 +462,7 @@ bool set_nav_state(vehicle_status_s &status, actuator_armed_s &armed, commander_
// All links lost, no data link loss reaction configured -> immediately do RC loss reaction
// Lost all communication, by default it's considered unsafe to continue the mission
// This is only reached when flying mission completely without RC (it was not present since boot)
enable_failsafe(status, old_failsafe, mavlink_log_pub, event_failsafe_reason_t::no_datalink);
enable_failsafe(status, old_failsafe, mavlink_log_pub, event_failsafe_reason_t::no_rc_and_no_datalink);
set_link_loss_nav_state(status, armed, status_flags, internal_state, rc_loss_act, 0);
} else {
@ -578,7 +578,7 @@ bool set_nav_state(vehicle_status_s &status, actuator_armed_s &armed, commander_ @@ -578,7 +578,7 @@ bool set_nav_state(vehicle_status_s &status, actuator_armed_s &armed, commander_
// All links lost, no data link loss reaction configured -> immediately do RC loss reaction
// Lost all communication, by default it's considered unsafe to continue the mission
// This is only reached when flying mission completely without RC (it was not present since boot)
enable_failsafe(status, old_failsafe, mavlink_log_pub, event_failsafe_reason_t::no_datalink);
enable_failsafe(status, old_failsafe, mavlink_log_pub, event_failsafe_reason_t::no_rc_and_no_datalink);
set_link_loss_nav_state(status, armed, status_flags, internal_state, rc_loss_act, 0);
} else {

Loading…
Cancel
Save