Change Log
The firmware releases and their relevant change logs are shown below.
Versioning follows semantic versioning.
3.2.1 - 18th September 2026
Build Hash: 665ab09d
Resolves a bug affecting ARINC custom node services
3.2.0 - 4th May 2026
Build Hash: a81e7ff8
Major Changes
DRIVE firmware v3.2.0 introduces FC passthrough communication, CAN protocol auto detection, configurable LED modes and drive soft start. This update also includes a range of quality of life features and bug fixes.
Installing this firmware requires updating to bootloader version 1.2. A detailed guide to installing the bootloader and DRIVE firmware v3.2.0 can be found below:
New Features
- FC Passthrough - Flight Controller Passthrough is now supported with the Hargrave Configurator. Motor controllers can now be connected to the Configurator using the serial signal lines with supported flight controllers.
- CAN Protocol Detection - The unit can now automatically select between the DroneCAN and Hargrave ARINC825 CAN protocols based on traffic on the CAN bus.
- Configurable LED Modes - The status LED on the device can be configured to be always on, off during normal operation, or completely off.
- Drive Soft Start - During normal and reversible drive modes a duty cycle build duration can be configured. This will make the duty cycle gradually build to the configured minimum duty cycle for a smoother start to drive.
- Periodic Disarm Beep - A periodic disarm beep has been added to the status beeps. A periodic tone will play in the disarmed state. When the secondary arming switch is enabled the tone will change based on the state of the switch.
Other Changes
- Added errors viewable in the Hargrave Configurator to indicate the following:
- Failure of the bridge temperature sensor.
- The bootloader has rejected a firmware update.
- The primary device clock source has failed.
- Hargrave ARINC Protocol 1.1 support has been added, this allows the broadcast throttle message to be truncated to less than 4 throttle messages.
- Fallback signal states have been added to the DroneCAN extended ESC status telemetry message.
- The device will respond to the DroneCAN message 1080.BeepCommand by identifying itself with a flashing white LED and a beep tone.
- If a custom ESC name has been configured it will be sent as the source in DroneCAN debug messages.
- Certain errors can now be displayed as sub-errors of a parent error in the Hargrave Configurator.
- The unit will now respond to the DShot info request.
- Initialisation time has been reduced when recovering from a software crash.
- The βDISARMEDβ DroneCAN debug message will only be sent periodically while the unit is disarmed when the commanded throttle is non zero.
- Improved serial signal auto detection.
- The DroneCAN ESC status powerRatingPct field is now a percentage of bus power compared to the configured voltage and current limits.
Bug Fixes
- Bidrectional DShot telemetry has been improved.
- Made input signals more resilient to high frequency noise.
- Fixed high frequency ARINC telemetry not being sent.
- Improved CAN behaviour and implementation.
Settings Changes
Settings Added
- CAN_SAMPLE_POINT - Setting to modify the CAN bus sample point
- DUTY_BUILD_TIME - The duration over which to build the duty cycle to the minimum duty cycle
- LED_MODE - Controls the visibility of the LED
- ID_BEEP_CMD - When enabled the motor controller will enter/exit identify mode when receiving the Dronecan message 1080.BeepCommand
Settings Modified
- CAN_PROTOCOL: Default 0 β 2 (DroneCAN -> Auto), Max 1 -> 2
Requires Hargrave Configurator >=v1.14.0
Requires GateKEEPER Bootloader >=1.2.0
3.1.0 - 24th September 2025
Build Hash: 049118ec
Major Changes
GateKEEPER firmware v3.1.0 brings a brand new ARINC825-4 compatible CAN 2.0B control protocol, as well as improved prop parking and more flexible stopping/braking options. This patch also inclues minor fixes and improvements for rpm mode, rpm limiting, and motor temperature limiting.
Configuration changes to note:
- Brake on Stop has been replaced by Stopping Behaviour
- Parking Stop Strength has been replaced by Active Hold Strength
New Features
- ARINC825 CAN Protocol - CAN 2.0B protocol that adheres to the ARINC825-4 specification. This protocol can be used in place of dronecan to drive, configure and update the device.
- Flexible Stopping Behavior - Stopping behavior (when the motor approaches 0 erpm) is now configurable, allowing for selection between freewheeling, passive braking and active holding.
- Flexible Arming Behaviour - When the unit arms, prop parking or stopping behavior can be set to activate immediately. This can cause props to move as soon as power is applied.
- Gradual Braking - New option to gradually apply passive braking force, useful for larger inertial loads. Requires AFW/regeneration.
- Adjustable Beep Volume - Beep volume has been made to be adjustable and can be normalised.
Other Changes
- RPM Mode will not function without motor pole pairs being set.
- Increased default DroneCAN arming packet timeout.
- Reversible dshot throttle packets are now parsed and accepted.
- Hardware version is now reported through DroneCAN GetNodeInfo.
Bug Fixes
- Motor temperature limiter has been improved.
- Prop parking has been improved to be more reliable and achieve higher accuracy when setting angular offsets.
- RPM Limiter has been improved.
- RPM tracking when freewheeling has been improved.
- DroneCAN Status error_count field no longer sets bit 31 when a flag is set.
- Communications Mode LED color has been modified to appear less red.
- Prop parking will not attempt to repark.
Settings Changes
Settings Deprecated
- PARK_STOP_STR - Prop parking stop strength, replaced by ACTV_HLD_STR
- BRK_ON_STOP - Brake on Stop, replaced by STOP_BEHAV
Settings Added
- ACTV_HLD_STR - Active Hold Strength
- BEEP_VOLUME - Beep Volume
- CAN_PROTOCOL - CAN Protocol Selector
- BEEP_CONST_VOL - Normalise Beep Volume
- GRAD_BRAK_EN - Gradual Braking Enable
- GB_DURATION_S - Gradual Braking Duration
- GBRAK_STRT_DC - Gradual Braking Starting Duty Cycle
- MOT_T_DTY_LIM - Motor Temperature Limiter Minimum Duty cycle
- PARK_ON_ARMED - Prop Park on Armed State
- STOP_BEHAV - Stopping Behavior
- STOP_ON_ARMED - Stopping Behavior on Armed State
- USB_PWR_LOCKOUT - USB Power Lockout
ARINC Settings
- ARINC_NSC_OFFSET - Node Service Channel ID offset
- ARINC_STAT1_HZ - Status Message 1 Frequency
- ARINC_STAT2_HZ - Status Message 2 Frequency
- ARINC_STAT3_HZ - Status Message 3 Frequency
- ARINC_FID - Function Code Identifier
- ARINC_PHSM_HZ - Periodic Health Status Message Frequency
- ARINC_PF_ID - Profile ID
- ARINC_PF_S_ID - Profile Sub ID
- ARINC_SID - Server ID
- ARINC_TUNNEL_FID - Function Code Identifier for Tunneling
Settings Modified
- ARM_MSG_TIMEOUT: Default 1000 β 5000
- MOT_OVT_RESP: Max 1 β 2
- RPM_I_TERM Default 0.00004 β 0.006
- RPM_P_TERM Default 0.00009 β 3.79
* Requires Hargrave Configurator >=v1.11.0
3.0.0 - 28th May 2025
Major Changes
GateKEEPER firmware v3.0.0 is a major update which contains new features, improves existing features and performance, and has many behind the scenes improvements.
Re-configuration may be required if updating from previous firmware versions and it is recommended to review the changelogs and documentation in detail.
Key breaking configuration changes include:
- Motor kV and Motor Pole Pairs are required to be set to use reversible drive mode.
- Communications settings have been reworked to support the new Input Priority System. The CANBUS_EN setting has been depracated. No configuration is required to use either CAN bus or serial (DShot/PWM) signalling.
Key drive behaviour changes include:
- Startup minimum duty cycle added. Duty cycle is forced to at least 2.5% on drive start to ensure that the motor begins spinning, this limit is removed once the startup duty cycle is exceeded.
- Behaviour changed when 'Brake On Stop' disabled, the motor will now immediately coast, as opposed to ramping down before coasting.
New Features
- Input Priority System - The Input Priority System is a feature that enables the use of both CAN bus and serial (DShot/PWM) signalling simultaneously. This enables both signals to be used simultaneously in a fallback scenario, or for either signal to be used without requiring configuration.
- Secondary Arming Switch - The secondary or physical arming switch provides a physical means to lock out motor drive. When this switch is in the off position the unit will not arm and therefore be unable to drive.
- Motor Starting Beep - The unit can be configured to beep the motor before drive begins as an additional safety feature.
- Arming and Disarming Beeps - When enabled the unit will beep on the transitioning between the armed and disarmed states.
- Odometer Logging - Powered-on time and motor running time are logged and saved on device and can be viewed in the configurator tool.
- More Detailed Logging - The on-device datalogs include more status flags and log their uptime in ms. Logging fields now include their units.
Other Changes
- A status bit in the DroneCAN ESC Status Extended (1036) message is now used to indicate that propeller parking is active.
- UART telemetry format unified to be DShot ESC telemetry when using periodic serial telemetry.
- Status LED Changes:
- Solid White: Device is initialising.
- Solid Orange: Device is in communications only mode.
- Fast Flashing Pink: Device is about to restart.
- Purple has been modified to a more violet color.
- The communications only mode (orange LED) will be entered when a DroneCAN parameter set request is received or a DroneCAN firmware update is started. The unit must be rebooted before drive can resume.
- The 'temperature' field in the DroneCAN ESC Status (1034) message is reported with more resolution.
- Reversible drive performance has been improved.
- The 'Configuration Invalid' error has been added to indicate an incorrect device configuration.
- DroneCAN debug message formatting has changed for errors and status messages. For example the debug message for the 'Signal Loss' error has change from 'ERR_13_Signal_Loss' (2.1.3) to 'Input Signal Loss' (3.0.0).
- The beep indicating the unit is idle and waiting for a signal is no longer separate between CAN and serial signals, it is now unified to the beep used for CAN bus signal waiting on 2.1.3.
- The signal acquisiton beep sounds on both initial signal acquisition and on signal re-acquisiton.
- Flight computer compatiblity for Bidirectional DShot signalling has been improved.
- The minimum output duty cycle is configurable, optionally throttle values below the minimum duty cycle can be truncated.
- The advanced settings toggle has been removed and now all settings are immediately configurable over DroneCAN.
- High eRPM performance improved.
Bug Fixes
- The bit indicating that a custom format is being used in the 'error_count' field of the DroneCAN ESC Status (1034) message is reset to 0 when all errors are cleared.
- A bug that would cause no DroneCAN debug messages to be sent for a period of time and then be sent in a large batch has been resolved.
- Improved properller parking performance, reliability and response to high temperature scenarios.
- Duty cycle is no longer limited by the overvoltage limiter when it is disabled.
- Fixed brake on stop edge cases.
Settings Changes
Settings Deprecated
- ADV_SETTINGS - Advanced Settings Toggle
- CANBUS_EN - CAN Bus Enabled
- LOG_CLR_HZ_CHG - Clear Logs on Logging Rate Change
- TLM_EN - Telemetry Enabled
- TLM_FREQ - Telemetry Refresh Rate
Settings Added
- CAN_SIG_PRIO - CAN Signal Priority
- CAN_CFG_W_ARMED - DroneCAN Allow Configuration When Armed
- CAN_TEL_STAT_RTE - DroneCAN Telem Rate
- WWDG_ZER_THT - Ignore Zero Throttle After Watchdog Event
- TLM_RPM_MECH - Mechanical RPM in Serial Telemetry
- MIN_DUTY - Minimum Duty Cycle
- MOT_BEEP_DUR - Motor Beep Duration
- MOT_BEEP_TO - Motor Beep Timeout
- MOT_BEEP_EN - Motor Starting Beep Enable
- SER_TLM_HZ - Periodic Serial Telemetry Rate
- REQ_ALL_SIG - Require All Signals to Arm
- SIG_FB_ARMED - Require Signal Armed to Fallback
- ARM_SW_EN - Secondary Arming Switch Enable
- ARM_SW_TOUT - Secondary Arming Switch Timeout
- SER_SIG_PRIO - Serial Signal Priority
- STATUS_BEEP_EN - Status Beeps Enable
- WARN_BEEP_EN - Warning Beeps Enable
- TRNC_MIN_DUTY - Truncate Throttle Below Minimum Duty Cycle
Settings Modified
- ARM_MSG_TIMEOUT - DroneCAN Armed Message Timeout Period
- Default: 5000 β 1000
- MOT_POLE_PAIRS - Motor Pole Pairs
- Default: 1 β 0
- Min: 1 β 0
- RPM_MODE_KI RPM - Mode Integral Control
- Min: 0.001 β 0
- RPM_MODE_KP - RPM Mode Proportional Control
- Min: 0.001 β 0
Subversion Releases
- None
* Requires Hargrave Configurator >=v1.9.0
2.1.0 - 18th July 2024
This release addresses the following ECNS:
- ο»ΏECN100004 - Over Temperature Response Default
Major Changes
- Over Temperature Response - is now set to Power Ramp by default
- Moved Settings -The following settings have been moved between basic and advanced
- Advanced -> Basic
- Overtemperature Ramp End Temperature (OVT_RAMP_TEMP)
- Ramp Up Rate (RAMP_UP_RT)
- Ramp Down Rate (RAMP_DWN_RT)
- Datalogging Frequency (LOG_FREQ)
- Datalogging Control (LOG_TYPE)
- Max Regeneration Current (REGEN_BUS_CUR)
- Basic -> Advanced
- Auto Timing Advance (AUTO_TIMING)
- Motor Temperature Sensor Enable (MOT_T_EN)
- RPM Limit Enable (RPM_LIM_EN)
- Prop Parking Enable (PARK_EN)
New Features
- Identify ESC - The configurator can now toggle a series of beeps and flashes to help identify which esc is being communicated with
- Logging over DroneCAN - Datalogs on the ESC can now be read over the DroneCAN tunnel
- Variable Logging Data - The following logging data columns can be enabled or disabled via settings to vary data retention length
- Log Phase Current (LOG_PHASE_CURR)
- Log Power (LOG_POWER)
- Log Voltage Ripple (LOG_RIPPLE)
- Log MCU Temperature (LOG_MCU_TEMP)
- Log Motor Temperature (LOG_MOT_TEMP), requires motor temperature sensor to be enabled
- Motor Parked - Prop parking triggers a flag in DroneCAN status and log warnings when the motor is parked
Bugfixes
- DroneCan "DISARMED" debug messages are now only sent on state change, or when trying to throttle in a disarmed state
- Improved error handling reporting
- RPM now properly reports 0RPM rpm when throttle is zero
- Phase current properly reports 0A when throttle is zero
- DroneCAN Status RPM values now saturate at the max allowable by DroneCAN
- Various stability improvements
Subversion Releases:
- 2.1.1 - Hardware Compatability Update
- 2.1.2 - Bugfix for new hardware
2.0.1 - 27th June 2024
This patch release addresses the following ECNS:
- ο»ΏECN100001 - Over Temperature Ramp Response
- ο»ΏECN100003 - Noisy CAN Bus Watchdog Restart
Bugfixes
- Over Temperature Ramp End Temperature setting now defaults to 105 degrees Celcius
- CAN Bus variable bitrate logic hardened to prevent watchdog restarts
2.0.0 - 20th May 2024
Major Breaking Upgrade
Upgrading from firmware <v1.3.2 requires additional steps to upgrade to v2.0.0.
It is possible to downgrade to a v1.x.x firmware from v2.x.x firmware if the hardware supports it, however this update process must be followed whenever upgrading from v1 to v2.
Update process for <v1.3.2 to v2.0.0
- Update ESC firmware to >=v1.3.2, <v2.0.0
- Update ESC firmware to >=v2.0.0
Breaking Changes
- Prop Parking Speed - units have been changed to mechanical RPM
- Prop Parking Strength - setting has been split into two settings based on function
- Prop Parking Turning Strength - power applied to bridge when parking
- Prop Parking Stopping Strength - power applied to bridge when parked
New Features
- RPM Mode - New drive mode to set the motor to spin to a target speed setpoint (otherwise known as governor mode, speed control, heli mode, speed governor)
- Hargrave Configurator DroneCAN support* - Support for changing settings and applying presets from the Hargrave Configurator through DroneCAN devices (e.g. CubeOrange).
- DroneCAN variable baud rate support** - Support for common baudrates less than 1Mbps.
Bugfixes
- CAN Terminator improvements
- CAN will disconnect from network if incompatible bit rate detected
Subversion Releases:
- 2.0.1 - CAN and Overtemperature Response Bug Fixes
* Requires Hargrave Configurator >=v1.4.0 ** Power cycling all ESCs is required between baud rate changes. It is recommended to setup esc configuration via usb or on a separate dronecan network before attaching to existing peripherals.
1.3.0 - 22nd Mar 2024
- Allow naming of ESC for log file identification.
- PTC setting option added.
- UART packet structure changes.
- Reversible drive mode improvements.
- DroneCAN boolean save logic reworked.
- Propeller parking sub-system improvements.
- Further starting improvements.
- Minor bug fixes.
Subversion Releases:
- 1.3.1 - Hardware compatibility update.
- 1.3.2 - 2.0.0 upgrade compatibility.
1.2.0 - 12th Mar 2024
- Improvements to bus current calibration and reporting.
- Addition of regenerative current calibration.
- Motor temperature sensing range increased.
- Regenerative current range increased.
- Communications protocol changes for config tool.
Subversion Releases:
- None
1.1.0 - 18th Jan 2024
- Default maximum switching frequency increased, improve starting performance.
- Temperature ramp setting limit increases.
- Add PTC motor temperature calculations.
- Add PWM jitter functionality.
- Calibration corrupt warning added.
- Allow DroneCAN updates when unit is in an error state.
Subversion Releases:
- 1.1.1 - Hardware compatibility update.
1.0.0 - 10th Nov 2023
- Initial production release of microDRIVE firmware.
Subversion Releases:
- None
ο»Ώ