CAN Bus Signalling
Settings for configuring CAN bus signalling can be found here:
Autodiscovery
Autodiscovery will try to automatically detect DroneCAN or ARINC 825, based on periodic traffic such as status messages and throttle control messages. Depending on what traffic exists on the bus, there may be a delay before the CAN protocol can be discovered.
To use this feature, set the CAN Protocol setting to 'Auto'. It is not recommended to use autodiscovery in production vehicles.
CAN Termination
Terminating the CAN properly ensures signal integrity during operation. It is recommended that each end of the CAN network be terminated, this usually means that termination is enabled on the unit farthest away from the flight computer.
The CAN termination resistor can be enabled on the nanoDRIVE 4LPi using the CAN TERM pads on the underside of the unit, consult the integration guide for more detailed instructions:
DroneCAN
The units support the DroneCAN protocol over CAN bus. Connection over DroneCAN allows for motor drive, telemetry, configuration and firmware updating. The motor controller can be connected to Hargrave Configurator through DroneCAN for an improved configuration and firmware updating experience.
More information about the DroneCAN protocol can be found at the DroneCAN Docs.
Throttle Commands
ESCs respond to the DroneCAN throttle command 1030.RawCommand.uavcan.
Forcing Node ID
The units support Dynamic Node Allocation (DNA) within the DroneCAN ecosystem, allowing quick connection to an existing network. The downside is that on any given power-up event, the unit may change the Node ID it is assigned while on the network. This makes it difficult to review data and may even result in units not connecting if DNA is not operating. If all devices are known on the network then it is recommended to force the node IDs to a known value, when enabled the preferred Node ID is forced. This ensures a given unit will connect using only the given ID. However, duplication of IDs should be avoided. Forcing a Node ID can reduce the time taken for the unit to be on the DroneCAN network from start-up.
Base ID
The preferred Node ID (and the Node ID that will be forced if force node ID is enabled) on nanoDRIVE 4LPi units is calculated from a configurable Base ID. The individual Node IDs are enumerated from the Base ID based on the device index of the motor controller.
ESC Index
The ESC Index determines which throttle command a motor controller will respond to, each motor controller must have a unique ESC index to be driven separately over DroneCAN.
On nanoDRIVE 4LPi motor controllers the ESC index is offset based on the device index of that motor controller by default.
Arming
DroneCAN supports an additional mechanism through the 1100 ArmingStatus Message. By default this message is required to drive using DroneCAN signalling. The unit must receive a DroneCAN arming packet with the ‘STATUS_FULLY_ARMED’ status within the configured armed message timeout (5s default duration) to remain armed or driving. The unit will immediately disarm after receiving an arming packet with the status 'STATUS_DISARMED'.
ARINC 825-4
Version 1.1 of the Hargrave ARINC specification is supported. More details on this message set can be found at the following link:
SID
The device Server ID (SID) acts as a unique identifier of a device on an ARINC 825 system. Each ESC will require a unique SID.
Throttle Control
The ESC will accept correctly addressed Direct Throttle or Broadcast Throttle messages. More information about ARINC throttle messages can be found at the following link: