# ESSENTIALS FIRMWARE RELEASE NOTES

Kollmorgen's Essentials Drive is a leading edge drive product that provides many state of the art features. These release notes for the Essentials firmware (the software that runs on the Essentials drive) describe the significant features and changes introduced with each release.

WorkBench 2.20.0.12468 or later is required to use this Essentials firmware release. In general, Kollmorgen recommends that you update to the latest available WorkBench when you install new Essentials firmware.

# Version 02-16-00-003 : June 22, 2026

## Fieldbus

- SDO Logs Were Not Working [Req#93483] [D-09973]

Issue:

There was an issue where the SDO log, which can be queried using CANOPEN.SDOLOGDUMP, wasn't collecting any data and therefore was always empty.

Solution:

SDO logging has been fixed and is correctly logging SDO data. However, due to limitations of the interface, the command byte is not available and is marked as "N/A".

- Fieldbus info keywords made more consistent [S-26694]

Issue:

The fieldbus info keywords (eg. ECAT.INFO, PROFINET.INFO, EIP.INFO) did not provide consistent data across each fieldbus, and even between ECAT.INFO on AKD2G vs the Essentials drives.

Solution:

The fieldbus info keywords now follow a more consistent data scheme, with the most important data near the top and less visual clutter.

- PROFINET- Adjustable linear sensor position resolution [Req#89481] [S-26642]

Issue:

Linear sensor position resolution was always 20 bits per motor pole pitch. The sensor interface information in PNU979 communicates sensor resolution as nanometers per count, which was not always an integer for all motor pole pitch values, leading to incorrect scaling if the Profinet master used that information.

Solution:

A new keyword AXIS#.PROFINET.SENSORRESLINEAR has been implemented. It can be used to set the resolution of the linear sensor position in nanometers per count. When using the default value, the old resolution of 20 bit per pole pitch is used.

^ Back to Top ^

# Version 02-16-00-001 : April 24, 2026

## General

- Fault reactions changed from Controlled Stop to Disable Immediately [D-10138]

Issue:

Several fault reactions were incorrectly set to Controlled Stop, potentially causing damage to the drive under certain conditions.

Solution:

The fault reactions now disable the drive immediately when triggered.

^ Back to Top ^

# Version 02-16-00-000 : March 18, 2026

## Feedback

- Axis couldn't enable in sensorless mode if feedback faults were active [Req#90983] [D-10089]

Issue:

There was a bug where if there were feedback faults on the drive, then AXIS#.MOTOR.TYPE 2 or 10 was selected, the axis would not enable properly. Since AXIS#.MOTOR.TYPE 2 and 10 are sensorless modes, the drive should ignore feedback faults.

Solution:

The axes will ignore feedback faults and properly enable in sensorless modes.

- Remove Unusable Feedback Keywords [S-25618]

Issue:

Several FB#.* keywords were generated even if they were never used by any of the feedback types supported by the respective connector.

Solution:

FB#.* keywords are only generated if they are used by at least one feedback type supported on the respective connector.

^ Back to Top ^

## Motion

- Torque Spike after enabling following a fault. [Req#90951] [D-10091]

Issue:

When an axis is under fieldbus control and the axis faults, a torque spike is created upon first enable following the fault.

Solution:

A bug was found in the square interpolator that is now re-initialized correctly after a fault.

^ Back to Top ^

## Motor & Power Stage

- Additional calibration for phase current feedback [S-26374]

Issue:

When the axis is enabled, the phase current sensors have a slightly different offset compared to when the axis is disabled. The mechanism for calibration implemented in firmware could not compensate for that difference in offset.

Solution:

The calibration mechanism has been adjusted, to continue calibration for a short time after enabling. The axis does not accept motion commands during that time, which is indicated in bit 5 of AXIS#.MOTIONDISSOURCES.

^ Back to Top ^

# Version 02-15-01-002 : March 16, 2026

## Fieldbus

- PROFINET - PNU 923 data incorrect when read through Device Access [S-26509]

Issue:

If PNU 923 was read through the Device Access mechanism, it didn't return any mappable parameters.

Solution:

Firmware was changed to return the correct list of mappable parameters when reading PNU 923 through Device Access.

^ Back to Top ^

# Version 02-15-01-001 : February 27, 2026

## Fieldbus

- PROFINET - Simultaneous PNU access through multiple Application Relationships not supported [S-26510]

Issue:

In addition to the IO Application Relationship the drive allows opening an additional Device Access Application Relationship. It was not possible to access PNUs from both at the same time.

Solution:

Firmware now supports simultaneous PNU access through multiple Application Relationships.

^ Back to Top ^

# Version 02-15-01-000 : February 2, 2026

## Action Table

- New Action Task - External Motion Task Event [Req#90050] [S-26353]

Details:

A new action task type "External Motion Task Event" has been added to the firmware. A motion task can be set up to wait for this event before starting its following task.

^ Back to Top ^

## Feedback

- Home offset is preserved if feedback is transiently unidentified [D-10024]

Issue:

When an absolute feedback with a home offset is reinitialized and is temporarily unidentified, the home offset was cleared from non-volatile storage.

Solution:

The home offset is not cleared now when a feedback is unidentified but was identified previously as an absolute feedback.

^ Back to Top ^

## Fieldbus

- EtherNet/IP - Fault when downloading program to PLC on some setups [Req##86011] [S-225894]

Issue:

On certain setups, the drive would show F7005 when downloading a program to the connected PLC.

Solution:

The drive no longer faults when a program is being downloaded to the PLC.

- IL.CMDACC is wrong when VL.GEARRATIO is not unity [S-26213]

Issue:

When under fieldbus motion control, if dual loop feedback sources are in use, the acceleration command was not accurate. In most instances this would go unnoticed, and the user would compensate by turning up feedforward gains. Instances with physical gearing to another axis would cause fighting between axes.

Solution:

The acceleration command from the fieldbus now accounts for VL.GEARRATIO and applies it to the acceleration command.

- Updated Warning 7012 description [Req#86455] [S-25947]

Issue:

The warning description for Warning 7012 was not very clear on why the warning was active.

Solution:

The warning description has been updated to be more specific.

- Added command AXIS#.CANOPEN.OPMODE [S-26311]

Details:

Added a Workbench command to get the EtherCAT operation mode which are accessible from CanOpen indices 0x6061 and 0x6861.

- Added hardware revision industrial ethernet object [S-26149]

Details:

An industrial ethernet object that was supported by EtherCAT has been added for EtherNet/IP and PROFINET as well. The ID is 42200 for EtherNet/IP and PROFINET. For EtherCAT, the index remains the same (1009h sub 0h).

- Added keywords for reading PDO mapping and data [S-26394]

Details:

New keywords CANOPEN.PDORX, CANOPEN.PDOTX, CANOPEN.PDORXMAP and CANOPEN.PDOTXMAP have been implemented. They can be used to read the drive's currently configured PDO mapping. Additionally, CANOPEN.PDORXDATA and CANOPEN.PDOTXDATA have been added to EtherCAT drives, giving access to their current PDO data.

- Fieldbus - EtherCAT - Generate list of CanOpen objects [S-26393]

Details:

New command CANOPEN.OBJECTLIST was created to give some information about the implemented CanOpen objects

^ Back to Top ^

## General

- AXIS#.HOME.OFFSETUSER limits influenced by modulo [Req#89750] [D-10059]

Issue:

Modulo settings were incorrectly applied to the limits of AXIS#.HOME.OFFSETUSER.

Solution:

Firmware has been changed, so that modulo settings no longer influence the limits of AXIS#.HOME.OFFSETUSER.

- Certain Flash Data Could Not Recover From Corruption [D-10041]

Issue:

Certain drive data stored in flash (homing offsets and fieldbus data) was not recoverable if corrupted. Future writes to this data would not be saved as a result.

Solution:

The data can now be recovered and subsequent writes to this data succeed.

- Integer Lookup Table may truncate input index [D-10045]

Issue:

A rounding error was identified when the lookup table tries to determine which output value to use for a given input. The bin width was being truncated to an integer instead of maintaining precision.

Solution:

The lookup table widths have been fixed for integer lookup tables.

- Custom Fault Mapping Mechanism [S-26279]

Details:

A mechanism to map drive faults to custom 8-bit fault codes has been added to the firmware. AXIS#.FAULTSCUSTOMCFG can be used to set up the mapping. Fault codes can be read from AXIS#.FAULTSCUSTOM, which is cycling through active fault codes with an interval defined in AXIS#.FAULTSCUSTOMCYCLE.

^ Back to Top ^

## Motion

- AXIS#.VL.CMDU does not highlight the STOP button in Workbench [Req#89752] [D-10072]

Issue:

Using AXIS#.VL.CMDU did not set any motion status bits.

Solution:

Setting AXIS#.VL.CMDU now sets a motion status bit, allowing Workbench to identify when motion is occurring through the use of AXIS#.VL.CMDU.

- Biquad blocks don't reconfigure when an Output Keyword Block is changed [Req#88290] [D-10023]

Issue:

Biquad blocks have keywords that can be set inside an Output Keyboard block. Setting these keywords does not reconfigure the Biquad coefficients

Solution:

Setting the Output Block keywords reconfigures the Biquad blocks now.

- Service Motion sometimes does not start [D-09946]

Issue:

Rarely when starting a service motion with the keyword AXIS#.SM.MOVE the motion would not start.

Solution:

Firmware updated so every time AXIS#.SM.MOVE the motion will start. A similar issue in the code was found for the AXIS#.GEAR.MOVE. This was also fixed.

- Added AXIS#.VL.LOOPGAIN to control loops [S-25925]

Details:

Each axis now has a scaling term at the output of the velocity loop correction (excluding feedforwards) that defaults to 1.0 (pass-through). Lowering this or increasing this scales the loop gain based on the value of AXIS#.VL.LOOPGAIN

^ Back to Top ^

## Motor & Power Stage

- Added New Power Module Over Temperature Fault [S-26395]

Details:

A new F2506 power board fault has been added to trigger whenever the power stage module is over temperature.

^ Back to Top ^

# Version 02-15-00-000 : August 22, 2025

## Action Table

- ACTION#.TASKPARAM units would not update if the axis units it depended on changed [Req#87232] [D-09977]

Issue:

The unit string of ACTION#.TASKPARAM would not properly update if the axis units it depended on changed even though the unit conversion properly updated.

Solution:

The unit string of ACTION#.TASKPARAM properly updates if the axis units it depends on changes.

^ Back to Top ^

## Fieldbus

- AXIS1.PROFINET.TELEGRAMID incorrectly included Telegram 800 in settable range [Req#87905] [D-09993]

Issue:

The keyword help for AXIS1.PROFINET.TELEGRAMID included Telegram 800 in the allowed settable range even though it's not settable. Only Axis 2 supports Telegram 800.

Solution:

Updated keyword help for AXIS1.PROFINET.TELEGRAMID to remove Telegram 800 from the settable range.

^ Back to Top ^

## General

- Status LED indicates when drive boots into Recovery [S-25262]

Issue:

Status LED blinked green whether drive booted into Recovery or Operational modes.

Solution:

Status LED now blinks red when drive boots into Recovery.

^ Back to Top ^

# Version 02-14-04-002 : August 13, 2025

## Fieldbus

- CANopen - SDO values written to profile acceleration or deceleration treated as signed [S-25879]

Issue:

Values written to profile acceleration (6083h) or profile deceleration (6084h) via SDO were interpreted as signed values, even though the objects and the related keywords AXIS#.FBUS.ACC/DEC are unsigned. Depending on the scaling, values larger than 2^31-1 could be valid, but attempting to write them resulted in an abort.

Solution:

Values written to Profile Acceleration or Profile Deceleration via SDO are now correctly interpreted as unsigned.

- EtherNet/IP - IP settings lost on firmware updates [D-09975]

Issue:

On certain drive firmware updates, IP settings would be lost and need to be reconfigured.

Solution:

IP settings are now no longer lost between drive firmware updates.

- EtherNet/IP - Object sizes inconsistent between mapping and explicit messaging [Req#86639] [D-09956]

Issue:

Objects that accessed 64-bit keywords, that were not using position, velocity or acceleration scaling, were 64 bits wide when mapped in an assembly, while they were truncated to 32 bits when accessed through explicit messaging. Those objects were also documented and displayed in EIP.OBJECTLIST as being 32-bit.

Solution:

The affected objects have been changed to be 32-bit when mapped in an assembly, matching explicit messaging, EIP.OBJECTLIST and documentation.

- PROFINET - Incorrect behavior of PROFIdrive position feedback interface state machine [S-25924]

Issue:

The drive's PROFIdrive position feedback interface state machine did not properly react to feedback faults. Depending on the current state, it also sometimes allowed transitioning into the "Parking" state, even though the axis was enabled. Furthermore, the reported error codes could be incorrect, especially in situations where multiple errors were active.

Solution:

The firmware was changed so that feedback faults cause the position feedback interface state machine to go into the "Error" state, transitioning into "Parking" is prohibited regardless of the current state and the error codes follow the priority defined in the PROFIdrive specification.

- PROFINET - Configure reduced speed setpoint channel when telegrams 3, 5 or 105 are selected [Req#86002] [S-25905]

Issue:

Firmware automatically determines the operating mode (PNU 930) based on the selected telegram. All telegrams that have the drive operate in velocity mode were configuring operating mode 1 (standard setpoint channel), which limits acceleration / deceleration using AXIS#.FBUS.ACC/DEC. For application class 4 (closing the position loop in the master) this could cause the axis to become unstable.

Solution:

Firmware has been changed to configure the reduced speed setpoint channel (PNU930 = 3), if a telegram is selected that provides position feedback to the PLC (telegrams 3, 5 and 105). With this configuration, the velocity command from the PLC is used without limiting acceleration or deceleration.

^ Back to Top ^

## General

- LOAD.INERTIA supports negative Inertia [D-09954]

Issue:

AXIS#.LOAD.INERTIA was limited to positive inertia values. This was a problem for the Inertia Measurement and Quicktune features if the MOTOR.INERTIA keyword was set to a value higher than the actual motor inertia. This could result in an unstable tuning solution when using Quicktune.

Solution:

AXIS#.LOAD.INERTIA now supports negative values. This allows the Inertia Measurement and Quicktune features to compensate for an incorrect MOTOR.INERTIA value and improves reliability of the Quicktune feature.

^ Back to Top ^

## Motor & Power Stage

- AXIS#.MOTOR.TYPE 2 and 10 wouldn't work after enabling AXIS#.MOTOR.AUTOSET [Req#87121] [D-09969]

Issue:

AXIS#.MOTOR.TYPE 2 (Rotary, V/f Open Loop Induction) and 10 (Rotary, Sensorless Permanent Magnet) would not work properly if AXIS#.MOTOR.AUTOSET was enabled after setting those motor types.

Solution:

Enabling AXIS#.MOTOR.AUTOSET no longer breaks AXIS#.MOTOR.TYPE 2 and 10

^ Back to Top ^

## Security

- New keyword SECURITY.LEVEL [S-26085]

Details:

A new keyword SECURITY.LEVEL is introduced. This is reserved for future use.

^ Back to Top ^

# Version 02-14-04-001 : June 30, 2025

## Motor & Power Stage

- Added AXIS#.FAULT2018.ACTION Keyword [Req#86897] [S-26002]

Details:

AXIS#.FAULT2018.ACTION was added, allowing the user to customize the action taken by the drive when a motor phase loss is detected.

^ Back to Top ^

# Version 02-14-04-000 : June 13, 2025

## Fieldbus

- ASCII SDO objects not listed in SDO info [S-25861]

Issue:

The ASCII SDO objects (2028h) were not listed in SDO info, causing a discrepancy between online information and ESI file.

Solution:

Firmware was changed to list the ASCII SDO objects in SDO info.

- Profinet - Bit 10 of ZSW1 not following Profidrive specification [S-25890]

Issue:

Profidrive ZSW1 bit 10 is specified to be set, when the actual velocity is above the configured comparison velocity, ignoring sign. Firmware incorrectly considered the sign of the actual / comparison velocity when determining whether to set bit 10.

Solution:

Firmware now sets ZSW1 bit 10 when |actual velocity| > |comparison velocity|. The comparison velocity was kept as a signed value for backwards compatibility.

- Profinet - Bit 8 of ZSW1 not following Profidrive specification [S-25890]

Issue:

Profidrive ZSW1 bit 8 is specified to be set, when the velocity error is within a configured range. Instead, firmware was setting the bit when the actual velocity was within the configured range of the fieldbus velocity setpoint.

Solution:

Firmware was changed, so that bit 8 of ZSW1 follows the Profidrive specification.

- Removed Analog Velocity and Analog Torque DS402 Modes of Operation [Req#86000] [S-25893]

Issue:

Since analog I/O is not supported on Essentials drives, the Analog Velocity (-2) and Analog Torque (-1) DS402 modes of operation won't work.

Solution:

The Analog Velocity and Analog Torque DS402 modes of operation have been removed.

- Added New Fieldbus Fault 7020 [S-25716]

Details:

A new clearable fieldbus fault 7020 was added and is set if a timeout is encountered during certain fieldbus operations handled internally by the drive.

- Non-Distributed Clock Synchronization [S-25760]

Details:

If Distributed Clock is not enabled, the drive supports synchronization based on SyncManager2 events.

^ Back to Top ^

## General

- DRV.NVLIST Returns Error Under Certain Keyword Configurations [Req#85601] [D-09930]

Issue:

In certain keyword configurations, such as setting ACTION#.SOURCE to 26 and not setting ACTION#.SOURCETEXT, DRV.NVLIST would return an error partway through printing NV parameters.

Solution:

DRV.NVLIST no longer returns errors partway through execution. Any NV keywords could not be read are reported in the comments section at the end of the DRV.NVLIST output.

- Large voltage bursts in X10 logic supply would crash the drive [S-25920]

Issue:

The drive would crash when large voltage bursts (over 2.4kV) were applied to the 24 V DC logic supply (X10).

Solution:

The drive no longer crashes when large voltage bursts are applied to the 24 V DC logic supply.

^ Back to Top ^

## Motion

- Controlled Stop decelerates at incorrect speed in dual loop applications [D-09927]

Issue:

A bug was identified when dual loop is configured (when Position Feedback Source is not the same as the Velocity Feedback source) and a controlled stop is initiated (Note: Limit switches also cause a controlled stop). The controlled stop will decelerate and generate a stop trajectory based on the velocity and does not take into account the dual loop scaling.

Solution:

PL.KVFF is now used to generate the stop profile so the position trajectory is scaled with respect to the velocity profile.

- Cogging Comp Teach Speed Expanded Range [Req#85806] [S-25880]

Issue:

The Cogging Comp Teach velocity minimum was set to 0.5 RPM. This meant applications with high dual loop ratios would not be able to "teach" at a reasonable machine speed.

Solution:

The range of the Cogging Comp Teach velocity minimum has been reduced to 0.001RPM.

- Enhance AXIS#.VL.KIWAITFORSETTLE and AXIS#.PL.KIWAITFORSETTLE [S-25850]

Details:

A new mode for AXIS#.VL.WAITFORSETTLE and AXIS#.PL.WAITFORSETTLE with a new value 2. When WAITFORSETTLE equals 0, the integrator is always on, when set to 1 the integrator is only active when the axis is within the settling window. A new mode 2 has been added, the integrator will only be active when the axis is outside of the settling window.

- New Gain AXIS#.VL.GEARRATIO

Details:

A new gain has been added in the position loop path. It allows the user to scale the position loop gains into the correct velocity command for dual loop applications. For most applications AXIS#.VL.GEARRATIO should be set to 1.0, however, if dual loop is being used, it should be set to the ratio between the position loop feedback and velocity loop feedback sources.

^ Back to Top ^

## Motor & Power Stage

- Harmonic cogging compensation not working with AXIS#.DIR 1

Issue:

The cogging compensation configured by the AXIS#.IL.COGCOMPH keywords applied the compensation with an inverted sign when AXIS#.DIR was set to 1.

Solution:

Cogging compensation from AXIS#.IL.COGCOMPH keywords is now applied correctly when AXIS#.DIR is 1.

- Cogging compensation teach move changed to work with harmonic cogging compensation enabled [S-25852]

Issue:

If a cogging compensation teach move was executed, while the harmonic cogging compensation was configured and enabled, it generated a table that contained compensation for the motor cogging, that was already compensated for by the harmonic compensation. With both mechanisms enabled, compensation for motor cogging was applied twice, leading to decreased velocity smoothness.

Solution:

Firmware was changed, so that the cogging compensation table created by the teach move no longer contains compensation for effects that are already compensated for by the harmonic compensation.

^ Back to Top ^

# Version 02-14-03-000 : April 22, 2025

## Fieldbus

- Profinet and EtherNet/IP Drives Crashed Under Certain Conditions [D-09934]

Issue:

Under certain circumstances, Profinet and EtherNet/IP drives would crash while communicating with a fieldbus master.

Solution:

Profinet and EtherNet/IP drives no longer crash while communicating with a fieldbus master.

- Profinet drives would rarely crash when handling supplementary telegram signals [D-09924]

Issue:

Profinet drives would get a rare crash when supplementary telegram signals were configured on the drive.

Solution:

Profinet drives no longer crash with supplementary telegram signals are configured on the drive.

^ Back to Top ^

## General

- WorkBench Free - Busy Flickering [S-25825]

Issue:

It was found that older versions of one of the Rockwell RSLogix 5000 tools would periodically open the Essentials drive COM port. This had the effect that when Kollmorgen WorkBench was trying to connect to the drive it would flicker between free and busy. The latest versions of RSLogix 5000 do not generate this issue.

Solution:

The Essentials drive is now able to detect the Rockwell tool polling and stay in the free state. The state in WorkBench will no longer flicker between free and busy.

^ Back to Top ^

## Motion

- Jog Motion Defaults lowered [S-25804]

Issue:

The default velocity and acceleration settings for Jogging were set high by default.

Solution:

The default speed has been lowered to 30RPM and the Acceleration/Deceleration settings have been lowered to 1000 RPM/s. This change will make Jogging safer for commissioning as well as being less stressful to mechanical components when the load is unknown.

- Added AXIS#IL.VCMD for Essentials drives [S-25617]

Details:

This parameter was supported on AKD2G drives but was missing on Essentials drives. On AKD2G drives this parameter is the Q axis voltage feedback. Essentials drives do not support motor phase voltage measurement so this parameter is the Q axis voltage command.

^ Back to Top ^

# Version 02-14-02-000 : March 26, 2025

## Fieldbus

- EtherNet/IP - CIP Sync Dynamic Mapping Issue On Single Axis Drives [Req#85009] [D-09918]

Issue:

On single axis drives, the CIP Sync assembly dynamic mapping areas did not work properly.

Solution:

The dynamic mapping areas of the CIP Sync assemblies now operate as expected on single axis drives.

^ Back to Top ^

## Motion

- AXIS#.SETTLE.T Missing Units [D-09917]

Issue:

The AXIS#.SETTLE.T keyword did not have the appropriate units defined.

Solution:

The AXIS#.SETTLE.T keyword units are now defined and display properly in DRV.HELP.

- AXIS#.VL.KP Defaults to 0 [Req#84767] [D-09911]

Issue:

In certain configurations, AXIS#.VL.KP was set to 0 on boot or when resetting parameters to the factory defaults - preventing the drive from moving in velocity or position modes.

Solution:

AXIS#.VL.KP is now properly set to a non-zero value on boot or resetting parameters to the factory defaults.

^ Back to Top ^

## Motor & Power Stage

- New cogging compensation algorithm [S-25779]

Details:

A new cogging compensation algorithm has been added for use with programmed motors. The keywords AXIS#.IL.COGCOMPH.A, AXIS#.IL.COGCOMPH.P, and AXIS#.IL.COGCOMPH.N have been added that represent amplitude, phase offset, and frequency, respectively. The algorithm automatically loads data from motor memory into these keywords for smoother motion, provided AXIS#.MOTOR.AUTOSET has been set to 1. AXIS#.IL.COGCOMPH.ENABLE controls whether the feature is enabled (1) or disabled (0).

^ Back to Top ^

# Version 02-14-01-000 : February 21, 2025

## Action Table

- Extended the range of DRV.CMDDELAY and made it useable in the Command Buffer only. [S-25705]

Issue:

The range of DRV.CMDDELAY was unnecessarily restrictive. Furthermore, it could be executed outside of the Command Buffer, even though it was intended to only be used there.

Solution:

The range of DRV.CMDDELAY has been extended up to 2^32-1/4 ms. It is now only executable through the Command Buffer.

^ Back to Top ^

## Fieldbus

- Profinet - Allow configuration of axis as gantry slave [Req#83199] [S-25626]

Issue:

When the Profinet configuration is sent to the drive by the PLC, the firmware automatically determines the Profidrive operating mode and the drive's OpMode and command source based on the telegram selection, defaulting to speed control and Fieldbus/Velocity if no telegram was configured for axis 2. This caused issues when axis 2 was configured as a gantry slave, as the fieldbus initialization would override the gantry command source.

Solution:

A new manufacturer specific Profidrive operating mode 0x8001 and a new telegram 800 have been implemented. With telegram 800 configured, the firmware will set the Profidrive operating mode to 0x8001, which will set the drive's command source to Gantry. Telegram 800 contains no data, as the axis is fully under control of the gantry master axis when in gantry mode.

- Added new COE object for DRV.REBOOT (Index 3000h sub 0Ch) [Req#83287] [S-25645]

Details:

A new write-only object for DRV.REBOOT (COE index 3000h, subindex 0Ch) has been added to the object dictionary for EtherCAT/CANopen. This object allows the user to perform a soft reboot to the drive by writing 0xAABBCCDD to this object.

^ Back to Top ^

## General

- CMP#.VAL returned incorrect values after large jumps in CMP#.SOURCEVAL [D-09877]

Issue:

CMP#.VAL would sometimes return incorrect values after a large jump in CMP#.SOURCEVAL, such as a AXIS#.HOME.SET for example. This would cause the compare outputs to no longer be aligned with CMP#.SOURCEVAL.

Solution:

CMP#.VAL no longer returns incorrect values after large jumps in CMP#.SOURCEVAL. Therefore, the compare outputs will always be aligned with CMP#.SOURCEVAL regardless of the change in CMP#.SOURCEVAL.

- DRV.NVCHECK Returned Same Value After Parameter Change [D-09876]

Issue:

Under rare circumstances, it was possible for DRV.NVCHECK to return the same value despite one or more drive parameters being changed.

Solution:

DRV.NVCHECK now returns a 32-bit number instead of 16-bit to greatly reduce the chance of this collision occurring - however it is still possible. To fully guarantee all parameters between two drives are equal, a file difference should be performed between the DRV.NVLIST output of the drives being compared.

- QuickTune yields low gain on some systems [S-25419]

Issue:

Executing AXIS#.TUNING.QUICKTUNE.START yielded low gains on some completely unloaded systems that should have had a 50Hz tuning solution.

Solution:

A bug was identified in the algorithm, correct gains should now be set.

- Added description to DRV.TYPE values [S-25572]

Details:

Reading DRV.TYPE will now return a plain text description of the type alongside the value. DRV.HELP of DRV.TYPE will show the descriptions of all possible values.

- Made AXIS#.WS.STATE recordable [Req#82612] [S-25534]

Details:

AXIS#.WS.STATE has been made recordable.

- Motor Swap Detection [S-25432]

Details:

A new fault has been added F5016 that will be triggered any time the drive detects that a motor change has occurred that may impact safety and stability. When this fault is activated, the drive will implement default tuning based on the new motor parameters.

- New WorkBench Setup Keywords [S-25633]

Details:

Several new keywords used by the WorkBench Setup feature were added and include SETUP.PARAMS.DATA, SETUP.PARAMS.SIZE, SETUP.PARAMS.CLEAR, SETUP.GROUPS.DATA, SETUP.GROUPS.SIZE, and SETUP.GROUPS.CLEAR.

^ Back to Top ^

## Motion

- Stopping an Axis Being Jogged Caused Velocity Jump [Req#83531] [D-09888]

Issue:

Stopping an axis being jogged in velocity mode via action table or AXIS#.STOP would cause a momentary negative jump in velocity.

Solution:

There is no longer a negative jump in velocity when stopping an axis being jogged in velocity mode.

^ Back to Top ^

# Version 02-14-00-000 : November 6, 2024

## Action Table

- Command Buffer will not write negative numbers [Req#81276] [D-09843]

Issue:

If the Command Buffer is being used to write negative numbers to a keyword, the value is not correctly written.

Solution:

Bug was identified and fixed.

^ Back to Top ^

## Feedback

- Added SFD-M Feedback Type [S-25414]

Details:

The SFD-M feedback type (47) is now an available option for the FB#.SELECT keyword for feedbacks 1 and 2. It is also included on the auto-identify list when FB#.SELECT = -1.

^ Back to Top ^

## Fieldbus

- EtherNet IP - CipSync Home Attained status bit bug [D-09837]

Issue:

The CipSync Home Attained status bit (bit 12) was only set if the user explicitly chose the 'Homing Mode' via the control word.

Solution:

The CipSync Home Attained status bit now reflects the same information as the Home Done bit (bit 2) of AXIS#.MOTIONSTAT, unless homing was just triggered (the bit goes low long enough for the controller to see the rising edge back to high).

- PROFIdrive statusword bit 'Home Position Set' not cleared when axis lost homing [Req#81179] [D-09844]

Issue:

When a previously homed axis lost its homing, for example after re-initializing a non-absolute feedback, the 'Home Position Set' bit in the PROFIdrive statusword was not cleared.

Solution:

The 'Home Position Set' bit in the PROFIdrive statusword is now cleared when the axis loses homing.

- EtherNet/IP - EIP.PLLMODE No Longer Reset on Disconnect

Issue:

EIP.PLLMODE was automatically reset to a value of 0 by the drive whenever any assembly connection was closed.

Solution:

EIP.PLLMODE is now only reset to 0 when a standard or free mapping assembly connection is opened for the first time.

^ Back to Top ^

## General

- Read-only keywords generated by MechaWare model not working if defined in multiple models [Req#78894] [D-09810]

Issue:

If a read-only keyword was defined in multiple MechaWare models, the data was always read from the first model to define the keyword, even if that model was not active.

Solution:

Read-only keywords generated by a MechaWare model will now read from the active model that defined them. A configuration warning is triggered if there are multiple active models defining the same read-only keyword.

^ Back to Top ^

## Motion

- Improved Cogging Compensation Completion Status [Req#79647] [D-09804]

Issue:

If a user configured cogging compensation with parameters that yielded poor results, the drive would silently allow the user to implement a poor cogging compensation table.

Solution:

If cogging compensation completes with more than 0.5% empty records, the cogging compensation will complete with a Status 3 - Complete with Missing Data to help the user identify that they may be able to achieve better results with different settings.

^ Back to Top ^

## Motor & Power Stage

- AXIS#.MOTOR.RSOURCE did not affect motor temperature supervision [Req#79316] [S-25293]

Issue:

Drive firmware always read the motor temperature from the encoder, if it supported temperature measurement and directly from the feedback connector otherwise, regardless of the setting of AXIS#.MOTOR.RSOURCE.

Solution:

Firmware now considers the value of AXIS#.MOTOR.RSOURCE when determining how to read motor temperature. For backwards compatibility reasons, the behavior remains unchanged if the default value of 0 is selected. Additionally, a new warning W5006 has been added, which is active if temperature supervision is inactive due to the AXIS#.MOTOR.RSOURCE setting.

^ Back to Top ^

# Version 02-13-01-000 : August 23, 2024

## Feedback

- Feedback warnings not shown on axis after changing axis' feedback source [Req#79661] [D-09796]

Issue:

After changing one of the axis' feedback sources (AXIS#.IL.FBSOURCE, AXIS#.VL.FBSOURCE, AXIS#.PL.FBSOURCE, AXIS#.GEAR.FBSOURCE) feedback warnings would sometimes no longer be correctly displayed on that axis.

Solution:

Feedback warnings are now correctly displayed on an axis after changing one of the axis' feedback sources.

- Homing offset is not cleared in certain situations [D-09757]

Issue:

The keyword AXIS#.HOME.OFFSET is not cleared when the feedback is changed or when AXIS#.PL.FBSOURCE is changed.

Solution:

The keyword AXIS#.HOME.OFFSET is now correctly cleared in all situations.

- Added warning for feedback rollover [S-25172]

Details:

A new warning W4x32 has been added to the firmware, which is triggered when the position of a feedback has moved out of the range of the encoder, and rebooting the drive or reinitializing the feedback would lead to loss of absolute position. The warning is disabled by default, but can be enabled using the keyword FB#.ROLLOVERWEN.

- New keyword FB#.POSLOWPASS for setting Position Low Pass Filter [S-25167]

Details:

A new keyword FB#.POSLOWPASS was created to set the position low-pass filter feedbacks that support it.

- Support SFD-M diagnostic bits [S-25147]

Details:

FB#.INFO displays a line that enumerates fault bits corresponding to a feedback sensor fault.

^ Back to Top ^

## Fieldbus

- EtherNet/IP - Standard Assembly - Negative torque value receives error [Req#78140] [D-09752]

Issue:

For the Torque Move command type (0x05) with the standard assembly, negative torque values were returning an error.

Solution:

Negative torque values can be passed in the data segment of the assembly without receiving an error.

- EtherNet/IP - Standard Assembly - Wrong keyword updated for command type 0x06 and 0x07 [Req#78141] [D-09753]

Issue:

For the Position Move (0x06) and Jog (0x07) command types (specifically in velocity mode), both AXIS#.FBUS.V and AXIS#.FBUS.VL.CMD were updated with the target velocity value.

Solution:

Now, for these command types, only AXIS#.FBUS.V is updated with the velocity value. This now matches our documentation.

- EtherNet/IP - Standard Assembly - Incorrect AOI Execution [Req#73908] [S-25095]

Issue:

Several standard EtherNet/IP AOIs did not execute as documented when AXIS#.CMDSOURCE did not equal to Fieldbus.

Solution:

The affected standard EtherNet/IP AOIs no longer require AXIS#.CMDSOURCE to equal Fieldbus for proper execution.

- Added SFD-M serial number to FB#.INFO [S-25229]

Details:

The SFD-M serial number has been added to FB#.INFO. The format of the serial number is as follows: "YYWW-LLLL-SSSS" where YY is the year, WW is the work week, LLLL is the lot number, and SSSS is the serial number.

^ Back to Top ^

## General

- Made W3101 Configurable [Req#75317] [S-25234]

Details:

A new keyword MW.CONFIGWEN was added to selectively enable or disable warning W3101 - MechaWare Configuration. By default, MW.CONFIGWEN is set to 0 and the warning is disabled. W3101 is enabled on the first reboot after downloading a new MechaWare model regardless of the value of MW.CONFIGWEN.

^ Back to Top ^

## Motion

- Fix for Limit Switch Position Jump on Enable [Req#79327] [D-09787]

Issue:

Moving a disabled axis while a limit switch (software or hardware) was active would cause a position jump on axis enable.

Solution:

No position jump occurs on enable in this condition.

- Setting Bode Inject Point to None Does Not Reset Excitation [Req#78222] [D-09754]

Issue:

If AXIS#.BODE.INJECTPOINT was set to 0 (None) while excitation was in progress, excitation did not stop and the motor ran away.

Solution:

Setting AXIS#.BODE.INJECTPOINT to 0 (None) while excitation is in progress now stops all excitation and the motor does not run away.

- Added keywords AXIS#.PL.KIWAITFORSETTLE and AXIS#.VL.KIWAITFORSETTLE [S-25046]

Details:

Added new keywords which are 0 by default. When set to 1, the position and the velocity integrator keywords activate the corresponding integrator only when the axis has settled (as defined by AXIS#.MOTIONSTAT.SETTLED).

- Configured Motion Settling Time added [S-25045]

Details:

A new keyword AXIS#.SETTLE.T was added which determines the time in milliseconds the axis has to be in position and velocity windows for the motion to be considered settled.

- New Feature - Quicktune [S-25048]

Details:

Tuning a servo takes a few steps. A new feature has been added to streamline the process of getting a system commissioned.

Executing AXIS#.TUNING.QUICKTUNE.START will measure the motor's load inertia and determine a suitable bandwidth and set the tuning gains appropriately. The user can check the value of bandwidth achieved by checking AXIS#.TUNING.BANDWIDTH.

- New In Position and In Velocity window [S-25044]

Details:

General purpose status bits have been added so a user can determine if AXIS#.PL.FB is close to AXIS#.PL.CMD and if AXIS#.VL.FBFILTER is close to AXIS#.TRAJ.VCMD. These new motion status bits are included in AXIS#.MOTIONSTAT as well as exposed individually by the keywords AXIS#.MOTIONSTAT.INPOSITION and AXIS#.MOTIONSTAT.INVELOCITY. AXIS#.SETTLE.P and AXIS#.SETTLE.V are used to set the window size.

^ Back to Top ^

# Version 02-13-00-000 : June 10, 2024

## Action Table

- ACTION#.CONDITIONVALUE didn't populate when loading a saved parameter file [Req#77861] [D-09745]

Issue:

ACTION#.CONDITIONVALUE did not load properly from a saved parameter file due to a dependency order conflict.

Solution:

Adjusted the priorities of the action keywords so the order they are loaded in from parameter files matches their dependency order.

- ACTION#.CONDITIONVALUE incorrectly changed when changing ACTION#.SOURCETEXT on the Recordable Parameter source [Req#77194] [D-09729]

Issue:

ACTION#.CONDITIONVALUE was changing to a seemingly random value when changing ACTION#.SOURCETEXT on the Recordable Parameter source.

Solution:

When changing ACTION#.SOURCETEXT, ACTION#.CONDITIONVALUE is now reset to zero or the minimum limit of ACTION#.CONDITIONVALUE if it's greater than zero.

^ Back to Top ^

## Fieldbus

- AXIS#.PL.FILTER.Q Deprecation Breaks FoE Download for Old Parameter Files [Req#77959] [D-09749]

Issue:

When AXIS#.PL.FILTER.Q was deprecated, the keyword was removed causing older parameter files with this keyword to fail when downloaded via FoE.

Solution:

A dummy AXIS#.PL.FILTER.Q keyword was added and older parameter files no longer fail when downloaded via FoE.

- Changed EIP keywords to be recordable for diagnostic purposes [Req#76956] [S-25033]

Issue:

EIP.ASY105.AXIS#.SYSTEMTIME and EIP.ASY105.AXIS#.P, the time and position data, respectively, received from the PLC, were not recordable.

Solution:

EIP.ASY105.AXIS#.SYSTEMTIME and EIP.ASY105.AXIS#.P are now recordable. Users can now use these keywords to compare the PLC data to the post-interpolated position data.

^ Back to Top ^

## General

- AXIS#.IL.KVFF range expanded [Req#77825] [S-25125]

Issue:

Some applications with high viscous loads might find they cannot increase IL.KVFF enough before hitting the keyword maximum.

Solution:

The range of AXIS#.IL.KVFF has been increased to 1,000,000.

^ Back to Top ^

## Motion

- Incorrect velocity command when triggering motion task with another task running [Req#77618] [D-09731]

Issue:

Under certain conditions, triggering a motion task while another task was already running caused the velocity command to immediately jump up to a velocity higher than either task's target velocity. This happened when the second task's target velocity was lower than that of the first task, and it was triggered close to its target position.

Solution:

The firmware has been updated to correctly calculate the trajectory from a motion task's parameters when it is triggered with another task already running.

^ Back to Top ^

## Motor & Power Stage

- Firmware allows VBUS.OVFTHRESH to be set to bad values [Req#77632] [D-09732]

Issue:

VBUS.OVFTHRESH was allowed to be writable sometimes.

Solution:

VBUS.OVFTHRESH is now read-only.

^ Back to Top ^

# Version 02-12-02-000 : May 13, 2024

## Action Table

- ACTION#.CONDITIONVALUE range was not matching the range of the keyword it is checked against [Req#76803] [D-09722]

Issue:

The range displayed on the help for ACTION#.CONDITIONVALUE was not matching the allowed range on the keyword it was checking against.

Solution:

The range of ACTION#.CONDITIONVALUE has been fixed.

- Command Buffer will not write AXIS#.MT.P [Req#R75416] [D-09704]

Issue:

Action Table would not allow a non-zero value to write to AXIS#.MT.P and would throw an Action Table error and a Drive warning.

Solution:

Data is now correctly handled and successfully writes to the Motion Task Position value specified in the command buffer.

- Action Table - Absolute options added to Action Table conditions [Req#76533] [S-24981]

Details:

Four new conditions were added to the Action Table: Absolute Less Than (13), Absolute Greater Than (14), Absolute Rises Above Threshold (15), Absolute Falls Below Threshold (16). These are the absolute counterparts to conditions Less Than (3), Greater Than (4), Rises Above Threshold (7), and Falls Below Threshold (8), respectively. Since they only look at the absolute value of the source and condition values, the absolute conditions enable a comparison between the source and both the positive and negative condition values.

- New Action Source Ready to Enable [D-09408]

Details:

A new Action Source has been added which is similar to Ready to Operate with the addition of AXIS#.DISSOURCES to indicate if the axis can be enabled in its current state.

^ Back to Top ^

## Fieldbus

- EtherNet/IP CipSync - Bugfix for homing after quick stop [Req#74644] [D-09691]

Issue:

Setting the Home Start bit in the CipSync control word while in the Quick Stop Active state (or any state other than Operation Enabled) set the home position to the current position, even if the axis was enabled.

Solution:

This issue was resolved and the functionality of setting the home position to the current position (if homing was requested and the state machine was not in Operation Enabled state) has been removed. If this functionality is still desired, an explicit message bound to the AXIS#.HOME.SET command or the homing mode 0 (Current Position) can be used instead.

- EtherNet/IP - Static IP address configuration not always restored properly [Req#73865] [D-09694]

Issue:

Using a value of 0.0.0.0 for EIP.IPGATEWAY meant that the configuration would not be loaded properly on reboot.

Solution:

The configuration would be loaded properly after reboot regardless of values.

- EtherNet/IP Assembly Status Keywords Refresh Issue [Req#76428] [D-09716]

Issue:

EtherNet/IP assembly status keywords had stale data persist even after the connection was closed.

Solution:

EtherNet/IP assembly status keywords are now cleared to 0 when a connection is closed.

- Fixed Backward Compatibility for CoE Objects 500Ch sub10h and 510Ch sub10h [Req#76238] [D-09713]

Issue:

Dummy CoE objects 500Ch sub10h and 500Ch sub10h were incorrectly implemented as read-only instead of read-write, which broke backward compatibility.

Solution:

Dummy objects 500Ch sub10h and 510Ch sub10h now implemented as read-write objects, fixing backward compatibility.

- AXIS#.VL.ERR changed to PDO mappable [Req#75829] [S-24908]

Issue:

AXIS#.VL.ERR was not PDO mappable.

Solution:

AXIS#.VL.ERR was made Tx PDO mappable.

- EtherCAT - Fixed Object Type for Command Array Objects [S-24889]

Issue:

Multiple command array objects (e.g. AXIS#.MT.MOVE) were formatted incorrectly in the object list.

Solution:

All command array objects are now listed with the correct format.

- CANopen - Added DS402 objects 6062h and 6862h [Req#75799] [S-24948]

Details:

DS402 objects 6062h/6862h, "Position Demand Value - Axis #", have been added to the object dictionary. This is a read-only object that gives the ability to read (via PDO) the scaled position command.

^ Back to Top ^

## General

- Biquad Filter cannot be turned off [Req#75940] [D-09708]

Issue:

To Turn off a first or second order lowpass filter the user should set the frequency to zero. A bug was found that prevented the user from setting the frequency below 5Hz, meaning the user could not turn off the biquad.

Solution:

The limit has been fixed and the biquad is now at unity gain when the frequency is set to 0Hz.

^ Back to Top ^

## Motion

- Homing - AXIS#.MOTIONSTAT bit 21 not properly cleared at the start of homing [Req#76327] [D-09711]

Issue:

If AXIS#.MOTIONSTAT bit 21 (which specifies that the actual drive position is within the target position in homing) was already set before initiating a home, it would not be cleared at the start of the homing sequence.

Solution:

AXIS#.MOTIONSTAT bit 21 is now properly cleared at the start of homing.

- Velocity jump when homing with AXIS#.VL.KVFF not set to 1

Issue:

When a homing procedure found the home position while the motor was moving, and AXIS#.VL.KVFF was not set to 1, the velocity command momentarily jumped up (AXIS#.VL.KVFF < 1) or down (AXIS#.VL.KVFF > 1).

Solution:

Finding the home position while the motor is moving no longer causes a jump in velocity command, regardless of the value in AXIS#.VL.KVFF.

- Allow Motion Task Triggers Under Certain Fieldbus Configurations [S-24934]

Issue:

Motion tasks were not triggered by the action table while AXIS#.CMDSOURCE was set to "Fieldbus" even if the drive was following an internal trajectory at the time of the trigger.

Solution:

Motion tasks triggered by the action table while AXIS#.CMDSOURCE is set to "Fieldbus" are allowed as long as the drive is already following an internal trajectory.

- AXIS#.VL.KVFF moved to prevent interactions with other Feedforwards [Req#73123] [D-09658]

Issue:

The original placement of AXIS#.VL.KVFF gain had an unintended interaction of scaling AXIS#.IL.KACCFF and AXIS#.IL.KVFF.

Solution:

AXIS#.VL.KVFF has been moved to operate independently of AXIS#.IL.KACCFF and AXIS#.IL.KVFF

- Velocity Loop Integrator Saturation Limit added [Req#76367] [S-24988]

Details:

AXIS#.VL.INTOUTMAX (amps) has been added to the firmware. This limits the velocity loop integrators saturation limit.

^ Back to Top ^

# Version 02-12-01-000 : December 14, 2023

## Fieldbus

- EtherNet/IP - AXIS#.MOTIONCONTROL command did not allow home move [Req#72616] [D-09637]

Issue:

Unless an axis was configured for the Fieldbus command source, dynamic mapped keywords that triggered homing would not home.

Solution:

All dynamic mapped keywords functioned properly in Service command source, but would no longer function if the axis was in Fieldbus command source.

- EtherNet IP - Changing AXIS#.EIP.QUICKSTOPACTION could cause infinite controlled stop [Req#72856] [D-09646]

Issue:

If AXIS#.EIP.QUICKSTOPACTION was set to 5 or 6 and a quick stop was activated, changing AXIS#.EIP.QUICKSTOPACTION afterward could cause the controlled stop disable source to never cease.

Solution:

Changing AXIS#.EIP.QUICKSTOPACTION no longer allowed for the erroneous condition.

- EtherNet/IP - PTP not automatically enabled [D-09636]

Issue:

If PTP, the time synchronization protocol that enables CIP Sync, was disabled then the drive did not automatically enable it.

Solution:

The drive automatically enabled the PTP time synchronization.

^ Back to Top ^

## Motion

- Some functions requiring axis to be homed did not work after axis was homed using AXIS#.HOME.AUTOMOVE 1 [Req#72963, 72979] [D-09651]

Issue:

If an axis using an absolute feedback was homed by enabling the axis with AXIS#.HOME.AUTOMOVE set to 1, some functions that required the axis to be homed were not working correctly, even though AXIS#.MOTIONSTAT showed the axis was successfully homed. The affected functions were starting a cogging compensation teach move and synchronized operation of two axis in a gantry setup.

Solution:

Homing an axis using an absolute feedback by enabling the axis with AXIS#.HOME.AUTOMOVE set to 1 now correctly enables functions requiring the axis to be homed.

^ Back to Top ^