@ -82,7 +82,7 @@ void Sub::failsafe_sensors_check(void)
@@ -82,7 +82,7 @@ void Sub::failsafe_sensors_check(void)
}
failsafe . sensor_health = true ;
gcs_ send_text ( MAV_SEVERITY_CRITICAL , " Depth sensor error! " ) ;
gcs ( ) . send_text ( MAV_SEVERITY_CRITICAL , " Depth sensor error! " ) ;
Log_Write_Error ( ERROR_SUBSYSTEM_FAILSAFE_SENSORS , ERROR_CODE_BAD_DEPTH ) ;
if ( control_mode = = ALT_HOLD | | control_mode = = SURFACE | | mode_requires_GPS ( control_mode ) ) {
@ -139,7 +139,7 @@ void Sub::failsafe_ekf_check(void)
@@ -139,7 +139,7 @@ void Sub::failsafe_ekf_check(void)
if ( AP_HAL : : millis ( ) > failsafe . last_ekf_warn_ms + 20000 ) {
failsafe . last_ekf_warn_ms = AP_HAL : : millis ( ) ;
gcs_ send_text ( MAV_SEVERITY_WARNING , " EKF bad " ) ;
gcs ( ) . send_text ( MAV_SEVERITY_WARNING , " EKF bad " ) ;
}
if ( g . fs_ekf_action = = FS_EKF_ACTION_DISARM ) {
@ -167,7 +167,7 @@ void Sub::failsafe_battery_check(void)
@@ -167,7 +167,7 @@ void Sub::failsafe_battery_check(void)
// Always warn when failsafe condition is met
if ( AP_HAL : : millis ( ) > failsafe . last_battery_warn_ms + 20000 ) {
failsafe . last_battery_warn_ms = AP_HAL : : millis ( ) ;
gcs_ send_text ( MAV_SEVERITY_WARNING , " Low battery " ) ;
gcs ( ) . send_text ( MAV_SEVERITY_WARNING , " Low battery " ) ;
}
// Don't do anything if failsafe has already been set
@ -214,7 +214,7 @@ void Sub::failsafe_pilot_input_check()
@@ -214,7 +214,7 @@ void Sub::failsafe_pilot_input_check()
failsafe . pilot_input = true ;
Log_Write_Error ( ERROR_SUBSYSTEM_INPUT , ERROR_CODE_FAILSAFE_OCCURRED ) ;
gcs_ send_text ( MAV_SEVERITY_CRITICAL , " Lost manual control " ) ;
gcs ( ) . send_text ( MAV_SEVERITY_CRITICAL , " Lost manual control " ) ;
if ( g . failsafe_pilot_input = = FS_PILOT_INPUT_DISARM ) {
set_neutral_controls ( ) ;
@ -251,7 +251,7 @@ void Sub::failsafe_internal_pressure_check()
@@ -251,7 +251,7 @@ void Sub::failsafe_internal_pressure_check()
// Warn every 30 seconds
if ( failsafe . internal_pressure & & tnow > last_pressure_warn_ms + 30000 ) {
last_pressure_warn_ms = tnow ;
gcs_ send_text ( MAV_SEVERITY_WARNING , " Internal pressure critical! " ) ;
gcs ( ) . send_text ( MAV_SEVERITY_WARNING , " Internal pressure critical! " ) ;
}
}
@ -283,7 +283,7 @@ void Sub::failsafe_internal_temperature_check()
@@ -283,7 +283,7 @@ void Sub::failsafe_internal_temperature_check()
// Warn every 30 seconds
if ( failsafe . internal_temperature & & tnow > last_temperature_warn_ms + 30000 ) {
last_temperature_warn_ms = tnow ;
gcs_ send_text ( MAV_SEVERITY_WARNING , " Internal temperature critical! " ) ;
gcs ( ) . send_text ( MAV_SEVERITY_WARNING , " Internal temperature critical! " ) ;
}
}
@ -309,7 +309,7 @@ void Sub::failsafe_leak_check()
@@ -309,7 +309,7 @@ void Sub::failsafe_leak_check()
// Always send a warning every 20 seconds
if ( tnow > failsafe . last_leak_warn_ms + 20000 ) {
failsafe . last_leak_warn_ms = tnow ;
gcs_ send_text ( MAV_SEVERITY_CRITICAL , " Leak Detected " ) ;
gcs ( ) . send_text ( MAV_SEVERITY_CRITICAL , " Leak Detected " ) ;
}
// Do nothing if we have already triggered the failsafe action, or if the motors are disarmed
@ -355,7 +355,7 @@ void Sub::failsafe_gcs_check()
@@ -355,7 +355,7 @@ void Sub::failsafe_gcs_check()
// Send a warning every 30 seconds
if ( tnow > failsafe . last_gcs_warn_ms + 30000 ) {
failsafe . last_gcs_warn_ms = tnow ;
gcs_send_text_fm t ( MAV_SEVERITY_WARNING , " MYGCS: %d, heartbeat lost " , g . sysid_my_gcs ) ;
gcs ( ) . send_tex t( MAV_SEVERITY_WARNING , " MYGCS: %d, heartbeat lost " , g . sysid_my_gcs ) ;
}
// do nothing if we have already triggered the failsafe action, or if the motors are disarmed
@ -418,7 +418,7 @@ void Sub::failsafe_crash_check()
@@ -418,7 +418,7 @@ void Sub::failsafe_crash_check()
// Send warning to GCS
if ( tnow > failsafe . last_crash_warn_ms + 20000 ) {
failsafe . last_crash_warn_ms = tnow ;
gcs_ send_text ( MAV_SEVERITY_WARNING , " Crash detected " ) ;
gcs ( ) . send_text ( MAV_SEVERITY_WARNING , " Crash detected " ) ;
}
// Only perform failsafe action once
@ -448,7 +448,7 @@ void Sub::failsafe_terrain_check()
@@ -448,7 +448,7 @@ void Sub::failsafe_terrain_check()
// check for clearing of event
if ( trigger_event ! = failsafe . terrain ) {
if ( trigger_event ) {
gcs_ send_text ( MAV_SEVERITY_CRITICAL , " Failsafe terrain triggered " ) ;
gcs ( ) . send_text ( MAV_SEVERITY_CRITICAL , " Failsafe terrain triggered " ) ;
failsafe_terrain_on_event ( ) ;
} else {
Log_Write_Error ( ERROR_SUBSYSTEM_FAILSAFE_TERRAIN , ERROR_CODE_ERROR_RESOLVED ) ;