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.
This commit is contained in:
Nicolas MARTIN 2022-04-09 20:30:49 +02:00 committed by GitHub
parent 091fca701e
commit eb1bb4335b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 3 deletions

View File

@ -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 // 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 // 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) // 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); 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) } 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_
// All links lost, no data link loss reaction configured -> immediately do RC loss reaction // 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 // 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) // 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); set_link_loss_nav_state(status, armed, status_flags, internal_state, rc_loss_act, 0);
} else { } else {
@ -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 // 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 // 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) // 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); set_link_loss_nav_state(status, armed, status_flags, internal_state, rc_loss_act, 0);
} else { } else {