LabVIEW 2016 SoftMotion Module Known Issues

Overview

This document contains the LabVIEW 2016 SoftMotion Module known issues that were discovered before and since the release of the LabVIEW 2016 SoftMotion Module. Not every issue known to NI will appear on this list; it is intended to only show the severe and more common issues that can be encountered.

Each Issue appears as a row in the table and includes these fields:

Issue ID—Contains the number in at the top of each of the cells in the first column. When you report an issue to NI, you may be given this ID, you can also find IDs posted by NI on the discussion forums or in Knowledge Base articles.

Legacy ID (optional)—Contains the legacy CAR ID, if an issue has a legacy ID from NI's legacy/deprecated bug reporting database. This ID appears on a separate line directly below the Issue ID in the table, or to the right of the Issue ID in the table of contents (separated by a space).

Issue Title (in italics)—Describes the issue in one sentence or less.

Problem Description—Describes the problem in further detail. The brief description given does not necessarily describe the problem in full detail, and it is expected that you might want more information on an issue. If you would like more information on an issue feel free to contact NI (contact information below) and reference the ID number given in the document.

Workaround—Provides possible ways to work around the problem. The workarounds that appear in the document are not always tested by NI and are not guaranteed to resolve the issue. If a workaround refers you to the NI KnowledgeBase, please visit www.ni.com/kb/ and enter that KB number in the search field to locate the specific document.

Reported Version—Contains the earliest version of the NI SoftMotion Module the issue was reported in. If you discover the issue appears in an earlier version of the NI SoftMotion Module than is reported in this field, you can report that to NI (contact information below) to have the field updated.

Resolved Version—Contains the version the issue was resolved or was no longer applicable. If an issue has not been resolved "N/A" will be reported.

Date Added—Contains the date the issue was added to the document (not the reported date).

Contacting NI

Feel free to contact NI regarding this document or issues in the document. If you are contacting NI in regards to a specific issue, be sure to reference the ID number given in the document to the NI representative. The ID number contains the current issue ID number as well as the legacy ID number (use the current ID number when contacting National Instruments). You can contact us through any of the normal support channels including phone, email, or the discussion forums. Visit the NI Website to contact us. Also consider contacting us if you find a workaround for an issue that is not listed in the document so that we can add the workaround to the document.

Known Issues by Category

The following items are known issues in the LabVIEW 2016 SoftMotion Module sorted by Category.

Configuration
298886Encoder velocity filter distances greater than 1 do not work.
305115Setting the closed-loop stepper correction profile velocity to 0 returns error -77037 (NIMCDM_invalidDataError).
404235Rebinding an axis to a different hardware resource can cause parameters to be outside of the valid range.
601616VxWorks RT Controllers do not work with SoftMotion Remote Axes
EtherCAT
300628Disconnecting the EtherCAT cable on an AKD EtherCAT servo drive requires a reinitialize or reboot to recover.
607840SoftMotion Drive Interface (SDI) VIs will not deploy when SoftMotion is not licensed
583192SDI Axes do not implement the Smoothing attribute on reference moves
591142SDI Axes do not have Home Switch Enabled by default or available in Axis Configuration dialog
615087SDI Axes can fault when changing move modes
623781SDI Axes may fault when reacting to limit switches
631324Scan Engine returns to Configuration Mode if accessing EtherCAT SDOs with SDI Axes returns an error
632971SDI Axes do not work after SoftMotion is re-initialized
643434SDI Axis position cannot be reset following a home move
Ethernet Steppers
585856Ethernet Steppers do not implement the Smoothing attribute on moves
633432Error -52007 can be generated when accessing Ethernet Stepper resources in parallel
Express VIs
633432Using a contour table configured for one axis with a multi-axis contour move does not immediately return an error.
NI SoftMotion Engine
227752Using a contour table configured for one axis with a multi-axis contour move does not immediately return an error.
231425Profile Complete and Move Complete are True when the drive is disabled during a move.
235309Relative to Capture moves on a coordinate resource function as regular relative moves.
236390NI 951x Module Cannot Clear Position Error When Performing Coordinate and Single Axis Moves on the Same Axis.
325655Starting a move that has a final position larger than 1E16 will produce error -77109 (NIMCDM_parametersDefineOutOfRange).
356333Starting a new move while another move is in progress can cause a hang
595072Position Error resets without being commanded.
600105Position move setpoint can jump out of range on move start
602055Wait Until Done VI completes execution before move is complete.
606584Simulated Axes can cause Scan Engine faults if using a low scan period.
612844Simulated Axes do not work with Windows executables
Properties and Methods
341045Some Method and Property Inputs do not Have Range Checking
408297LabVIEW crash when operating on an NI SoftMotion reference while destroying it.
Trajectory Generator
221638Preempting a move in the opposite direction can return error -77070 (NIMCDM_startPendingError).
374856Large position error values can cause position oscillations when in closed-loop stepper mode.
447463Error -77108 with Specific Combinations of Target Position, Acceleration, and Velocity.
478105Straight Line Move in Velocity Mode will not allow the velocity to change to zero



IDKnown Issue
Configuration
298886

Return
Encoder velocity filter distances greater than 1 do not work.
Setting the Encoder Velocity Filter Distance to a value greater than 1 causes the velocity returned to never update. This is only apparent if you are using the Encoder Velocity Filter Distance only (setting the Velocity Filter Time to 0 to disable it).

Workaround: None.

Reported Version: 2009  Resolved Version: N/A  Added: 07/29/2011
305115

Return
Setting the closed-loop stepper correction profile velocity to 0 returns error -77037 (NIMCDM_invalidDataError).
When configuring a closed-loop stepper axis using the instructions found in the "Configuring a Closed-Loop Stepper Axis (NI SoftMotion Module)" topic in the NI SoftMotion Help, error -77037 is returned when the correction profile velocity is set to 0 when you attempt to enable the drive.

Workaround: Set the correction profile velocity to 0.01 instead of 0.

Reported Version: 2010  Resolved Version: N/A  Added: 07/29/2011
404235

Return
Rebinding an axis to a different hardware resource can cause parameters to be outside of the valid range.
When you bind an axis to a different hardware type than what it was originally configured with, it can cause parameters to fall outside the valid range for the new hardware type.

Workaround: When you are rebinding axes, make sure to check that the axis configuration parameters are still valid.

Reported Version: 2009  Resolved Version: N/A  Added: 08/03/2012
601616

Return
VxWorks RT Controllers do not work with SoftMotion Remote Axes.
NI Real-Time Controllers running the VxWorks OS and SoftMotion do not work with SoftMotion Remote Axes or the Interactive Test Panel. They will function correctly until the target is restarted.

Workaround: None.

Reported Version: 2015  Resolved Version: 2016 f1  Added: 10/31/2016
EtherCAT
300628

Return
Losing connection to an AKD EtherCAT servo drive requires a reinitialize or reboot to recover.
Losing connectivity with an AKD EtherCAT servo drive will result in a communication watchdog error -77055 when accessing the axis. This can happen if you power up an AKD EtherCAT drive when the master is already powered, disconnecting the EtherCAT cable on an AKD EtherCAT drive, or powering off the AKD EtherCAT drive at any time.

Workaround: Reinitialize the NI SoftMotion Module or reboot the controller. Refer to the Reinitialize example in the <labview>\examples\Motion\ConfigurationAPI\Reinitialize directory for an example showing how to programmatically reinitialize the NI SoftMotion Module. This can also be found in KB 75LA9L6R.

Reported Version: 2011  Resolved Version: N/A  Added: 07/29/2011
607840

Return
SoftMotion Drive Interface (SDI) VIs will not deploy when SoftMotion is not licensed
The Axis:Execute Plugin Read and Write methods require licensing and will not deploy to a real-time target if SoftMotion is not licensed. This prevents the use of SDI axes when SoftMotion is not licensed on the development computer.

Workaround: None.

Reported Version: 2014 SP1  Resolved Version: 2016 f2 and 2017  Added: 10/31/2016
583192

Return
SDI Axes do not implement the Smoothing attribute on reference moves
On other SoftMotion axes, the Smoothing attribute calculates suitable acceleration values when supplied the position and velocity of a move. Because reference moves (home, limit, and index moves) are performed entirely by the EtherCAT drive, SoftMotion does not perform trajectory generation for these moves, and an acceleration and deceleration value of 0 will be used if none is commanded.

Workaround: Always give the position, velocity, acceleration, and deceleration values for reference moves with SDI axes. Some drives may error when commanded a homing move with an acceleration of 0.

Reported Version: 2014 SP1  Resolved Version: 2016 f2 and 2017  Added: 06/10/2016
591142

Return
SDI Axes do not have Home Switch Enabled by default or available in Axis Configuration dialog
SoftMotion Drive Interface (SDI) Plug-in axes (third party EtherCAT drives) do not have the ability to set the Home Switch as enabled. Even though homing moves will be handled correctly by the drive, the Read: Motion I/O method does not show if the home switch is active.

Workaround: Use the Axis property node Enable Home Switch to programmatically enable this setting.

Reported Version: 2014 SP1  Resolved Version: 2016 f2 and 2017  Added: 06/10/2016
615087

Return
SDI Axes can fault when changing move modes
SDI Axes can operate in four move modes (homing, velocity, torque, position). While operating in homing, velocity, and torque modes, the position setpoint is not updated in SoftMotion's trajectory generator. When switched back to position mode directly, the position error is calculated as the last known position and the current feedback position. This causes the axis to jump and fault when changing modes.

Workaround: Use Reset Position before moving back to using position moves with SoftMotion. The position error on the axis keeps the axis position from resetting to its actual position (0 in the case of a limit move) if the axis is enabled. Disabling the axis allows the position to be reset.

Reported Version: 2016 f1  Resolved Version: 2016 f2 and 2017  Added: 05/03/2017
623781

Return
SDI Axes may fault when reacting to limit switches
SoftMotion's reaction to limit switches may not be compatible with third party EtherCAT drives using SDI Plug-ins. When a limit switch is activated and the drive's stop routine is complete, the drive returns to accepting position setpoints from SoftMotion. The last position setpoint generated by SoftMotion's trajectory generator is used as a valid setpoint, which may either cause the motor to suddenly move away from the limit switch, stay in place without an error, or stay in place with an error. The behavior depends on the drive and the programmed reaction to limit switches.

Workaround: If possible, use an immediate, full torque stop reaction to limit switches with SDI drives. This will minimize position difference between the stop location of the motor and SoftMotion's position setpoint.

Reported Version: 2014 SP1  Resolved Version: N/A  Added: 03/21/2017
631324

Return
Scan Engine returns to Configuration Mode if accessing EtherCAT SDOs with SDI Axes returns an error
The error handling behavior of the SoftMotion Drive Interface (SDI) framework is to transition the Scan Engine to Configuration mode. Any errors that are returned inside an SDI Plug-in's VIs will cause this transition. SDI Plug-ins should be thoroughly tested to remove any EtherCAT SDO read or write operations that will cause a third-party EtherCAT drive to return an error.

Workaround: Use the SDI Plug-in's override VIs to modify or remove SDO read or write operations that return an error from the EtherCAT API.

Reported Version: 2014 SP1  Resolved Version: N/A  Added: 03/21/2017
632971

Return
SDI Axes do not work after SoftMotion is re-initialized
SoftMotion Initialization code can be found in KB 75LA9L6R and is needed to clear Scan Engine faults that would otherwise require power cycling the real-time controller. This code cannot be used with SDI Axes due to configuration data that is not reset.

Workaround: Initialize SoftMotion before activating SDI Axes using the SoftMotion Set Plugin Mode VI. If errors occur during operation, restart the real-time controller.

Reported Version: 2015  Resolved Version: 2016 f2 and 2017  Added: 05/03/2017
643434

Return
SDI Axis position cannot be reset following a home move
SDI Axes can operate in four move modes (homing, velocity, torque, position). While operating in homing, velocity, and torque modes, the position setpoint is not updated in SoftMotion's trajectory generator. When switched back to position mode directly, the position error is calculated as the last known position and the current feedback position. After a homing sequence on an SDI Axis, the EtherCAT drive will report a position of 0. SoftMotion will display an axis position error of the last known position.

Workaround: First, call a Reset Position to 0 to clear position error. Second, call a Relative Straight Line Move to a position of 0 to return to position mode. Third, call a Reset Position to 0.

Reported Version: 2015  Resolved Version: 2016 f2 and 2017 f1  Added: 05/03/2017
Ethernet Steppers
585856

Return
Ethernet Steppers do not implement the Smoothing attribute on moves
On other SoftMotion axes, the Smoothing attribute calculates suitable acceleration values when supplied the position and velocity of a move. Ethernet Steppers do not calculate this velocity and will apply the last used values for acceleration and deceleration.

Workaround: Always give the position, velocity, acceleration, and deceleration values for moves with Ethernet Stepper resources.

Reported Version: 2014  Resolved Version: N/A  Added: 06/10/2016
633432

Return
Error -52007 can be generated when accessing Ethernet Stepper resources in parallel
When accessing Ethernet Stepper resources in parallel with the SoftMotion API (Express VIs or Property and Method Nodes), it is possible to receive a timeout error from SoftMotion. This occurs very infrequently, and retrying the operation when the error is returned should result in successful execution. This is separate from an earlier issue (CAR 579212) which resulted in Error -52007 being thrown when using multiple Ethernet Stepper resources on the same network.

Workaround: There are two workarounds for this issue. 1) Retry the API call when the error is returned. 2) Only access Ethernet Stepper resources in series from LabVIEW code.

Reported Version: 2014 SP1  Resolved Version: N/A  Added: 03/21/2017
Express VIs
612846

Return
SoftMotion Express VIs cannot be used with more than one coordinate resource
When using the SoftMotion Express VI API to command moves with Coordinate Spaces, do not wire two different Coordinate Spaces to the resource input of one Express VI.

Workaround: Use a unique Express VI instance for each Coordinate Space.

Reported Version: 2015  Resolved Version: N/A  Added: 05/3/2017
NI SoftMotion Engine
227752

Return
Using a contour table configured for one axis with a multi-axis contour move does not immediately return an error.
The move will start on the single axis, but as the buffer points are consumed NI SoftMotion eventually returns error -77032 (NIMCDM_bufferNotUpdatedError).

Workaround: None.

Reported Version: 2009  Resolved Version: N/A  Added: 07/30/2010
231425

Return
Profile Complete and Move Complete are True when the drive is disabled during a move.
The Profile Complete status is incorrectly set to TRUE when the drive is disabled during a move. Because the Profile Complete status is always included in the Move Complete Criteria, Move Complete is also true when the drive is disabled even when it is not included in the Move Complete Criteria.

Workaround: None.

Reported Version: 2010  Resolved Version: N/A  Added: 07/30/2010
235309

Return
Relative to Capture moves on a coordinate resource function as regular relative moves.
Coordinate resources do not support the Relative to Capture straight-line move mode. Using this move mode on a coordinate move is the same as executing a straight-line move using the Relative mode.

Workaround: None.

Reported Version: 2010  Resolved Version: N/A  Added: 07/30/2010
236390

Return
NI 951x Module Cannot Clear Position Error When Performing Coordinate and Single Axis Moves on the Same Axis.
When performing both coordinate and single axis moves in the same VI it is possible to have a position error occur that cannot be cleared even by switching the NI Scan Engine to Configuration mode and back to Active mode. The error typically occurs after writing a setpoint greater than the maximum step length specified on the module.

Workaround: Perform individual axis moves by using a coordinate move that only moves a single axis.

Reported Version: 2010  Resolved Version: N/A  Added: 02/14/2011
325655

Return
Starting a move that has a final position larger than 1E16 will produce error -77109 (NIMCDM_parametersDefineOutOfRange).

Workaround: None.

Reported Version: 2010  Resolved Version: N/A  Added: 03/01/2012
356333

Return
Starting a new move while another move is in progress can cause a hang
The hang occurs when a move is in progress and you start another move in the same direction. If the move parameters would not allow the motion to stop at the specified position without moving in the opposite direction, the move does not start and the VI hangs.

Workaround: Abort the VI.

Reported Version: 2009  Resolved Version: N/A  Added: 08/03/2012
595072

Return
Position Error resets without being commanded.
SoftMotion's Position Error parameter is the difference between the position setpoint and position feedback of an axis. This issue affects all axis types and causes the position error to be reset when commanding moves.

Workaround: None.

Reported Version: 2015  Resolved Version: 2016 f1  Added: 10/31/2016
600105

Return
Position move setpoint can jump out of range on move start.
On multi-core real-time controllers, it is possible for position data to be corrupted before a move is executed. For more information, visit the following site.

Workaround: None.

Reported Version: 2013 SP1  Resolved Version: 2016 f1  Added: 10/31/2016
602055

Return
Wait Until Done VI completes execution before move is complete.
The SoftMotion Wait Until Done VI is used as a blocking function to determine when the current move reference is complete. The Wait Until Done VI does not correctly evaluate the move complete conditions and completes execution before the move is complete.

Workaround: Add a two Scan Engine cycle period delay after the Wait Until Done VI to ensure that the axis has successfully finished the move.

Reported Version: 2015  Resolved Version: 2016 f1  Added: 10/31/2016
606584

Return
Simulated Axes can cause Scan Engine faults if using a low scan period.
When using Scan Engine periods lower than 5 ms on some targets, SoftMotion simulated axes can cause the Scan Engine to fault.

Workaround: Increase the Scan Engine period.

Reported Version: 2014  Resolved Version: 2017  Added: 10/31/2016
612844

Return
Simulated Axes do not work with Windows executables
SoftMotion Simulated Axes will not work when a VI with SoftMotion code is built into a Windows executable. The deployment process is not compatible with standalone LabVIEW executables, and Error -77005 will be returned from any SoftMotion API operation on the axis.

Workaround: None.

Reported Version: 2012  Resolved Version: N/A  Added: 03/21/2017
Properties and Methods
341045

Return
Some Method and Property Inputs do not Have Range Checking
The following SoftMotion methods and properties only support certain values, but NI SoftMotion does not return an error if you use an unsupported value. Function Block and Express VIs also fail to return an error when using these unsupported values.
1) The Line input of Read Analog Line, Write Analog Line, Read Digital Line, and Write Digital line should not have inputs less than 0 or greater than the number of valid lines.
2) Any method or property with an enum or ring input may not work correctly when using an unsupported value. Refer to the NI SoftMotion Module Help for supported values.
3) The Position Compare Period property should not be set to a value less than 0 (the minimum value depends on your hardware).

Workaround: Only use valid values for all properties and methods.

Reported Version: 2009  Resolved Version: N/A  Added: 03/19/2012
408297

Return
LabVIEW crash when operating on an NI SoftMotion reference while destroying it.

Workaround: Don't operate on a reference that you are destroying. In applications where you create a motion reference once and destroy it at the end of the application, you can remove the Destroy Motion Reference VI and let LabVIEW destroy it for you automatically.

Reported Version: 2009  Resolved Version: N/A  Added: 08/05/2013
Trajectory Generator
221638

Return
Preempting a move in the opposite direction can return error -77070 (NIMCDM_startPendingError).
NI SoftMotion automatically performs a decelerate stop move when commanding a move in the opposite direction. If you command a second move before the stop has completed, error -77070 is returned.

Workaround: Wait for the direction to change before starting a new move.

Reported Version: 2009  Resolved Version: N/A  Added: 07/30/2010
374856

Return
Large position error values can cause position oscillations when in closed-loop stepper mode.
These oscillations only occur when travelling in one direction and only if the position error is greater than ~0.25 revolutions.

Workaround: Use a motor that is properly sized for your application to eliminate the need for large position error corrections.

Reported Version: 2010  Resolved Version: N/A  Added: 02/28/2013
447463

Return
Error -77108 with Specific Combinations of Target Position, Acceleration, and Velocity.
Rarely SoftMotion can fail to calculate a valid motion profile with specific combinations of Target Position, Acceleration, Velocity, Jerk or other move parameters.

Workaround: Make a minor change to any of the move parameters, and SoftMotion should be able to calculate a valid profile.

Reported Version: 2012 SP1  Resolved Version: 2017  Added: 03/21/2016
478105

Return
Straight Line Move in Velocity Mode will not allow the velocity to change to zero
When using the Straight Line Move set to Velocity Mode, updating the velocity to zero does not work. This affects moves for both single axis and coordinate space.

Workaround: Instead of commanding zero velocity to the move, call a Stop Move instead. To begin moving again, command a new Straight Line Move.

Reported Version: 2014  Resolved Version: N/A  Added: 03/21/2017

Document last updated on 11/21/2017.

Glossary of Terms

 

  • Bug ID - When an issue is reported to NI, you may be given this ID or find it on ni.com.  You may also find IDs posted by NI on the discussion forums or in KnowledgeBase articles.
  • Legacy ID – An older issue ID that refers to the same issue.  You may instead find this issue ID in older known issues documents.
  • Description - A few sentences which describe the problem. The brief description given does not necessarily describe the problem in full detail.
  • Workaround - Possible ways to work around the problem.
  • Reported Version - The earliest version in which the issue was reported.
  • Resolved Version - Version in which the issue was resolved or was no longer applicable. "N/A" indicates that the issue has not been resolved.
  • Date Added - The date the issue was added to the document (not the reported date).