Enabling UAVCAN mode
In VESC Tool, under App Settings → General → CAN, set CAN Mode toUAVCAN.
Core settings
Node ID and ESC index are different things. The node ID identifies the controller on the bus. The ESC index selects which element of the throttle array it obeys.On a multi-motor vehicle each controller needs both a unique node ID and the ESC index matching its motor position in the flight controller’s motor ordering.
Raw command modes
The flight controller broadcastsuavcan.equipment.esc.RawCommand — an array of setpoints, one per ESC. The Delta reads the element at its configured ESC index and scales it by 8192, giving a value from −1.0 to 1.0.
What it does with that value depends on the raw mode:
The Delta also accepts
uavcan.equipment.esc.RPMCommand, which takes the RPM value at its ESC index directly rather than as a scaled fraction.
Telemetry
The Delta publishesuavcan.equipment.esc.Status, tagged with its configured ESC index.
UAVCAN Status Current Mode selects which current appears in that message:
- Motor — current through the motor phases
- Input — current drawn from the battery
can_status_rate_1, default 50; can_status_rate_2, default 5).
Supported UAVCAN interfaces
Firmware update over UAVCAN is also implemented.
Parameters exposed over the bus
These can be read and written with any UAVCAN parameter tool, without connecting VESC Tool:Bringing up a bus
1
Configure each controller over USB first
Set CAN Mode to
UAVCAN, assign a unique Controller ID, set the ESC index for that motor position, and pick the raw mode. Write and verify before moving to the next controller.2
Match baud rates
Every node on the bus must agree. 500K is the default and the usual choice.
3
Wire the bus
CAN H, CAN L, and a common ground. Termination matters — a UAVCAN bus needs 120 Ω at each physical end.
4
Confirm enumeration
Each controller should appear in your flight controller’s UAVCAN node list with the node ID you assigned. A missing node is a wiring, baud, or duplicate-ID problem.
5
Verify motor mapping one at a time
Command each motor position individually and confirm the expected motor responds. Do not skip this.
6
Check telemetry
Confirm ESC status is arriving from every node, with RPM and current that track what the motor is doing.
Troubleshooting
Related
Input configuration
PPM, ADC, UART, and the Setup Input wizard.
Motor tuning and parameters
Current limits and cutoffs — set these before commanding from a bus.
