← All tools

Message & Error Explainer

What an ArduPilot message means and what to do about it

Українська

A part of the firmware almost ran out of its own memory

Act nowBoard, internal errors, CAN, scripting

What ArduPilot says:

Every thread of ArduPilot has a fixed piece of memory, its stack. stack_overflow is recorded when the free stack of any thread drops below 64 bytes (32 on the small F1 processors), a warning just before memory is really overwritten; the l: number is then the priority of that thread, or 65535 for the interrupt stack. If the stack does overflow while disarmed, the board stops on purpose and prints “stack overflow” with the thread's name. mem_guard appears only in special test builds, when memory next to an allocation was overwritten.

What to do, most likely first

  1. A bug in the firmware, or a combination of features nobody tested: a custom build, a new driver, a beta.

    CheckWhat was switched on last? Does it happen with the stable release for this board and your parameters?

    FixDo not fly. Go back to the stable release; if it happens there too, report it with the whole line and the list of features and devices you use.

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