← All tools

Message & Error Explainer

What an ArduPilot message means and what to do about it

Українська

The code reached a place it should never reach

WarningBoard, internal errors, CAN, scripting

What ArduPilot says:

Programmers leave guards at places that “cannot happen”. flow_of_control is the general one, raised from about fifty places: Copter's land detector seeing high throttle while it still believes it is on the ground, a parameter save lost because too many were saved at once while armed, a mode or EKF type the code does not know. bitmask_range is a list index outside its list, gcs_bad_missionprotocol_link a mission upload with no link attached, switch_full_sector_recursion the flash storage calling itself. gcs_offset is not raised anywhere in these versions.

What to do, most likely first

  1. A rare path through the firmware that its authors did not foresee.

    CheckCan you make it happen again by doing the same thing? The l: number tells the developers which of the fifty places it was.

    FixReboot. If it can be repeated, report it with the whole line, the steps and a log, and avoid those steps in flight.

  2. A script or a ground-station tool saved many parameters in a burst while armed.

    CheckThe error appeared while a script was running or a tuning screen was writing values.

    FixRead back the parameters that were being saved: one of them may not have been stored. Save parameters in bulk only while disarmed.

  3. Someone sent the developers' test command that creates an internal error on purpose.

    Check“Creating internal error” is in the messages just before it.

    FixReboot; nothing is wrong.

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