No height estimate yet for a mode that holds height
What ArduPilot says:
- PreArm: Need Alt Estimate
The current mode controls height by itself (AltHold, Loiter, PosHold, Auto, Guided and the like), and the EKF, ArduPilot's position and attitude estimator, does not yet have both a height and a climb-rate estimate. Modes where the stick sets the motors directly (Stabilize, Acro) do not need it. This test cannot be switched off.
What to do, most likely first
The EKF is still starting: this is normal for the first seconds after power-on.
FixLeave the copter still for 20 to 30 seconds and try again.
The height source the EKF is told to use gives no data:
EK3_SRC1_POSZnames a rangefinder, GPS or external source that is not working.CheckLook at the altitude shown by the ground station: it should sit near zero and move when you lift the copter.
FixSet
EK3_SRC1_POSZto 1 (the barometer, the default) unless you chose another source on purpose; if you did, make that sensor work first.
Parameters to look at
| Parameter | What it is |
|---|---|
FLTMODE1 | Flight Mode 1 |
EK3_SRC1_POSZ | Position Vertical Source |
The code that sends it
PreArm: Need Alt Estimate
ArduCopter/AP_Arming.cpp AP_Arming_Copter::alt_checks() · Open in ArduPilot Copter-4.6.3
ArduCopter/AP_Arming_Copter.cpp AP_Arming_Copter::alt_checks() · Open in ArduPilot Copter-4.7.1