Firmware Release Notes

Änderungen der freigegebenen HDrive-Firmware. Updates per FoE (EtherCAT) oder über die Ethernet-Web-GUI.

HDrive-ETC

HDrive17-ETC und HDrive23-ETC · EtherCAT · CiA 402

V2.02.0

  • Bugfix Web-UI debug PDO (mode 4, slot 2) velocity is deg/s, same as 0x606C. It was still RPM, so the GUI speed gauge was off by 6
  • Bugfix demandedSpeed is deg/s (same as 0x60FF / 0x606B). Profile Position and Profile Velocity path planners use deg/s and deg/s²;
  • Feature Limit-switch homing modes 15-18: DI1 (0x6691) for negative, DI2 (0x6692) for positive. Search speed is 0x60FF; return speed is 20 %. Polarity 0x60FE. Simple zeros at the switch opening edge; advanced continues to encoder 0°
  • Feature CoE 0x100A (Manufacturer Software version) includes the git short hash, e.g. 2.2.0-a1b2c3d4
  • Feature New error 54 WrongPathPlannerSettings for invalid profile acceleration/deceleration
  • Feature Optional PDOS 0x1A05 and 0x1A06 for internal testing and production. Default SM3 assignment stays 0x1A00 - existing TwinCAT mappings unchanged

V2.01.4

  • Bugfix Live "Trigger new parameter calculation" (0x6637=1) no longer zeros the position-filter multiturn / PT1 state. Changing Rotor inertia or Damping while enabled had jumped actual position, tripped overspeed/fault

V2.01.3

  • Bugfix Update from 2.1.0 keeps the calibration table: boot only converts the stored table when it is positively recognised as a legacy 4096-point one, instead of converting whenever the format marker is missing (2.1.0 drives that had been updated from 2.0.x were still converted and lost their calibration)

V2.01.2

  • Bugfix FoE update from 2.1.0 no longer destroys the compact 50-point calibration LUT (2.1.0 had no format marker; ripple data was mistaken for a legacy 4096-point table)

V2.01.1

  • Bugfix EtherCAT PHY bring-up: hold PHY_RESET until ESC EEPROM load and CLK25 are ready (reduces intermittent daisy-chain INIT failures)
  • Feature Distinct EtherCAT product codes for HDrive17-ETC (0) and HDrive23-ETC (1); set at startup from coil resistance
  • Feature ESI (HDrive-ETC.xml) lists both device types for TwinCAT
  • Feature ESC SII EEPROM is rewritten from the firmware factory image when product code or ESC_EEPROM_CONTENT_VERSION mismatches
  • Feature EEPROM factory defaults distinguish NEMA17 and NEMA23
  • Feature Legacy 4096-point calibration EEPROM is migrated to compact 50-point format on boot

V2.01.0

  • Feature Implemented model based filter for speed observer to increase control bandwidth
  • Feature Add automated correction to compensate for motor inaccuracies

V2.00.1

  • Bugfix Fixed very quick (about 0.1ms) short circuit when switching operation modes
  • Feature Implemented thermal model to estimate case and coil temperature

V2.00.0

  • Bugfix Corrected startup so motor does not start with undervoltage error 19.
  • Feature Increased PWM Frequency to 26 kHz to increase power efficiency and control bandwidth
  • Feature Increased Torque and efficiency
  • Feature Increased max. speed to >2000 RPM

V1.28.0

  • Bugfix Corrected CiA402 Statemachine after "Shutdown" or "Disable Operation" command.

V1.27.0

  • Bugfix Added correct position overflow handling if the int32 target position field overflows. This enables an endless motion e.g. conveyor

V1.25.0

  • Bugfix Corrected inertia value. The inertia value was accidentally multiplied by 5. To maintain the same behavior, please multiply your value by 5 to ensure compatibility.
  • Bugfix Corrected the state machine; some states did not reset the flags correctly.
  • Bugfix Corrected the torque output. It is now expressed as a percentage of the maximum torque (e.g., 1000% indicates maximum torque).
  • Bugfix Corrected some field names in the Object Dictionary.

V1.23.0

  • Bugfix The remote bit was not correctly reset when switching from "Switch on disabled" to "Not ready to switch on."
  • Bugfix Limited speed control output to MaxProfileVelocity (0x607F). This value is in °/s (default = 3000 °/s).
  • Bugfix Removed coil current A and B entries from the Object Dictionary.
  • Feature General code refactoring and improved current control jitter performance.

V1.22.0

  • Bugfix The actual position was losing precision at high values, causing a very noisy speed signal in the PLC.
  • Bugfix The target position was losing precision when transferred from the PLC at high values, resulting in noisy operation.
  • Bugfix The scaling of target velocities (°/s) in velocity control was incorrect.

V1.21.0

  • Bugfix Corrected the current calculation from the MaxTorque (0x6072) object. (Note: This fix is untested and awaiting dyno validation.)
  • Bugfix Changed the target position data type from std::float to a precision float type to avoid precision limits on high numbers.
  • Bugfix Corrected the anti-windup control algorithm for position control.

Changelog herunterladen (.md)

HDrive17-ETH

NEMA17 · Ethernet · Firmware

May 19, 2026 V2.83

  • TCP command port: second simultaneous client is rejected (accept-and-close) instead of queued; avoids NDK socket exhaustion/crash when two clients connect to the same ticket port.
  • TCP objWriteCAN: synchronous CAN slave OD write over the command channel (same mailbox as Web `slvobj`).
  • HDrive manual: Ethernet services and connection limits (one command client, motor stream), objWriteCAN example, HDriveConfigFile sub-key tables for m2/m4/m5/m6.

May 17, 2026 V2.82

  • Ticket/XML path hardened: bounded parsing on all RX tickets; fixed-size responses on TX binary/CAN/EEPROM/config tickets and WebServer CGI handlers (writeTicket, parameter save, slave OD, firmware upload).
  • CAN master: ISR start/stop sequencing improved for safer operation under heavy bus traffic and during slave parameter transfers.
  • TCP objReadCAN: synchronous CAN slave OD read over the command channel; waits for CAN bus-off recovery before issuing a slave read.
  • HDrive manual and README updated for CAN slave access over HTTP and TCP.

March 29, 2026 V2.81

  • CAN master/slave: object dictionary read/write on any slave via new IDs (master TX 220+canId, reply 231).
  • Web: getData.cgi?slvobj=r_slot_main_sub (read), slvobj=w_slot_main_sub_value (write).
  • TCP: <objReadCAN sl="slot" m="mainKey" s="subKey" /> reads a CAN slave object via the master.
  • CAN master/slave: Ability for FW update over CAN
  • Web GUI: new "CAN Slaves" page showing FW/voltage/temperature/position/torque per slot with a per-slave Upload Firmware button and progress bar.
  • Web GUI: new control mechanic so also CAN-slaves can be controlled from master GUI

Feb 13, 2026 V2.67

  • When UDP host is set to 0.0.0.0, UDP packets are sent to the IP of the connected TCP client
  • Read object: Fixed memory leaks (replaced std::string/std::stoi with snprintf/atoi), fixed getData.cgi crashes and RX buffer overflow; output format changed to shorter format (e.g. <r a="4" b="22" v="0" />)

June 18, 2024 V2.60

  • Added torque ripple compensation

March 17, 2023 V2.55

  • Fixed Step/Dir Interface
  • Fixed a bug in CAN communication interface

March 17, 2023 V2.54

  • Added Oscillation motor mode

Mai 15, 2022 V2.53

  • Added Speed Out as PWM interface
  • Added HW-Release V7 compatibility
  • Implemented HW-Revision 7

Mai 15, 2022 V2.51

  • Added new message ticket "Binary Can Ticket Full" with additional information like speed and torque for all attached slaves
  • Added new Velocity / Direction interface over digital I/O

Oct 06, 2021 V2.49

  • Fixed a bug in the Homing procedure. Different starting positions on the axis could lead to different zero positions after a successful homing.
  • relaxed the over speed observer

July 17, 2021 V2.48

  • Changed DRV8412 fault pin detection algorithm to a more relaxed one.
  • Auto disable the motor when firmware upgrade process is running
  • Fixed digital I/O Interface
  • Removed ABI interface of motor encoder because it is not used anymore

Mar 18, 2021 V2.45

  • Fixed “PWM in” for Position, Speed or Torque control by Digital I/O
  • Digital I/O Pin mapping synced for HW rev. 5 and rev. 6
  • Increased ADC current filters by oversampling of the ADC
  • Changed internal velocity measurement to continuous data acquisition
  • Fixed a bug in the scaling of the graphs in the GUI
  • Fixed the torque scaling in stepper mode (the torque was too high)

Feb 22, 2021 V2.42

  • Improved ADC measurement accuracy to reduce system noise
  • Continuous speed filter to increase deterministic

Jan 25, 2021 V2.41

  • Added compatibility for HW. Rev 6
  • Increased performance of control timings
  • Fixed the TCP-Port - it was set statically
  • Fixed Digital I/O, the protocol did not deliver the whole Digital I/O state
  • Fixes CAN issues
  • Updated Web GUI to version1.10 with many bugfixes
  • General Refactoring, disabled support for HW. Rev 4 or less.

Release Notes herunterladen (.txt)

HDrive17-ETH Web-GUI

Eingebettete Web-GUI (passend zur jeweiligen Firmware-Version)

May 17, 2026 V2.0.5 (use with firmware V2.82)

  • Fixed master magnet calibration start: pause live binstream before mode-9 writeTicket posts; show an error if writes fail; resume telemetry after the ticket chain completes.
  • mainfunctions.js: retry transient writeTicket.cgi / getData.cgi network errors; fixes dropped calibration and OD writes on the embedded HTTP stack.
  • Position slew rate labels and scaling aligned to [1/10 °/s] in Motor settings and Control tuning.
  • CAN Slaves sidebar: per-slave Calib and Restart actions; hardened parameter upload/download with read-back verification.
  • Fixed motor current-scale factor not written correctly on parameter save.
  • Smaller minified single-file GUI (index.htmlmin) with boot-critical JS/CSS inlined to reduce first-load socket pressure.
  • CAN Slaves page: live FW/position/target/voltage/temperature/torque/mode/error for up to 8 slaves; refresh, stop, last-error reset, firmware upload over CAN, parameter export/import.
  • Graph toolbar: Pause, Reset zoom, Clear chart data; S1-S8 overlays for slave positions.
  • Maintenance tab: dedicated cards for firmware upload, Web GUI upload, parameter download/upload, restart, factory reset, and bootloader mode.
  • fallback.html + mainfunctions.js helpers; object-dictionary debug panel (press `d`).

V1.15

  • Added PWM speed output option for Digital I/O

V1.14

  • Added new Digital I/O function. Speed control with digital input for speed direction and enable.

V1.13

  • solved a display bug. The debug panel was also rendered invisible in the background of the page header

V1.12

  • Added debug panel. The debug panel can be activated by pressing 'd' on the keyboard if the focus is set to the browser window.

Release Notes herunterladen (.txt)

Zurück zu den Support-Downloads. Fragen: info@henschel-robotics.ch.