← All tools

Message & Error Explainer

What an ArduPilot message means and what to do about it

Українська

Two different CAN devices claim the same node number

Stops itBoard, internal errors, CAN, scripting

What ArduPilot says:

On a DroneCAN bus every device (GPS, compass, ESC, battery monitor) is a node with a number, and each has a hardware ID of its own. The flight controller keeps a table, in permanent memory, of which hardware ID owns which number, and asks every node it hears for its ID. “Duplicate Node NAME../N” means node N answered with a different hardware ID than the table has for N. The first part of the device's name is shown.

What to do, most likely first

  1. A CAN device was replaced by another with the same fixed node number; the table still has the old one.

    CheckDid you swap a GPS, an ESC or another CAN device, or move one over from another aircraft?

    FixClear the table: add 1 to CAN_D1_UC_OPTION (bit 0, ClearDNADatabase) and reboot. The bit clears itself, “UC DNA database reset” confirms it, and the devices register again.

  2. Two devices on the bus really have the same node number.

    CheckUnplug one of them: the message goes. The ground station's DroneCAN screen lists the nodes it sees and their numbers.

    FixGive one of the devices another number in its own settings, or set its number to 0 so that the flight controller assigns one, then clear the table as above.

CAN_D1_UC_OPTION bit 1 makes ArduPilot ignore the conflict. Two devices answering to one number still confuse every driver that listens for that number; fix the numbers.

Parameters to look at

ParameterWhat it is
CAN_D1_UC_OPTIONDroneCAN options
CAN_D1_PROTOCOLEnable use of specific protocol over virtual driver
CAN_P1_DRIVERIndex of virtual driver to be used with physical CAN interface
The code that sends it

Duplicate Node …../N!

libraries/AP_DroneCAN/AP_DroneCAN_DNA_Server.cpp AP_DroneCAN_DNA_Server::prearm_check() · 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