. |
Release Note
|
Release Type |
MPI Version |
Release Date |
Patch Release |
03.01.01.B2.12 |
27July2007 |
Patch Release |
03.01.01.B2.11 |
30May2006 |
Patch Release |
03.01.01 |
20Sept2004 |
Production Release |
03.01.00 |
30July2004 |
Support for AMC Drive DQ111RE | ||
Reference Number: MPI 1480 | ||
Type: New Feature | ||
MPI Version: 03.01.01 | ||
Description: |
||
How do I use this feature? |
Support for AMC Drive DQ113EE | ||
Reference Number: MPI 1392 | ||
Type: New Feature | ||
MPI Version: 03.01.00 | ||
Description: |
||
How do I use this feature? |
Probe Support for Kollmorgen CD Drive | ||
Reference Number: MPI 1391 | ||
Type: New Feature | ||
MPI Version: 03.01.00 | ||
Description: |
||
How do I use this feature? |
Probe Support for the RMB-10V2 | ||
Reference Number: MPI 1355 | ||
Type: New Feature | ||
MPI Version: 03.01.00 | ||
Description: |
||
How do I use this feature? |
meiCanCommand supports NMT Protocol | |||
Reference Number: MPI 1354 | |||
Type: New Feature | |||
MPI Version: 03.01.00 | |||
Description: These new Can commands allow each of the CANOpen protocols NMT
commands to be issued from the host. These replace the original
MEICanCommandTypeNMT_STOP and MEICanCommandTypeNMT_START commands.
|
|||
Code Interface:
|
|||
How do I use this feature? |
Addition of Configurable Axis Frame Buffers | |||
Reference Number: MPI 1353 | |||
Type: New Feature | |||
MPI Version: 03.01.00 | |||
Description: This feature is useful when frame buffers greater than the default
128 frames are required, such as when the axis Camming feature is
used. |
|||
Code Interface:
|
|||
How do I use this feature? |
Support for auto-detect bit rate feature on MEI CANopen nodes | ||
Reference Number: MPI 1351 | ||
Type: New Feature | ||
MPI Version: 03.01.00 | ||
Description: |
||
How do I use this feature? |
Addition of CAN Node Version calls to the MPI | |||
Reference Number: MPI 1323 | |||
Type: New Feature | |||
MPI Version: 03.01.00 | |||
Description: |
|||
Code Interface:
|
|||
How do I use this feature? |
Mapable Secondary Encoder Programming Interface | |||
Reference Number: MPI 1319 | |||
Type: New Feature | |||
MPI Version: 03.01.00 | |||
Description: |
|||
Code Interface:
|
|||
How do I use this feature? |
Manufacturer and User Fields added to the EEPROM | |||
Reference Number: MPI 1311 | |||
Type: New Feature | |||
MPI Version: 03.01.00 | |||
Description: |
|||
Code Interface:
|
|||
How do I use this feature? |
Camming Support | ||
Reference Number: MPI 1300 | ||
Type: New Feature | ||
MPI Version: 03.01.00 | ||
Description: |
||
How do I use this feature? |
Replacement of MEIControlVersion with MEIControlInfoX structures | |||
Reference Number: MPI 1294 | |||
Type: New Feature | |||
MPI Version: 03.01.00 | |||
Description: |
|||
Code Interface:
|
|||
How do I use this feature? |
New Compensator object | ||
Reference Number: MPI 1287 | ||
Type: New Feature | ||
MPI Version: 03.01.00 | ||
Description: |
||
How do I use this feature? |
Encoder Filter Enable/Disable has been added to MEIMotorConfig | |||
Reference Number: MPI 1269 | |||
Type: New Feature | |||
MPI Version: 03.01.00 | |||
Description: |
|||
Code Interface:
|
|||
How do I use this feature? |
An AmpWarning event has been added to MPIMotorConfig/Status | |||
Reference Number: MPI 1230 | |||
Type: New Feature | |||
MPI Version: 03.01.00 | |||
Description: |
|||
Code Interface:
|
|||
How do I use this feature? |
ZMP Software Support | ||
Reference Number: MPI 1197 | ||
Type: New Feature | ||
MPI Version: 03.01.00 | ||
Description: The ZMP can be used in place of XMP controllers for applications
with performance requirements that exceed the limits of XMP controllers.
|
||
How do I use this feature? |
MoveID and ElementID changed to 16-bit resolution | ||
Reference Number: MPI 1434 | ||
Type: General Change | ||
MPI Version: 03.01.00 | ||
Description: For both the MoveID and ElementID, there is now support for 32
bits in both the positive and negative frame directions. For example,
in a frame, the lower 16 bits of the MoveID field represent the
MoveID for the positive frame direction. The upper 16 bits represent
the MoveID for the negative direction. |
||
How do I use this feature? |
Changed meiSqNodeAnalogIn(...) to meiSqNodeAnalogInput(...) | |||
Reference Number: MPI 1428 | |||
Type: General Change | |||
MPI Version: 03.01.00 | |||
Description: |
|||
Code Interface:
|
Changes to meiObject[Flash]ConfigGet and meiObject[Flash]ConfigSet | |||
Reference Number: MPI 1368 | |||
Type: General Change | |||
MPI Version: 03.01.00 | |||
Description: NOTE: This change breaks backwards compatibility for the effected MEI config methods. Your application may need to be recompiled. In addition, the meiCanFlashNodeConfigGet/Set methods have been depricated in this release. While these methods are still supported, MEI reserves the right to remove depricated methods. Your application should use the new meiCanNodeFlashConfigGet/Set methods if you plan to upgrade to future versions of the MPI.
|
|||
Code Interface:
|
New MPI Version Numbering | |||
Reference Number: MPI 1358 | |||
Type: General Change | |||
MPI Version: 03.01.00 | |||
Description: |
|||
Code Interface:
|
Deletion of MEIXmpIOFrame | |||
Reference Number: MPI 1349 | |||
Type: General Change | |||
MPI Version: 03.01.00 | |||
Description: In xmp.h, the MEIXmpOutputFrame data type was created. It is essentially the same as MEIXmpIOFrame, except Mask is now OffMask and Pattern is now OnMask. As a result of these changes, MEIMotionAttrOutput was modified
accordingly. |
|||
Code Interface:
|
|||
How do I use this feature? For MEIMotionAttrOutput: OffMask - any bits that are SET will be turned off. The OffMask is applied first: output & = ~OffMask The order of operations should be: Since the OnMask is applied last, the OnMask has precedence. If a bit is set in both the OffMask AND the OnMask, the result is that the bit is turned ON. |
MEI SLICE I/O using CANopen Interface reads digital I/O | |||
Reference Number: MPI 1325 | |||
Type: General Change | |||
MPI Version: 03.01.00 | |||
Description: Nodes that don't support this feature (i.e. nodes not made by MEI)
are still supported, the only difference is that the number of digital
inputs and outputs will still be reported in multiples of eight.
|
|||
Code Interface:
|
|||
How do I use this feature? For MEI CANOpen SLICE I/O nodes, an extension to the CANOpen protocol is supported that allows the exact number of digital inputs to be returned in the digitalInputCount field. The CAN firmware for the XMP has been modified to use this field if it is available. Nodes that do NOT support this feature (i.e. nodes not made by MEI) are still supported, the only differance is that the number of digital inputs and outputs will still be reported in multiples of eight. For more information, see MEICanNodeInfo.
|
Allow MPI to set RESUME any time a STOP is in progress or finished | ||
Reference Number: MPI 1320 | ||
Type: General Change | ||
MPI Version: 03.01.00 | ||
Description: |
||
How do I use this feature?
|
MPIMotorEventTrigger.encoder should be MPIMotorEncoderFault | |||
Reference Number: MPI 1314 | |||
Type: General Change | |||
MPI Version: 03.01.00 | |||
Description: |
|||
Code Interface:
|
|||
How do I use this feature?
|
Phase Reversal moved to MEIMotorEncoder | |||
Reference Number: MPI 1289 | |||
Type: General Change | |||
MPI Version: 03.01.00 | |||
Description: |
|||
Code Interface:
|
|||
How do I use this feature? |
Feedforward for PTF and PVTF improvements | |||
Reference Number: MPI 1286 | |||
Type: General Change | |||
MPI Version: 03.01.00 | |||
Description:
|
|||
Code Interface:
|
|||
How do I use this feature? |
Reordered the Capture Source Enum | |||
Reference Number: MPI 1249 | |||
Type: General Change | |||
MPI Version: 03.01.00 | |||
Description: |
|||
Code Interface:
|
|||
How do I use this feature?
|
Use zero velocity to generate a DONE status/event | |||
Reference Number: MPI 1202 | |||
Type: General Change | |||
MPI Version: 03.01.00 | |||
Description: |
|||
Code Interface:
|
|||
How do I use this feature? Velocity moves to zero velocity will now result in an MPIStateIDLE state rather than MPIStateMOVING state at the end of motion. As a result, an MPIEventTypeMOTION_DONE will be generated now instead of an MPIEventTypeMOTION_AT_VELOCITY event. The state and events generated when velocity moves of zero velocity are specified are different. You may have to modify how an application waits for these velocity moves to be completed.
|
|||
See Also |
Intermittent bad capture data | ||
Reference Number: MPI 2198 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.01.B2.12 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
mpiFilterGainSet(...) returning MPIMessagePARAM_INVALID | ||
Reference Number: MPI 1877 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.01.B2.11 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
mpiAxisCommandPositionSet(...) returns MPIAxisMessageCOMMAND_NOT_SET | ||
Reference Number: MPI 1488 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.01 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
VM3 -load is now supported by the XMP and ZMP | ||
Reference Number: MPI 1476 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.01 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Multi-point moves with appends get unexpected error state | ||
Reference Number: MPI 1473 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.01 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Step pulse width does not work for ZMP | ||
Reference Number: MPI 1471 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.01 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Multi-point motion bug with axisFrameCount <> 128 | ||
Reference Number: MPI 1470 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.01 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
The presence of the CAN Hardware is falsely reported | ||
Reference Number: MPI 1464 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.01 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Motor resource boundary check | ||
Reference Number: MPI 1441 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Capture Edge Trigger not configured correctly | ||
Reference Number: MPI 1440 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: The FPGA register used to configure the edge trigger also contains
other configuration bits. Bits 0 and 1 were used to configure the
edge. Values: 1 = rising, 2 = falling, 3 = both, and 0 = none. The
configSet code was NOT clearing out these bits. As a result, the
edge being configured was OR'ed into the register. Therefore, if
it was configured for rising and then later configured for falling,
both the 1 and 2 bits would be set in the register giving it a value
of 3 so that the capture would look like was configured for both.
The only way to clear out the register was to configure it for edgeNone. |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Path Motion has incorrect deceleration | ||
Reference Number: MPI 1431 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: In earlier version, the path module would compute the path (series
of points equally spaced in time) using a two step process. First,
the total length of the path was calculated by determining the locations
of equally time-spaced points with no deceleration at the end of
the path. Once the total path length was determined, the point along
the path to start the deceleration was computed (decelPoint = total
length - v*v/2*d). The velocity and deceleration used for this calculation
was taken from the max velocity and deceleration in the path configuration.
If the actual velocity at the decel point was lower than v,
the distance needed to stop would be overestimated and the actual
deceleration would be too low (lower than d). If the actual
velocity was greater than v, the true deceleration would
be higher than d. This could only happen if the velocity
specified for an element was different that that of the path configuration. |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
mpiEventMgrService(...) gets stuck in an infinite loop if CAN firmware not loaded | ||
Reference Number: MPI 1430 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Trust RMB Hall inputs don't show up in dedicated inputs | ||
Reference Number: MPI 1426 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Position jump during the motion modify of a velocity frame | ||
Reference Number: MPI 1425 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
PT/PVT motion stuck in MOVING state | ||
Reference Number: MPI 1423 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Certain path motion moves cause friction feedforward noise | ||
Reference Number: MPI 1418 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: The algorithm used for FFF calculation was revised to: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Fixed meiSqNodeDriveMonitor(...) | ||
Reference Number: MPI 1412 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
meiFilterConfigSet does not write MEIFilterConfig.PostFilterForm | ||
Reference Number: MPI 1397 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: meiFilterConfigSet(...) was modified to write the MEIFilterConfig.PostFilterForm to controller memory (or flash memory, if specified). |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
MPI recognizes a wider range of post filter settings | ||
Reference Number: MPI 1394 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: The solution was to use two different values for the different operations. The MPI now recognizes a wider range of post filter settings. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
New error messages to replace MPIMessageFATAL_ERROR | ||
Reference Number: MPI 1393 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: For more information, see MPIFilterMessage. In the past, the conditions that caused these errors would return
an ambiguous MPIMessageFATAL_ERROR error message. |
||
Fix/Solution: This problem was fixed internally. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
After topology is saved, the motor input bits are potentially not returned to host | ||
Reference Number: MPI 1380 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: In situations where a node with a lower motor count resided on the network before a node with a higher motor count, the motor input bits would not be returned to the host. This only occurred after topology had been saved to flash. |
||
Fix/Solution: This problem was fixed internally. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Non motion actions after a "profile not supported" is returned from a motion | ||
Reference Number: MPI 1376 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: Firmware just checked the mode instead of also checking the action. So if a S_Curve Jerk or Velocity Jerk move is commanded, the mode is S_Curve Jerk or Velocity Jerk. The firmware returns a "Profile Not Supported." Then, if the user tries another action that is not a start or modify, "Profile Not Supported" is returned again. |
||
Fix/Solution: Firmware has been modified to check the action, as well as the mode before returning "Profile Not Supported." |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Change INVALID enumerations to use some other defintion for -1 | ||
Reference Number: MPI 1372 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: Under the Linux Motion Programming Interface (MPI) the PVT frames were not correctly written to the firmware. A data misalignment of one word for every frame loaded was observed. This problem was caused by the MEIXmpFrameType{} member of the MEIXmpFrame structure and the possibility of varying storage class sizes of enumerators across different compilers. Due to the range of values in the MEIXmpFrameType{} enumeration, the GCC compiler was promoting the storage class size from 32bits to 64bits, thus causing a shift in the MEIXmpFrame{} structure. |
||
Fix/Solution: All enumerations in the MPI, which are explicitly set with hexadecimal values, have been cast to integers to ensure a predictable storage class size. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Moves using MEIMotionTypeFRAME do not start | ||
Reference Number: MPI 1350 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: mpiMotionStart(...) would not start motion when motion type MEIMotionTypeFRAME was used. The Control and Reserved fields were zeroed when frames were loaded using MEIMotionTypeFRAME. This caused start frames to malfunction because their status fields were zero. |
||
Fix/Solution: This problem was fixed by changing the copying method of frames for MEIMotionTypeFRAME to a straight structure copy. The previous version zeroed out the last two fields of each frame. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Topology Save fails with Trust Automation RMB | ||
Reference Number: MPI 1348 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: When using the sqTopologySave.exe utilitity with a Trust Automation I/O node connected to the network, it would fail and return the following error message: "SynqNet: node specific initialization failed" |
||
Fix/Solution: This problem was fixed internally. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Incorrect return value when using a CANopen analog input | ||
Reference Number: MPI 1327 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: When using a CANOpen analog input to monitor a voltage of 10V, it would return a value slightly less than 1 from meiCanNodeAnalogInputGet. This has been fixed to return a number correctly scaled between +/1. |
||
Fix/Solution: This problem was fixed internally. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
XCVR D, E, F, for RMB-10V2, 10V | ||
Reference Number: MPI 1322 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: Motion Console displays motor I/O XCVRs D,E,F for RMB-10v2 / 10v, but the hardware does not support these bits. |
||
Fix/Solution: Changes were made to mei_rmb.h. All masks, enumerations, and text strings associated with XCVR D, E, and F were taken out. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Recovery Mode was not being saved | ||
Reference Number: MPI 1316 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: SynqNet Recovery Mode was not being saved to controller flash memory. |
||
Fix/Solution: This problem was fixed internally. SynqNet Recovery Mode will now be saved to controller flash memory. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
BSOD with multiple eventMgrs | ||
Reference Number: MPI 1312 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: But, this workaround had a negative effect where an exiting process
using the service thread (interrupts) would potentially disable
interrupts for another running process using interrupts. Certain
combinations of processes beginning and exiting can cause bugchecks
(BSOD) on Win32 systems. |
||
Fix/Solution: The service thread no longer disables interrupts on exit. Since this bug fix is in the static AppUtil library, to take advantage of this fix you must recompile your application with provided AppUtil library from this release. This fix is only necessary if you have a multi-process application or run multiple processes where more than one application uses the interrupt enabled EventMgr object. |
||
Affects to Application Code: Since this bug fix is in the static AppUtil library, to take advantage of this fix you must recompile your application with provided AppUtil library from this release. This fix is only necessary if you have a multi-process application or run multiple processes where more than one application uses the interrupt enabled EventMgr object. |
All XMP Addresses Should Be Host Addresses | ||
Reference Number: MPI 1303 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: All XMP addresses are now interpreted as host addresses including the MEIMotorEncoder.reverseModulo.Ptr and MEISqNodeConfig.userFault.addr. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Encoder type is checked before allowing the user to invert the feedback | ||
Reference Number: MPI 1301 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: The encoderType is now being checked in mpiMotorConfigSet(...) before one can invert the feedback. An error message is now returned if phaseInvert is set for any encoderType besides quadrature. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
AMC node has busy timeout during initialization | ||
Reference Number: MPI 1295 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: AMC DQ111EE drives with firmware version 8.2 intermittently fail initialization with a "node busy" timeout error message (MEISqNodeMessageREADY_TIMEOUT) during network initialization. |
||
Fix/Solution: This problem has been fixed. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
SynqNet topology saved status not updated properly in Motion Console | ||
Reference Number: MPI 1293 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: Motion Console is not updated when the topology is saved to flash. This problem was caused by a bug in the meiSynqNetTopologyStatus(...) routine. |
||
Fix/Solution: The bug in meiSynqNetTopologyStatus(...) has been fixed. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Unnecessary "Save network topology to flash memory now?" popup window | ||
Reference Number: MPI 1292 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: A bug existed in the 20030620.1.10 release where saving a motor configuration to flash memory for the first time would always prompt Motion Console's "Save network topology to flash memory now?" popup window. Saving topology is not required unless a motor configuration has been changed, which would also require a service command to be sent to a SynqNet node. |
||
Fix/Solution: The bug has been fixed. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Brake toggles on/off during controller reset after topology is saved | ||
Reference Number: MPI 1291 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: Since it takes a few samples before the background changes and
turns OFF, the brake RELEASE bit would be a few samples after SynqNet
initialization had been completed, where the brake RELEASE bit is
set in the packet sent to the node. This resulted in the brake turning
off for a few samples just after SynqNet initialization. |
||
Fix/Solution: The problem was fixed by modifying the default motor I/O word so that the brake RELEASE bit is cleared, instead of set. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
No firmware found message not returned | ||
Reference Number: MPI 1290 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: Code was added to the flash utility function. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
mpiControlValidate causes unhandled exception | ||
Reference Number: MPI 1288 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Filter and Axis object deadlock in firmware | ||
Reference Number: MPI 1280 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: If an axis was prevented from completing a motion by a Stop, E-Stop, or Abort action, and then the network was shutdown and re-initialized, the controller's axis and filter objects would have corrupt calculation values. For example, the TC.Velocity and TC.Accel values would be: -1.QNAN. This problem was caused by an improper frame load due to the initial frameLoad and frameIndex value differences. |
||
Fix/Solution: This problem was corrected in the MPI by disabling axes during network shutdown and enabling the axes during network initialization. Now, when a Stop, E-Stop, or Abort action is used to stop motion on an axis, and the network is shutdown and re-initialized, the Axis and Filter objects will receive correct calculation values. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Commanding a move with a disabled motor | ||
Reference Number: MPI 1273 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: When a motor was disabled, the axis would set cmd=act. As a result, if a move was commanded, the cmd would remain equal to the actual. Although no motion would result, the move would still go through its cycle. Then the move would be completed and return a DONE event, etc. So, it would appear as though the move completed, even though nothing really happened; the motor never moved and the cmd still equaled the actual. |
||
Fix/Solution: If a motor is disabled, the cmd=act. But, if a move is commanded
and the cmd is no longer equal to the act, the cmd
will follow the user defined profile. If and when the error limit
triggers, the user defined event occurs. When the move finishes
(either by completion or by event due to error limit), cmd
will once again equal act. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Some capture objects default to not enabled | ||
Reference Number: MPI 1270 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Accessibility of board information | ||
Reference Number: MPI 1212 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: Board information is now always retrieved from the EEPROM for the XMP, and the Boot0 page for the ZMP. Retrieving board information (i.e. serial number, t-level number) is no longer dependent on functioning firmware. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Some capture objects default to not enabled | ||
Reference Number: MPI 1171 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: |
||
Fix/Solution: All capture trigger inputs are defaulted to not enabled when the capture is created first. After the capture has been used, the old configuration will remain in place through captureCreate's and captureDelete's. To reset the capture configuration, the application must call the mpiCaptureConfigReset function. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Accessing unsupported drive parameters returns non-descriptive error code | ||
Reference Number: MPI 1159 | ||
Type: Fixed Bug | ||
MPI Version: 03.01.00 | ||
Problem/Cause: "ERROR 0x1c05: sqDispatch: Node specific command dispatch error" The correct return value should actually be a "not supported" error.
|
||
Fix/Solution: This error message has been modified so that when performing a drive parameter read or write to a parameter that is unsupported by a drive, a "not supported" error message will be returned. |
||
Affects to Application Code: The following changes were made to the internal MPI/MEI libraries and will not affect customer code. |
Currently, there are no known bugs.
Linux port of meiPlatformProcessId(...) uses the getpid() | ||
Reference Number: MPI 1362 | ||
Type: Limitation | ||
Clarification: By default, an MPIEventMgr will only retreive events set up by mpiObjectEventNotifySet(...) calls that report the same process Id. This means that within the same application, one thread calls mpiEventMgrCreate(...) and another thread calls mpiObjectEventNotifySet(...), then the events generated due to the call to mpiObjectEventNotifySet(...) will not be reported by the MPIEventMgr object. Workaround: |
Motion Action RESET should be called before enabling motor | ||
Reference Number: MPI 1285 | ||
Type: Limitation | ||
Clarification: If the user does not want the motor to jump back to the STOP/ESTOP
position, then the user MUST call mpiMotionAction(....RESET). This
will clear the STOP/ESTOP AND will also clear out the current frame
list so that the current frame is a NULL frame. If the firmware
is processing a NULL frame, it will not try to calculate a new command
position based on frames. Once this is done, reenabling the axis
will not cause the motor to jump. |
| | Copyright © 2001-2021 Motion Engineering |