|
|
|
@ -246,6 +246,17 @@ static void pre_arm_checks(bool display_failure)
@@ -246,6 +246,17 @@ static void pre_arm_checks(bool display_failure)
|
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// check for unreasonable mag field length |
|
|
|
|
float mag_field = pythagorous3(compass.mag_x, compass.mag_y, compass.mag_z); |
|
|
|
|
if (mag_field > COMPASS_MAGFIELD_EXPECTED*1.5 || mag_field < COMPASS_MAGFIELD_EXPECTED*0.5) { |
|
|
|
|
if (display_failure) { |
|
|
|
|
gcs_send_text_P(SEVERITY_HIGH,PSTR("PreArm: Check mag field")); |
|
|
|
|
} |
|
|
|
|
return; |
|
|
|
|
}else{ |
|
|
|
|
cliSerial->printf_P(PSTR("\nMagField: %4.2f vs %4.2f ~ %4.2f"),mag_field, (float)COMPASS_MAGFIELD_EXPECTED*1.5, COMPASS_MAGFIELD_EXPECTED*0.5); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// barometer health check |
|
|
|
|
if(!barometer.healthy) { |
|
|
|
|
if (display_failure) { |
|
|
|
|