" PreArm: Waiting for Terrain Data " I couldn't get rid of the error

@tridge @peterbarker @rmackay9 @amilcarlucas

I am facing the same issue of ‘PreArm: waiting for terrain data’.

Firmware: ArduPlane-4.3.4
GPS status: 3D FIX with HDOP < 1.0
Terrain Data available for the present location and around in SD card.
Ground station had good internet connectivity.

Have a look over ‘TERRAIN_REQUEST ( #133 )’ messages data in MAVLink inspector:
Untitled design
In this message I found lat/lon of around ‘0 N’ ‘2 E’. I assume it is requesting for the terrain data of that location for some reason.

Some solutions for this might be format the SD card and reload the downloaded terrain data manually or Autopilot will itself send the request to download the data. BTW, yet to try these…

But, At the first place why TERRAIN_REQUEST message has lat/lon of around ‘0 N’ ‘0 E’ ?. If Autopilot doesn’t have data of the present location it should request the terrain data from Ground station. In this case the lat/lon in the TERRAIN_REQUEST message should be my present location, right?.

Am I missing anything here. Any help is appreciated.

Thank you…!!

Make sure you have a good GNSS position. Activate geofence and use loiter flight mode.

That will force the copter to refuse arming if GNSS is not reliable.

1 Like

Hi,

I have been experiencing the same kind of error (terrain data missing). In my case (by investigating the sd card over mavftp) I found that the terrain data is created using relative altitude, but not when setting to terrain. When I swap to a plan created for terrain use I still get the error message (terrain data missing).
I tryed to upload manually, nothing …
One weird fact. Mission planning is creating a S23W47.dat, but I am at S22W46 (home position).
pixhawk 2.4.8, 2Mb, fmuv3 , firmware version 4.5.1

Hey Guys, I recently was having this issue and I believe I’ve found the solution.

If you’re uploading autoflight missions, Terrain following waypoints (not actual terrain data) are only prescribed/saved for the auto-flight path, not for the course to the path entry point and not for the course home if the drone RTL’s for any reason.

Therefore, the drone will request terrain data for the flight so it will be able to follow terrain outside of the prescribed mission. I’ve discovered the issue is related to the RTL_ALT_TYP parameter. When it’s set to 1 (to follow terrain on rtl), you will need to have a fantastic GCS connection and also have terrain data for the drone to reference from the GCS in the event of an RTL. You can only have terrain data for reference if you have a solid internet connection or you have saved the map tiles set with the elevation data for the flight area.

If it’s not an autoflight, I’m guessing that the drone requests terrain data period, still pointing to the need for internet connection and stable communication with the GCS.

Try saving your map tile set and see if that solves the issue. Or change the RTL_ALT_TYP to 0 so it won’t search for the terrain data.

Hope this helps!