← All tools

Message & Error Explainer

What an ArduPilot message means and what to do about it

Українська

SmartRTL has stopped recording the way back

WarningFlight modesCopter only

What ArduPilot says:

SmartRTL returns along the path the copter flew out. While armed, the path is recorded as points at least SRTL_ACCURACY apart (2 m by default), up to SRTL_POINTS of them (300 by default). This line says recording has stopped, so SmartRTL cannot be used for the rest of this flight; the reason follows. “bad position”: no usable position estimate for 15 s. “buffer full”: the path was full and for 15 s no point could be added. “init failed”: at start-up there was no memory for the path. “program error”: an internal fault.

What to do, most likely first

  1. “bad position”: the GPS or the EKF (the position estimator) had no usable position for more than 15 s.

    CheckGPS or EKF messages appear shortly before this one, in the ground station or in the log.

    FixFind out why the position was lost: ordinary RTL needs a position too, so that is the real problem. Recording starts afresh at the next arming.

  2. “buffer full”: a long flight with many turns used every point, and tidying the path could not free any.

    Check“SmartRTL Low on space!” came first.

    FixRaise SRTL_POINTS (500 at most; every 100 points take about 3 kB of memory) and reboot, or raise SRTL_ACCURACY so that the points lie farther apart. For the rest of this flight RTL is the way home.

  3. “init failed”: the board had too little free memory at start-up.

    FixLower SRTL_POINTS or free memory by switching off features you do not use, then reboot. SmartRTL stays off until a start-up where the memory is there.

A failsafe or fence action set to SmartRTL does not fail with it: it falls back to RTL or Land, as the name of the option says (“SmartRTL Unavailable, Trying RTL Mode”).

Parameters to look at

ParameterWhat it is
SRTL_POINTSSmartRTL maximum number of points on path
SRTL_ACCURACYSmartRTL accuracy
The code that sends it

SmartRTL deactivated: init failed

libraries/AP_SmartRTL/AP_SmartRTL.cpp AP_SmartRTL::init() · Open in ArduPilot Copter-4.7.1

SmartRTL deactivated: …

libraries/AP_SmartRTL/AP_SmartRTL.cpp AP_SmartRTL::deactivate() · Open in ArduPilot Copter-4.7.1

Written here for Copter 4.6. In the tool you choose your vehicle and version, see your own parameter values beside the ones named here, and drop a flight log to have every message in it explained.

Open it in the Message & Error Explainer