2022-09-05 02:56:39 -03:00
|
|
|
# Input flags for the failsafe state machine set by the arming & health checks.
|
2022-06-01 09:56:26 -03:00
|
|
|
#
|
2022-04-26 06:07:02 -03:00
|
|
|
# Flags must be named such that false == no failure (e.g. _invalid, _unhealthy, _lost)
|
|
|
|
# The flag comments are used as label for the failsafe state machine simulation
|
2017-01-27 14:00:39 -04:00
|
|
|
|
2018-08-07 10:42:32 -03:00
|
|
|
uint64 timestamp # time since system start (microseconds)
|
2018-08-06 21:30:05 -03:00
|
|
|
|
2022-06-01 09:56:26 -03:00
|
|
|
# Per-mode requirements
|
|
|
|
uint32 mode_req_angular_velocity
|
|
|
|
uint32 mode_req_attitude
|
2022-09-05 02:56:39 -03:00
|
|
|
uint32 mode_req_local_alt
|
2022-06-01 09:56:26 -03:00
|
|
|
uint32 mode_req_local_position
|
2022-08-27 04:40:42 -03:00
|
|
|
uint32 mode_req_local_position_relaxed
|
2022-06-01 09:56:26 -03:00
|
|
|
uint32 mode_req_global_position
|
|
|
|
uint32 mode_req_mission
|
|
|
|
uint32 mode_req_offboard_signal
|
|
|
|
uint32 mode_req_home_position
|
2022-12-08 09:15:18 -04:00
|
|
|
uint32 mode_req_wind_and_flight_time_compliance # if set, mode cannot be entered if wind or flight time limit exceeded
|
2022-06-01 09:56:26 -03:00
|
|
|
uint32 mode_req_prevent_arming # if set, cannot arm while in this mode
|
2022-11-30 11:17:32 -04:00
|
|
|
uint32 mode_req_manual_control
|
2022-06-01 09:56:26 -03:00
|
|
|
uint32 mode_req_other # other requirements, not covered above (for external modes)
|
|
|
|
|
|
|
|
|
2022-09-05 02:56:39 -03:00
|
|
|
# Mode requirements
|
|
|
|
bool angular_velocity_invalid # Angular velocity invalid
|
|
|
|
bool attitude_invalid # Attitude invalid
|
|
|
|
bool local_altitude_invalid # Local altitude invalid
|
|
|
|
bool local_position_invalid # Local position estimate invalid
|
|
|
|
bool local_position_invalid_relaxed # Local position with reduced accuracy requirements invalid (e.g. flying with optical flow)
|
|
|
|
bool local_velocity_invalid # Local velocity estimate invalid
|
|
|
|
bool global_position_invalid # Global position estimate invalid
|
|
|
|
bool auto_mission_missing # No mission available
|
|
|
|
bool offboard_control_signal_lost # Offboard signal lost
|
|
|
|
bool home_position_invalid # No home position available
|
|
|
|
|
|
|
|
# Control links
|
2022-09-19 08:43:38 -03:00
|
|
|
bool manual_control_signal_lost # Manual control (RC) signal lost
|
|
|
|
bool gcs_connection_lost # GCS connection lost
|
2022-09-05 02:56:39 -03:00
|
|
|
|
|
|
|
# Battery
|
|
|
|
uint8 battery_warning # Battery warning level
|
|
|
|
bool battery_low_remaining_time # Low battery based on remaining flight time
|
|
|
|
bool battery_unhealthy # Battery unhealthy
|
|
|
|
|
2022-10-06 08:53:31 -03:00
|
|
|
# Other
|
2023-11-16 09:33:44 -04:00
|
|
|
bool geofence_breached # Geofence breached (one or multiple)
|
2022-09-05 02:56:39 -03:00
|
|
|
bool mission_failure # Mission failure
|
2023-01-12 04:56:58 -04:00
|
|
|
bool vtol_fixed_wing_system_failure # vehicle in fixed-wing system failure failsafe mode (after quad-chute)
|
2022-09-05 02:56:39 -03:00
|
|
|
bool wind_limit_exceeded # Wind limit exceeded
|
|
|
|
bool flight_time_limit_exceeded # Maximum flight time exceeded
|
2023-01-27 11:04:55 -04:00
|
|
|
bool local_position_accuracy_low # Local position estimate has dropped below threshold, but is currently still declared valid
|
2022-09-05 02:56:39 -03:00
|
|
|
|
|
|
|
# Failure detector
|
|
|
|
bool fd_critical_failure # Critical failure (attitude/altitude limit exceeded, or external ATS)
|
|
|
|
bool fd_esc_arming_failure # ESC failed to arm
|
|
|
|
bool fd_imbalanced_prop # Imbalanced propeller detected
|
|
|
|
bool fd_motor_failure # Motor failure
|
|
|
|
|
2022-08-09 10:08:17 -03:00
|
|
|
|