MP Ground Station Pre-Unlock Checklist
Introduction
ArduPilot firmware includes a set of "pre-arm safety checks" that prevent the aircraft from arming when issues such as missing calibration, incorrect configuration, or abnormal sensor data are detected. The purpose of these checks is to prevent accidents such as crashes, but certain checks can be disabled when necessary.
Important
Never disable arm checks (i.e., ARMING_CHECK should not be set to "0"), except for bench testing. All pre-arm or arming failure issues must be resolved before attempting to fly. Failure to do so may result in a crash.
How to View Pre-Arm Check Failures
When you are unable to arm the aircraft, it indicates a pre-arm check failure. To accurately identify which check failed, follow these steps:
- Connect the flight controller to the ground control station (GCS) using a USB cable or telemetry module.
- Ensure the GCS has successfully connected to the flight controller.
- Pair the receiver with the RC transmitter and attempt to arm the aircraft.
- The reason for the first pre-arm check failure will be displayed in red text in the HUD window.
- All failed pre-arm checks will also be sent to the GCS as Messages approximately every 30 seconds (only when the flight controller is not armed). If you want these messages to only be sent when attempting to arm fails, you can enable bit 1 of ARMING_OPTIONS (i.e., set to value 1).

Pre-Arm Failure Messages
IV. Other Pre-arm Failure Messages
4.1 Failsafes
When any failsafe (such as RC transmitter, battery, ground control station, etc.) is triggered, a warning message will be displayed and will prevent the flight controller from arming.
4.2 Barometer failures:
- Baro not healthy The barometer reports an unhealthy status, usually indicating a hardware fault.
- Alt disparity The barometer altitude differs from the estimated altitude of the inertial navigation system (i.e., barometer + accelerometer) by more than 1 meter. This warning is usually temporary and may appear when the flight controller is first powered on or when it experiences severe vibration (such as a drop). If this warning persists, you may need to recalibrate the accelerometer or there may be a barometer hardware issue.
4.3 Compass failures:
- Compass not healthy The compass sensor reports an unhealthy status, usually caused by a hardware fault.
- Compass not calibrated The compass has not been calibrated, or the calibration parameters are zero, or the number or model of connected compasses has changed since the last calibration (parameters involved: COMPASS_OFS_X, Y, Z).
- Compass offsets too high The offset of the primary compass (i.e., √(x²+y²+z²)) is greater than 500, usually caused by metal objects being too close to the compass. If you are only using the built-in compass (not recommended), this may be caused by the internal metal structure of the flight controller board, in which case it may not actually affect flight. You can consider disabling the offset check.
- Check mag field This warning may be caused by two types of magnetic field detection failures:
- The measured magnetic field strength deviates from the theoretical value by more than 35% (expected value is approximately 530, judgment range is <185 or >874).
- After obtaining GPS positioning, the system will perform a stricter comparative check based on the World Magnetic Model.
- If the warning persists: The compass calibration may be poor and should be recalibrated; or the aircraft is near a large metal object or strong magnetic field, and the position should be changed.
- Compasses inconsistent The direction of internal and external compasses differs by more than 45°. This is usually caused by incorrect settings of the external compass installation orientation parameter (COMPASS_ORIENT).
4.4 GPS related failures:
- GPS Glitch GPS signal abnormally jumps, and the current flight mode requires GPS (such as Loiter, PosHold) or the cylindrical electronic fence is enabled.
- Need 3D Fix GPS has not obtained 3D positioning (i.e., lacks latitude, longitude, and altitude information), but the flight mode or fence function requires GPS.
- Bad Velocity According to the inertial navigation system, the aircraft speed exceeds 50cm/s. Possible causes include: actual aircraft movement, falling, poor accelerometer calibration, or GPS update frequency lower than the standard 5Hz.
- High GPS HDOP The GPS HDOP value (horizontal position accuracy indicator) exceeds 2.0, and the current mode or fence depends on GPS. Solutions include:
- Wait for a few minutes; Move the aircraft to a location with a clearer view of the sky;
- Check for GPS interference sources (such as FPV VTX) and move away from them;
- You can appropriately relax the detection limit, for example, set GPS_HDOP_GOOD to 2.2 or 2.5;
4.5 INS Check (Inertial Navigation System: Accelerometer and Gyroscope)
- INS not calibrated The offset values of some or all accelerometers are zero, indicating that accelerometer calibration has not been performed.
- Accels not healthy At least one accelerometer reports unhealthy, which may be a hardware fault. It may also appear when the flight controller has not been restarted after a firmware update.
- Accels inconsistent The acceleration values reported by the accelerometers differ from each other by more than 1 m/s², indicating the need for recalibration or a sensor hardware fault.
- Gyros not healthy At least one gyroscope reports unhealthy, which may be a hardware fault, or the flight controller has not been restarted after a firmware update.
- Gyro cal failed The offset could not be correctly captured during calibration, usually caused by the aircraft being moved while the red and blue lights are flashing. Power cycling and keeping the aircraft stationary usually resolves this; it may also be signal interference caused by a hardware fault.
- Gyros inconsistent The rotation rates reported by the two gyroscopes differ by more than 20°/s, which may be a calibration issue or hardware damage.
4.6 Board Voltage Check
- Check Board Voltage The internal voltage of the board is below 4.3V or above 5.8V. If powered via USB: The computer's power supply current may be insufficient, it is recommended to replace the USB cable or port. If powered by battery: This is a serious issue, the power supply system such as the power module and battery should be checked before flying.
4.7 Parameter Checks
- Ch7 & Ch8 Opt cannot be same Auxiliary channels Ch7 and Ch8 are set to the same function, which is not allowed and may cause function confusion.
- Check FS_THR_VALUE The set RC failsafe value (PWM) is too close to the minimum value of channel 3 (throttle).
- Check ANGLE_MAX The ANGLE_MAX parameter that controls the maximum tilt angle is set too low (less than 1000, i.e., 10°) or too high (greater than 8000, i.e., 80°).
- ACRO_BAL_ROLL/PITCH The ACRO_BAL_ROLL or ACRO_BAL_PITCH parameter values are greater than the angular velocity P value corresponding to Stabilize mode, which will prevent the pilot from effectively controlling the attitude in ACRO mode.
4.8 Battery / Power Monitor
- This check will fail when the voltage or remaining capacity is below the set failsafe low voltage or critical threshold. If these thresholds are set in reverse (e.g., the critical value is higher than the low voltage value), it will also fail.
- Additionally, you can set the minimum arming voltage and capacity, for example: BATT_ARM_VOLT (minimum arming voltage) BATT_ARM_MAH (minimum arming capacity) to ensure that the battery not only does not trigger a failsafe but also has sufficient capacity to support flight.
4.9 Airspeed
- Airspeed not healthy If an airspeed sensor is configured but fails to provide valid data or calibration fails, this check will fail.
4.10 Logging
- Logging failed Pre-arm logging is enabled, but logging failed.
- No SD Card Logging is enabled, but the flight controller did not detect an SD card.
4.11 Safety Switch
- Hardware safety switch The flight controller has a hardware safety switch enabled, but the user has not pressed the button, preventing arming.
4.12 System
- Param storage failed The flight controller failed to read the EEPROM parameter storage area, which may be a hardware issue.
- Internal errors (0xx) The flight controller has encountered an internal system error, please report the error information to the ArduPilot development team.
- KDECAN Failed: KDECAN system failure.
- DroneCAN Failed: DroneCAN system failure.
4.13 Mission Related
- ARMING_MIS_ITEMS check failed Mission content check is enabled but the check did not pass.
- No mission library present Mission check is enabled, but no mission is loaded.
- No rally library present Rally point check is enabled, but no rally points are set.
- Missing mission item: xxxx The mission is missing necessary command items (such as Takeoff, RTL, Land, etc.).
4.14 Rangefinder
- If a rangefinder is configured but reports errors or fails to work properly, it will cause the pre-arm check to fail.
- In the worst case, you can first arm and take off in a mode that does not depend on GPS (such as Stabilize, AltHold), then switch to Loiter, but this method is not recommended.
Disabling Pre-arm Safety Checks
- In the worst case, you can first arm and take off in a mode that does not depend on GPS (such as Stabilize, AltHold), then switch to Loiter, but this method is not recommended.
Important
Warning: It is not recommended to disable pre-arm safety checks. When conditions permit, issues causing pre-arm check failures should be resolved before the aircraft takes off.
If you confirm that the pre-arm failure message is not actually an issue, you can choose to disable the corresponding check item. You can individually disable certain checks by setting parameter ARMING_CHECK to a value other than 1. Setting it to 0 will completely disable all pre-arm checks.
——This article is referenced from the ArduPilot official website: https://ardupilot.org/copter/docs/common-prearm-safety-checks.html