← All tools

Message & Error Explainer

What an ArduPilot message means and what to do about it

Українська

The scripts on board are not the ones that were approved

Stops itBoard, internal errors, CAN, scripting

What ArduPilot says:

SCR_LD_CHECKSUM and SCR_RUN_CHECKSUM let you lock which scripts may fly. Each holds a checksum, a number worked out from the contents of the script files: of the scripts that were loaded, and of those still running. With -1 (the default) nothing is checked. When a parameter holds another value and it differs from what is on board now, arming is refused. The number in the message is the checksum of what is on board now.

What to do, most likely first

  1. A script was changed, added or removed since the checksums were saved.

    CheckCompare the files in APM/scripts with the set you approved.

    FixIf the change is intended, set SCR_DEBUG_OPTS bit 5 once: ArduPilot stores the present checksums, says “Scripting: saved checksums” and clears the bit. If it is not, put the right files back.

  2. “running CRC incorrect”: a script that was loaded has stopped with an error.

    CheckLook for a “Lua: …” error line.

    FixFix that error and reboot.

  3. The parameters came from another aircraft that uses the lock; you do not.

    FixSet SCR_LD_CHECKSUM and SCR_RUN_CHECKSUM back to -1, their default.

Parameters to look at

ParameterWhat it is
SCR_LD_CHECKSUMLoaded script checksum
SCR_RUN_CHECKSUMRunning script checksum
SCR_DEBUG_OPTSScripting Debug Level
The code that sends it

Scripting: loaded CRC incorrect want: 0x0x…

libraries/AP_Scripting/AP_Scripting.cpp AP_Scripting::arming_checks() · Open in ArduPilot Copter-4.7.1

Scripting: running CRC incorrect want: 0x0x…

libraries/AP_Scripting/AP_Scripting.cpp AP_Scripting::arming_checks() · 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