The terrain files on the SD card are from before a correction
What ArduPilot says:
- terrain data expired, possible errors
- terrain data expired, possible errors
The terrain files on the SD card were made before errors in ArduPilot's terrain data were corrected; the description of TERRAIN_OPTIONS dates the correction to 24 February 2026. ArduPilot 4.7 knows old files by their version number and will not arm with them when the flight needs terrain heights, because some heights in them may be wrong. When old data is first read in flight, the same text is sent once as a warning.
What to do, most likely first
The card still holds terrain files written before the correction.
CheckThe APM/TERRAIN folder of the card holds DAT files with old dates.
FixRename or delete the APM/TERRAIN folder, then let the ground station send the data again before the flight, or copy fresh files from terrain.ardupilot.org onto the card.
TERRAIN_OPTIONS bit 2 accepts the old files and with them the errors this check exists to catch. Fresh data costs a few minutes; use it.
Parameters to look at
| Parameter | What it is |
|---|---|
TERRAIN_OPTIONS | Terrain options |
TERRAIN_ENABLE | Terrain data enable |
Where to do it:Failsafe Explainer
The code that sends it
terrain data expired, possible errors
libraries/AP_Terrain/AP_Terrain.cpp AP_Terrain::pre_arm_checks() · Open in ArduPilot Copter-4.7.1
terrain data expired, possible errors
libraries/AP_Terrain/TerrainIO.cpp AP_Terrain::read_block() · Open in ArduPilot Copter-4.7.1