← All tools

Message & Error Explainer

What an ArduPilot message means and what to do about it

Українська

The MAVLink signing key could not be set

WarningBoard, internal errors, CAN, scripting

What ArduPilot says:

MAVLink signing is a secret key shared by the aircraft and your ground station: with it set, commands from anyone who does not have the key are ignored. The ground station sent a key, and ArduPilot did not take it: because the aircraft is armed, because the key could not be written to the board's storage, or (4.7) because this firmware was built without signing.

What to do, most likely first

  1. The aircraft was armed when the key was sent.

    FixDisarm and send the key again.

  2. The firmware for this board has no signing (small boards leave it out to save space).

    CheckThe Firmware Inspector shows what a firmware file was built with.

    FixBuild a firmware with MAVLink signing included in the Firmware Builder.

  3. The board's storage has no room reserved for a key, or the write failed.

    CheckDoes “Param storage failed” appear as well?

    FixIf storage is healthy and the key still cannot be saved, this board cannot hold one.

The code that sends it

ERROR: Won't setup signing when armed

libraries/GCS_MAVLink/GCS_Signing.cpp GCS_MAVLINK::handle_setup_signing() · Open in ArduPilot Copter-4.7.1

ERROR: Failed to save signing key

libraries/GCS_MAVLink/GCS_Signing.cpp GCS_MAVLINK::handle_setup_signing() · Open in ArduPilot Copter-4.7.1

Signing is not enabled in this firmware

libraries/GCS_MAVLink/GCS_Signing.cpp GCS_MAVLINK::handle_setup_signing() · 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