# SOMANET Motion Drive >- `Added` for new features. >- `Changed` for changes in existing functionality. >- `Deprecated` for soon-to-be removed features. >- `Removed` for now removed features. >- `Fixed` for any bug fixes. >- `Security` in case of vulnerabilities. >- `Known Issue` for issues that are non-blocking. The format is based on [Keep a Changelog](http://keepachangelog.com/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). ## v5.0.3 - 2021-12-03 ### Fixed * Avoid torque spike when dynamically switching to homing mode. (797698226) * Fixed inaccurate reported actual velocity when the encoder can't be oversampled. (803431786) * Add option codes in the ESI for the object 0x607E Polarity. (779496775) * Improved documentation for 0x2010:08. (766927958) * Fixed the documentation typo in 0x2001. (753911906) ## v5.0.2 - 2021-11-24 ### Fixed * Fixed incremental encoder behavior never reaching zero at low velocity with high velocity precision enabled. (789599292) * Cogging recording refuses to execute if the Hall sensor is used. (781934519) * Circulo devices allow slower transfer of PDO during SAFEOP, preventing ignored SDO requests. (773737816) * Allow very large velocity demand values, particularly when the position controller isn't following the target well. (796992455) ## v5.0.1 - 2021-11-09 ### Added * Failure to complete writing to the `config.csv` file is detected and reported at next boot. (761391821) ### Fixed * SAFETY: Prevent jump to limits when enabling the position controller from outside the position limits in some situations. (776484922) * Improve common mode voltage calculation to boost bus voltage efficiency. (784877824) * Improve maximum phase voltages at saturation. (784877824) * BiSS encoder multiturn is fixed. (780326586) * Home switch is properly initialized according to the configured GPIO setting. (778623699) * Allow proper maximum motor speed if gear ratio changes. ## v5.0.0 - 2021-10-29 This version drastically breaks compatibility with the v4 series. Please refer to our migration guide documentation for details. This official release includes the following major features since v4.4. * `0x60fe` Digital outputs and `0x60fd` Digital inputs objects replace the manufacture specific objects. * Digital IO can be configured to timestamp inputs and outputs on rising edge. * Digital IO voltage level configuration is available for hardware that supports it. * Digital outputs can be configured for Statusword bits, such as `Target reached` and `Internal limit active`. * A digital output can be configured to generate a pulsed output when crossing a position setpoint. * A digital input can be configured to reset faults at rising edge. * Added a digital output configuration to reflect `fault` and `switched on` bits of Statusword. * Digital inputs can be configured to handle home and limit switches with active high or low configurations. * Interlock configuration is now supported for executing quick-stop or disabling the drive with a digital input. * Hitting a defined limit switch will quick-stop the motor. * All switch-based homing modes are supported. * External scaled measurement has a configurable low pass IIR filter on the computed value. * External scaled measurement has an error threshold to throw an error if the value is exceeded and a warning after exceeding 95%. * Introduced upper and lower error thresholds for external scaled measurement. * Option to restore parameters to factory settings from the `.factory_config` file. * Torque controller learned auto-tuning. See `0x2010:10` Settling time and `0x2010:11` Damping ratio. Kp, Ki, and Kd are now disabled. * Offset detection has been completely reworked. There are now three different methods: the first uses a rate-limited field control, the second uses a PID direction-controlled field for very fast acquisition with minimal movement, and the third can find a rough estimate of the rotor position with no movement (the brake can and should be engaged, if possible). See `0x2009:3` Commutation offset: Measurement method. * Improved speed of offset detection procedures and diagnostics. * A `Diagnostics mode` replaces `Commutation offset detection mode` (object `0x6060` value -2), with individual OS Commands to execute commutation offset detection or hardware health checks. * Instead of finding the index for incremental encoders, the third commutation offset detection method can be used. The more precise, stored, method will be used as soon as the index is found. * Mechanical power limits have been added. See `0x200b` Max power for details. Hardware limitations are now respected. * Preset Drive and Core temperature limits will raise a warning at 5 degrees before the limit, and error when the limit has been hit. * Encoder sampling frequency increased to 32 kHz for feedback filtering, when possible. * Encoders with an absolute single-turn sensor no longer consider the MSB the sign. The value is always unsigned. Homing will need to be performed after upgrade. * OS Command 14 was added to temporarily disable acting on BiSS encoder errors. * A single-turn offset is available for all absolute encoders. * PDO maps are no longer saved to the internal configuration. However, they are still loaded, so the `config.csv` can be modified by hand and saved via FoE if you wish to have a different default PDO map. * A Synapticon logo has been added to the ESI file for the EtherCAT master to display. * Added support for CIA402 transition 16. * Cyclic heartbeat now uses the EtherCAT Slave Controller watchdog, and is therefore configurable.