KDE CAN ESCs

../_images/kde-can-esc.jpg

KDECAN ESCs are high-end ESCs that allow control and feedback using a custom CAN protocol

Note

Support for these ESCs is included in Copter-4.0 (and higher), Plane-3.10 (and higher) and Rover-3.5 (and higher)

Where To Buy

Connection and Configuration

KDE’s instructions for connecting and configuring with ArduPilot are here

../_images/kde-can-esc-cube.jpg
  • ESCs should be daisy chained together using the KDECAN Wire Kit. One 4-pin CAN cable should be connected to the autopilot’s CAN port. The CAN terminator (the 4-pin connector with a black loop) should be connected to the last ESC in the chain

Warning

If using a Cube autopilot, the CAN1 and CAN2 labels are reversed. These instructions assume the ESCs are connected to the CAN1 port which is labelled “CAN2” on Cube autopilots

  • Set CAN_D1_PROTOCOL = 2 (KDECAN)
  • Set CAN_P1_DRIVER = 1 (First driver) to specify that the ESCs are connected to the CAN1 port
  • Set SERVOx_MIN = 1000 and SERVOx_MAX = 2000 for each ESC connected (x corresponds to the ESC number) so ArduPilot uses an output range that matches the ESCs input range

Logging and Reporting

KDECAN ESCs provide information back to the autopilot which is recorded in the autopilot’s onboard log’s ESCn messages and can be viewed in any ArduPilot compatible log viewer. This information includes:

  • RPM
  • Voltage
  • Current
  • ESC Temperature
  • Total Current

The RCOU messages are also written to the onboard logs which hold the requested output level sent to the ESCs expressed as a number from 1000 (meaning stopped) to 2000 (meaning full output).

This information can also be viewed in real-time using a ground station. If using the Mission Planner go to the Flight Data screen’s status tab and look for esc1_rpm.

../_images/dshot-realtime-esc-telem-in-mp.jpg

Note

Sending ESC data to the GCS requires using MAVLink2. Please check the appropriate SERIALx_PROTOCOL parameter is 2 (where “x” is the serial port number used for the telemetry connection).