The mission has a landing marker, but RTL is not told to use it
What ArduPilot says:
- PreArm: DO_RETURN_PATH_START set and RTL_AUTOLAND disabled
- PreArm: DO_LAND_START set and RTL_AUTOLAND disabled
The mission contains a DO_LAND_START (the marker where a landing sequence begins) or a DO_RETURN_PATH_START (the marker of a route home), and RTL_AUTOLAND is 0. RTL would then never use the marker: the plane would come home and circle until the battery is empty. ArduPilot makes you choose before it arms. This is one of the mission checks.
What to do, most likely first
You planned an automatic landing and did not tell RTL to use it.
FixSet
RTL_AUTOLAND: 1 flies home first and then lands throughDO_LAND_START, 2 goes straight to the nearest landing sequence, 4 joins the route marked byDO_RETURN_PATH_START.The marker is there only so that an aborted landing can start again.
FixSet
RTL_AUTOLANDto 3: the marker serves go-arounds only, and RTL keeps circling over home.The marker was left in the mission by mistake.
CheckOpen the mission and look for
DO_LAND_STARTorDO_RETURN_PATH_STARTamong the items.FixRemove the item and upload the mission again.
With RTL_AUTOLAND 1, 2 or 4, every failsafe that ends in RTL also lands by itself. Before each flight make sure the landing sequence suits the wind of the day.
Parameters to look at
| Parameter | What it is |
|---|---|
RTL_AUTOLAND | RTL auto land |
Where to do it:Mission Energy Check
The code that sends it
PreArm: DO_RETURN_PATH_START set and RTL_AUTOLAND disabled
ArduPlane/AP_Arming.cpp AP_Arming_Plane::mission_checks() · Open in ArduPilot Plane-4.6.3
ArduPlane/AP_Arming_Plane.cpp AP_Arming_Plane::mission_checks() · Open in ArduPilot Plane-4.7.1
PreArm: DO_LAND_START set and RTL_AUTOLAND disabled
ArduPlane/AP_Arming.cpp AP_Arming_Plane::mission_checks() · Open in ArduPilot Plane-4.6.3
ArduPlane/AP_Arming_Plane.cpp AP_Arming_Plane::mission_checks() · Open in ArduPilot Plane-4.7.1