KDE Direct Device Manager Software for UAS Electronic Speed Controller (ESC) Series



Note: For the latest Instruction Manual and Software Updates, click the "Specifications" tab above for more technical details and download links.

The new KDE Direct Device Manager Software provides the ability to update all KDE Direct UAS Electronic Speed Controllers (ESC) to the latest production firmware releases, and customize advanced options for multiple applications.  A wide-range of new control-algorithm technologies can be programmed, such as the brushless motor startup power, drive frequency, synchronous rectification, temperature-controlled regenerative-braking, voltage cutoffs, and other market-leading features.

Updating the firmware on the ESC will revert the ESC back to default settings.  The user is responsible for programming their ESC to the optimal settings.  KDE Direct ESCs work best with KDE Direct UAS Multi-Rotor Brushless Motors.  Advanced programming options are available for alternate systems, such as fixed-wing, single-rotor, and custom flight applications.


System Requirements: Compatible with Windows 2000, XP, Vista, Windows 7, Windows 8.1, and Windows 10. Compatible with Apple® systems, through use of emulation software such as Boot Camp and Parallels® Desktop 13.

Instruction Manual: KDE Direct UVC ESC Series Instruction Manual REVPR12 (PDF)

PC Software Download: KDE Direct Device Manager V1.38.9 (ZIP)

ESC Firmware Downloads:

KDEXF-UAS20LV Series C460121.kde
KDEXF-UAS35 Series A460125.kde
KDE-UAS40UVC D460346.dfu
KDEXF-UAS55 Series A460125.kde
KDEXF-UAS35HVC Series B460255.kde
KDEXF-UAS55HVC Series B460255.kde
KDEXF-UAS75HVC Series B460255.kde
KDE-UAS85UVC Series D460346.dfu
KDEXF-UAS95HVC Series B460255.kde
KDE-UAS125UVC Series D460346.dfu

Release Notes:


  • Changed NART in CAN_MCR in DroneCAN init (messages should now re-transmit if a CAN message loses arbitration)


  • Added ability to read all EEPROM from File -> Read All EEPROM. Clearing ESC Log sets the address to 0
  • Added Startup Power setting Very Low
  • Fixed checksum when transmitting data with PC software
  • Added advance timing balanced (8°) to Custom Motor Edition. This works well with shaft drive motors and EDF motors


  • Added Current ADC Gain and Offset scaling for data log and CAN bus current output
  • Fixed a bug where overload protection would activate immediately instead of taking 3 seconds
  • Increased overload protection threshold for the 40UVC


  • Added Custom Motor Edition
  • Added Custom Starting and Running Throttle Response when the Custom Motor Edition is selected
  • I2C frequency for data logging increased to 400kHz
  • I2C mem write now uses Direct Memory Access for Custom Motor Edition
  • Custom Motor Edition has additional back EMF filtering


  • Fixed slow start issue when the 5215-220 motor is selected


  • Added Startup Power Low
  • Backup throttle now works with DroneCAN


  • Added DroneCAN
  • Added KDECAN object addresses 12 and 13
  • Fixed bug where the ESC error code was sometimes incorrect


  • The medium acceleration rate setting when the default motor is selected is now slower


  • Increased the accuracy of RPM reporting for data log and CAN bus
  • PWM dropout detection now occurs inside interrupts (input capture callback and CAN bus callback)
  • Timeout before shutting off power is reduced
  • ESC now stops propeller hold if a spinning throttle is sent while it's still activating


  • Fixed synchronization issue when sending 0% throttle at high speed then rapidly increasing throttle
  • Back EMF timeout interval reduced to improve motor sync at low speed
  • Fixed motor stopping issue when disconnecting and reconnecting the throttle lead (the motor free spools down now)
  • Startup acceleration now activates when the input throttle is less than the stopping throttle (helps VTOL setups)
  • Lowered 40UVC medium and medium high acceleration rate settings
  • Fixed a bug where CAN bus voltage detection was not accurate in the pre-arm state
  • Fixed a bug where the ESC would accept throttle values from CAN bus and PWM concurrently (ESC now prioritizes the PWM signal correctly w/ PWM SYNC setting)
  • CAN object addresses 32,33,34 are duplicated to 22,23,24 respectively since CAN 2.0A max is 5bit (31)
  • 0% throttle is no longer required after arming beeps
  • State transition to standby state will not occur at 0% throttle anymore (stopping throttle), transition now occurs when no more back EMF signals are sensed, allowing smoother motor operation


  • Voltage detection scaling adjusted to improve accuracy
  • Voltage cutoff mode values adjusted to reduce error


  • Fixed a bug in CAN message 32 (ESC now turns MOSFETS off in the startup state too)
  • Propeller hold now has a 0.1 second delay before activating the brake
  • Fixed a bug where ADC current sensing wasn't always checked
  • Fixed a bug where the final arming tone only beeped once
  • OneShot125 is now disabled when Range Calibration is selected
  • Removed RPM limit based on motor speed
  • Motor startup algorithm is now deterministic


  • Protection bits are now stored in the data log (requires KDE Direct Device Manager V1.38.1 and above)
  • Fixed over temperature protection error code incorrect
  • Fixed an issue where overload protection wasn't always activating
  • IRQ variables are now declared as volatile where needed
  • EEPROM I2C frequency is now set to standard mode
  • PWM ONLY mode added (CAN bus throttle backup is disabled in this mode)
  • Added 6815 motor edition

A460125, B460253

  • Added overvoltage protection
  • ESC now logs when a protection occurs
  • Protections can be read using KDE Direct Device Manager V1.38.0 and above (Options -> Protections)
  • OneShot125 detection is now disabled when Range Calibration is selected


  • Acceleration rate improvements when the 6213 or 7215 motor edition is selected
  • RPM reported by the ESC for data logging and CAN bus is now more accurate
  • Dynamic advance timing now properly matches the interval and frequency used in the HVC series ESCs
  • Fixed a can bus issue on message 2 where the ESC wasn't updating the source address


  • Increased acceleration rate when the motor edition is selected
  • Improved filtering when the default motor is selected (fixed an issue caused from D460333 release)
  • Fixed a timeout issue when dynamic advance timing is selected


  • Added 5215 motor optimizations
  • Motor startup for 5215-220 is now much smoother
  • KDE Device Manager V1.37.4 and above is required to select new motor editions


  • Adjusted time interval before commutating (changed dynamic advance timing)
  • Increased time interval before sensing
  • Back EMF debounce filtering changed for 6213, 7215, and 8218 motors
  • Fixed issue with the default output frequency not 16khz
  • Increased acceleration rates
  • The default acceleration rate is now high


  • Fixed an issue that could cause the motor stop caused from rapid deceleration
  • Updated CAN bus message Get ESC Info to return the firmware and hardware version


  • Improved synchronization when the 7208-135 motor is selected

A460124, B460250

  • Global interrupts are now disabled before reading/writing to EEPROM
  • Added error checking when receiving settings from PC software
  • Fixed a calibration issue with range that could cause the endpoints to be updated
  • The default for stall protection is now disabled


  • Increased acceleration rate for the 40UVC ESC
  • Fixed initialize arming tone to only emit final tones
  • Fixed propeller hold deadband. Stopping throttle is now different than the propeller hold activation throttle
  • Improvements to the advance timing allowing higher rpm with some motors
  • Fixed an issue where the can bus interrupt and data log interrupt were both scaling the current
  • Motor startup is now slower and ramps the output duty cycle
  • A dynamic acceleration rate reduction was added to the motor startup (occurs while the set throttle is less than the running speed on motor start)
  • The data log now saves data for two seconds after the motor stops spinning
  • The rpm for data logging and can bus is now updated every commutation
  • Updated CAN bus HAL driver
  • 5215-330 and 5215-435 startup modified


  • Added support for the 40UVC ESC


  • Changed arming behavior. If a spinning throttle is sent while arming, the motor will now spin once the beeping has stopped
  • Improved startup when the 7215 motor is selected


  • Settings are no longer reset on watchdog timer interrupt


  • Settings are no longer reset on watchdog timer interrupt
  • Optimization of acceleration rate profile when the 7215 or 8218 motor are selected on 12S


  • Adjusted commutation timing to improve motor sync with 8218 motor
  • Increased 7215 acceleration rate


  • Fixed a compatibility issue with the 85A ESC
  • Optimized motor commutation with the 6213 motor


  • ESC timing improvement, rpm better follows changes in throttle
  • Fixed a desync with the 7215 motor on 14S
  • Improved general startup when the motor is selected


  • Fixed an issue that caused the ESC to lose its firmware version when read from memory


  • Throttle Control through CAN bus (BETA) can now be enabled in production firmware (KDECAN Control: CAN bus)
  • For more information please refer to the KDECAN bus protocol document


  • Fixed motor timing desync with the 10218 motor with the 30.5" dual props on 14S
  • Fixed an issue where the default KDECAN baud rate was not set to 1000K baud
  • KDECAN Bus Standard Frame Structure CAN 2.0A
  • The ESC now auto-detects if a sent CAN message is extended (2.0B) or standard (2.0A) and will respond appropriately
  • KDE Device Manager 13218 motor dropdown added for additional optimization
  • New version fixes an issue where Propeller Hold would not activate


  • The drive frequency of the motor startup algorithm has been modified for the new 125UVC-HE
  • Modified UVC ESC UART Read/Write protocol so that the packet structure is now the same for consistency
  • KDE Device Manager V1.36.0 and above is required


  • Better startup and timing for heavy lift motors (allows motors to run better at higher voltages)
  • Optimizations for the 13218 motor


  • Fixed an issue with the 6213 motor where the acceleration rate was the same as the default motor


  • The default setting for overload protection is now standard for the 75A and 95A HVC ESCs to increase safety.


  • Optimized startup for the 8218XF-120 motor on 14S
  • Temperature protection has been modified to be more gradual before thermal shutdown occurs.

A460122, B460244, C460121

  • Throttle Calibration Modes RANGE and MANUAL no longer dynamically scale when receiving throttle above the set maximum.


  • Optimized startup for the KDE5215XF-330 motor
  • Increased acceleration rate and improved motor timing for the 7215XF motor
  • Added KDECAN bus baud rate


  • When the input throttle is lost or disconnected for more than 2 seconds, upon reconnecting there is now no need to restart from zero throttle


  • Optimized startup for the KDE5215XF-220 motor
  • Improved accuracy of current detection and input throttle for data logging and CAN bus
  • Fixed warning message incorrect within KDECAN bus message 11

D460117 (KDECAN Release - 125A and 85A ESC)

  • Control Signals (Send)
    • Backup Throttle Control (2.5ms refresh-rate controls ~400Hz)
    • Shutdown Procedure (turn off ESC via command)
    • Restart Procedure (re-arm and enable ESC via command)
  • Live-Telemetry Feedback Signals (Receive)
    • Drive Voltage (V)
    • Drive Current (A)
    • ESC MCU Temperature (oC)
    • Output Throttle Duty-Cycle (%)
    • Input Throttle Signal (μs)
    • Motor eRPM (rpm)
    • Warning Signals and Errors


  • Added ability to disable Stall Protection algorithms


  • Improved startup for the KDE5215XF motor series
  • Optimized motor control algorithm for the KDE7208XF and KDE7215XF motor series
  • Added new ADAPTER pull-down offering better performance for specific setups


  • Added ability to disable Stall Protection algorithms


  • Additional smoothing added for the KDE6213XF motor
  • Added new ADAPTER pull-down offering better performance for specific setups


  • Additional optimizations for the KDE10218XF motor
  • Additional optimizations for the KDE8218XF motor


  • This new firmware update requires the new KDE Device Manager V1.32 software or above
  • Added KDE Device Manager data graphing advanced features including zoom, pan, display options, changeable units, printing, and saving
  • Added data logging with Drive Voltage, Drive Current, Temperature, Motor Drive Power, Input Throttle, Output Throttle, RPM, and Power Consumption
    • Note: data log speed can be specified from the drop down located on the main window in the KDE Device Manager
    • Note: after a flight, logged data can be exported from File->Export ESC Datalog in the KDE Device Manager
  • Added data logging support for multiple flights
  • Added ability to import or export a data log
  • Added support for the KDE-UAS85UVC Series (firmware version D460114 is compatible with all ESC's in the UVC series)
  • Added new ability to record how long you've used your ESC
    • Note: the ESC use time can be found under Options->ESC Use Time in the KDE Device Manager


  • Added production firmware release for new KDE-UAS125UVC ESC series


  • Optimized the startup for the KDE6213XF motor

A460120, B460241, C460118

  • Added new OVERLOAD PROTECTION feature for enhanced ESC protection and safety
    • Note: selection menu is available only on the latest production KDEXF-UAS75HVC/95HVC
  • Added new Stall Protection algorithms for motor stall detection during startup and in-operation
  • Reduced motor shutdown time to ~200ms upon loss of control signal (failsafe protection)

A460118, B460131

  • Added new PRECISION (30kHz - 32kHz) drive frequency option for smooth motor operation
  • Further optimized ACCELERATION RATE defaults for each MOTOR EDITION

A460117, B460128, C460116

  • Added OneShot125 and PWMSync500 auto-detection algorithms to all UAS ESC editions
  • Improved shoot-through protection and synchronous rectification (S.R.) timings
  • Increased maximum commutation to 360,000 eRPM (2-Pole)
  • Added new INITIALIZE arming tone function
  • Additional optimizations incorporated for each MOTOR EDITION
  • Added new ACCELERATION RATE pull-down menu for flight-style control
    • Ability to change flight behavior for various UAS applications and pilot preference
    • Defaults optimized for each MOTOR EDITION

A460115, B460123, C460114

  • Optimized synchronous rectification logic for improved smoothness
  • Added new KDE7215XF-COAX motor edition
  • Corrected safety-arming tones for improved operator notification
  • Improved low-speed performance and startup algorithm

We Also Recommend