Notify: add pre_arm_gps_check flag
RGB LED will remain flashing blue when vehicle is disarmed and this check has failed (i.e. false).
This commit is contained in:
parent
59350821a3
commit
44c5fdffdf
@ -38,6 +38,7 @@ public:
|
||||
uint16_t baro_glitching : 1; // 1 if baro altitude is not good
|
||||
uint16_t armed : 1; // 0 = disarmed, 1 = armed
|
||||
uint16_t pre_arm_check : 1; // 0 = failing checks, 1 = passed
|
||||
uint16_t pre_arm_gps_check : 1; // 0 = failing pre-arm GPS checks, 1 = passed
|
||||
uint16_t save_trim : 1; // 1 if gathering trim data
|
||||
uint16_t esc_calibration : 1; // 1 if calibrating escs
|
||||
uint16_t failsafe_radio : 1; // 1 if radio failsafe
|
||||
|
@ -223,32 +223,34 @@ void ToshibaLED::update_colours(void)
|
||||
break;
|
||||
}
|
||||
}else{
|
||||
// flashing green if disarmed with GPS 3d lock
|
||||
// flashing blue if disarmed with no gps lock
|
||||
// fast flashing green if disarmed with GPS 3D lock and DGPS
|
||||
// slow flashing green if disarmed with GPS 3d lock (and no DGPS)
|
||||
// flashing blue if disarmed with no gps lock or gps pre_arm checks have failed
|
||||
bool fast_green = AP_Notify::flags.gps_status >= AP_GPS::GPS_OK_FIX_3D_DGPS && AP_Notify::flags.pre_arm_gps_check;
|
||||
switch(step) {
|
||||
case 0:
|
||||
if (AP_Notify::flags.gps_status >= AP_GPS::GPS_OK_FIX_3D_DGPS) {
|
||||
if (fast_green) {
|
||||
_green_des = brightness;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (AP_Notify::flags.gps_status >= AP_GPS::GPS_OK_FIX_3D_DGPS) {
|
||||
if (fast_green) {
|
||||
_green_des = TOSHIBA_LED_OFF;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (AP_Notify::flags.gps_status >= AP_GPS::GPS_OK_FIX_3D_DGPS) {
|
||||
if (fast_green) {
|
||||
_green_des = brightness;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (AP_Notify::flags.gps_status >= AP_GPS::GPS_OK_FIX_3D_DGPS) {
|
||||
if (fast_green) {
|
||||
_green_des = TOSHIBA_LED_OFF;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
_red_des = TOSHIBA_LED_OFF;
|
||||
if (AP_Notify::flags.gps_status >= AP_GPS::GPS_OK_FIX_3D) {
|
||||
if (AP_Notify::flags.gps_status >= AP_GPS::GPS_OK_FIX_3D && AP_Notify::flags.pre_arm_gps_check) {
|
||||
// flashing green if disarmed with GPS 3d lock
|
||||
_blue_des = TOSHIBA_LED_OFF;
|
||||
_green_des = brightness;
|
||||
@ -259,24 +261,24 @@ void ToshibaLED::update_colours(void)
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
if (AP_Notify::flags.gps_status >= AP_GPS::GPS_OK_FIX_3D_DGPS) {
|
||||
if (fast_green) {
|
||||
_green_des = TOSHIBA_LED_OFF;
|
||||
}
|
||||
break;
|
||||
|
||||
case 6:
|
||||
if (AP_Notify::flags.gps_status >= AP_GPS::GPS_OK_FIX_3D_DGPS) {
|
||||
if (fast_green) {
|
||||
_green_des = brightness;
|
||||
}
|
||||
break;
|
||||
|
||||
case 7:
|
||||
if (AP_Notify::flags.gps_status >= AP_GPS::GPS_OK_FIX_3D_DGPS) {
|
||||
if (fast_green) {
|
||||
_green_des = TOSHIBA_LED_OFF;
|
||||
}
|
||||
break;
|
||||
case 8:
|
||||
if (AP_Notify::flags.gps_status >= AP_GPS::GPS_OK_FIX_3D_DGPS) {
|
||||
if (fast_green) {
|
||||
_green_des = brightness;
|
||||
}
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user