10
RTI DDS Toolkit for LabVIEW Release Notes Version 1.4.0

RTI DDS Toolkit for LabVIEW ReleaseNotes · RTI DDS Toolkit for LabVIEW Release Notes ... the Lab- RTI DDS Toolkit for LabVIEW. RTI DDS Toolkit for LabVIEW RTI DDS Toolkit for LabVIEW

Embed Size (px)

Citation preview

Page 1: RTI DDS Toolkit for LabVIEW ReleaseNotes · RTI DDS Toolkit for LabVIEW Release Notes ... the Lab- RTI DDS Toolkit for LabVIEW. RTI DDS Toolkit for LabVIEW RTI DDS Toolkit for LabVIEW

RTI DDS Toolkit for LabVIEW

Release Notes

Version 1.4.0

Page 2: RTI DDS Toolkit for LabVIEW ReleaseNotes · RTI DDS Toolkit for LabVIEW Release Notes ... the Lab- RTI DDS Toolkit for LabVIEW. RTI DDS Toolkit for LabVIEW RTI DDS Toolkit for LabVIEW

© 2016 Real-Time Innovations, Inc. All rights reserved.

Printed in U.S.A. First printing. May 2016.

TrademarksReal-Time Innovations, RTI, NDDS, RTI Data Distribution Service, DataBus, Connext, Micro DDS, the RTI logo, 1RTI and the phrase, “Your Systems. Working as one,” are registered trademarks, trademarks or service marks of Real-Time Innovations, Inc. All other trademarks belong to their respective owners.

Copy and Use RestrictionsNo part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form (including electronic, mechanical, photocopy, and facsimile) without the prior written permission of Real-Time Innovations, Inc. The software described in this document is furnished under and subject to the RTI software license agreement. The software may be used or copied only under the terms of the license agreement.

Technical Support Real-Time Innovations, Inc.232 E. Java Drive Sunnyvale, CA 94089Phone: (408) 990-7444Email: [email protected]: https://support.rti.com/

Page 3: RTI DDS Toolkit for LabVIEW ReleaseNotes · RTI DDS Toolkit for LabVIEW Release Notes ... the Lab- RTI DDS Toolkit for LabVIEW. RTI DDS Toolkit for LabVIEW RTI DDS Toolkit for LabVIEW

Release Notes

1 Supported Platforms RTI® DDS Toolkit for LabVIEW™ is supported on these platforms:

❏ Windows® 7 (32-bit and 64-bit)

❏ Windows 8 and 8.1 (32-bit and 64-bit)

❏ Windows 10 (32-bit and 64-bit)

❏ Windows 2003 (32-bit and 64-bit)

❏ Windows Server 2008 R2 (64-bit)

❏ Windows Vista® (32-bit and 64-bit)

❏ Windows XP Professional SP2 (32-bit and 64-bit)

On 64-bit platforms, it runs in 32-bit mode.

Real-Time Targets:

❏ NI Linux 3 on ARMv7 CPU (tested on cRIO-9068 target)

❏ NI Linux 3 on 64-bit Intel CPU (tested on cRIO-9031 target)

You will also need:

❏ National Instruments® LabVIEW 2012-2015 (32-bit)

❏ JKI VI Package Manager 2014 or later

2 Compatibility2.1 Incompatibility with Older Versions of Connext DDS using UDPv6 and Shared

MemoryRTI Connext™ DDS 5.1.0 and earlier releases used a UDPv6 locator kind that was not compliant with the value in the RTPS specification. The value used in Connext DDS 5.1.0 was 5 while the RTPS specification specifies a value of 2. Because of this issue, Connext DDS could not interoper-ate with other DDS vendors over UDPv6.

This problem is resolved starting with 5.2.0. Note, however, that out-the-box backward compat-ibility with Connext DDS 5.1.0 and lower, when using both the UDPv6 and SHMEM transports, is broken.

See the RTI Connext DDS Core Libraries Release Notes’ section on Transport Compatibility for information on how to resolve this compatibility issue.

1

Page 4: RTI DDS Toolkit for LabVIEW ReleaseNotes · RTI DDS Toolkit for LabVIEW Release Notes ... the Lab- RTI DDS Toolkit for LabVIEW. RTI DDS Toolkit for LabVIEW RTI DDS Toolkit for LabVIEW

2 Compatibility

2.2 Incompatibility with Older Versions of Connext DDS

In Connext DDS DDS 5.1.0, the default message_size_max for the UDPv4, UDPv6, TCP, Secure WAN, and shared-memory transports changed to provide better out-of-the-box performance. RTI Toolkit for LabVIEW 1.1.0 and higher also uses the new default value for message_size_max. Consequently, RTI Toolkit for LabVIEW 1.1.0 and higher is not out-of-the-box compatible with applications running older versions of Connext DDS or RTI Data Distribution Service.

See the RTI Connext DDS Core Libraries Release Notes’ section on Transport Compatibility for instructions on how to resolve this compatibility issue.

2.3 Additional Steps when Upgrading from a Release Older than 1.2.0.90

If you are upgrading from a release older than 1.2.0.90, there are important steps you must take. Briefly, changes are required because:

❏ The Create Reader/Writer subVIs have been deprecated. We strongly recommend that you upgrade the VIs to use the Simple Create Reader/Writer or Advanced Create Reader/Writer.

❏ The RTI DDS Toolkit for LabVIEW library name changed from lvdds.1.0.dll to rtilvdds.dll.

See Sections 1.5 and 1.5.1 in the Getting Started Guide for details.

2.4 Additional Steps when Upgrading from a Release Older than 1.3.0.91

If you are upgrading from a release older than 1.3.0.91, there are important steps you must take. Briefly, changes are required because:

❏ The DDS Write/Read Object Reference has been removed for all our VIs.

❏ The configuration of several Call Library Function Nodes has been modified and they no longer receive a reference as a parameter.

See Sections 1.5 and 1.5.2 in the Getting Started Guide for details.

2.5 Required VI Package Manager Version 2014

The RTI DDS Toolkit for LabVIEW requires VI Package Manager (VIPM) to be installed. Due to a limitation in VIPM, version 2014 of VIPM is required. For details visit JKI website: http://sup-port.jki.net/entries/66745297-VIPM-2013-cannot-install-packages-built-in-VIPM-2014.

2.6 Toolkit Uses String Length of 1024

In RTI DDS Toolkit for LabVIEW, the default string length is 1024 characters. This may create incompatibilities with other DDS data types in your system that use string lengths != 1024. If you are sure your types are compatible, use the new QoS profile, LabVIEWLibrary::NoType-CodeProfile.

2.7 Improved Performance when Managing Large Data

We have improved the performance when managing large data by setting these properties. (Note: they cannot be changed from the QoS XML file):

❏ Dynamic data:

• serialization.trim_to_size = DDS_BOOLEAN_TRUE

• serialization.max_size_serialized = DDS_LENGTH_UNLIMITED

• serialization.min_size_serialized = TypeCode's minimum serialized size

❏ Data Writer:

• dds.data_writer.history.memory_manager.fast_pool.pool_buffer_max_size = 1024

2

Page 5: RTI DDS Toolkit for LabVIEW ReleaseNotes · RTI DDS Toolkit for LabVIEW Release Notes ... the Lab- RTI DDS Toolkit for LabVIEW. RTI DDS Toolkit for LabVIEW RTI DDS Toolkit for LabVIEW

3 What’s New in 1.4.0

❏ Data Reader:

• dds.data_reader.history.memory_manager.fast_pool.pool_buffer_max_size = 1024

3 What’s New in 1.4.0

3.1 Some Internal Library Functions no Longer Visible

These functions are no longer visible:

❏ LVDDS_AdvancedReaderConfiguration_new()

❏ LVDDS_AdvancedReaderConfiguration_delete()

These functions should not have been available to users; they are for internal use only.

3.2 Integration of Distributed Logger

Now you can use Distributed Logger from RTI Connext DDS Toolkit for LabVIEW. Debugging messages can be sent through the network. You can configure Distributed Logger from the Administration Panel, as well as from the Configure Distributed Logger VI.

These configuration parameters can be recovered by running the DL Configuration Parameters subVI.

When configuring Distributed Logger, you can set these parameters:

❏ Enable Distributed Logger (boolean)

❏ Domain Id (32-bit unsigned integer)

❏ Distributed Logger Queue Size (32-bit integer)

❏ Domain Participant QoS Profile (string)

To obtain each of these parameters (except the Domain Participant QoS Profile), use the Get DL Configuration Parameters subVI.

The Administration Panel has a new Distributed Logger tab, which will help you manage these parameters.

4 What’s Fixed in 1.4.0

4.1 Memory Leak when using Types with two Clusters at Same Level

In the Write advanced template, if the type to be written was composed by two or more clusters at the same level, this caused a memory leak. This problem has been resolved.

[RTI Issue ID LABPLG-400]

4.2 Several VIs could Modify Previous Input Errors

Several VIs were able to modify the previous input error under certain conditions. This problem has been resolved.

[RTI Issue ID LABPLG-388]

3

Page 6: RTI DDS Toolkit for LabVIEW ReleaseNotes · RTI DDS Toolkit for LabVIEW Release Notes ... the Lab- RTI DDS Toolkit for LabVIEW. RTI DDS Toolkit for LabVIEW RTI DDS Toolkit for LabVIEW

5 Previous Releases

4.3 Closing Create Simple Writer VIs without Stopping Application caused LabVIEW to Crash

When an application was running the Create Simple Writer VI and the VI window was closed without stopping, this caused LabVIEW to crash. This problem has been resolved.

[RTI Issue ID LABPLG-393]

4.4 LabVIEW Crashed if String Size Greater than 1,024 Chars in Advanced Configuration

If any of the strings in the Advanced Reader/Writer Configuration had more than 1,024 charac-ters, LabVIEW would crash. This problem has been resolved.

[RTI Issue ID LABPLG-386]

5 Previous ReleasesThis section includes:

❏ What’s New in 1.3.2 (Section 5.1)

❏ What’s Fixed in 1.3.2 (Section 5.2)

❏ What’s New in 1.3.1 (Section 5.3)

❏ What’s Fixed in 1.3.1 (Section 5.4)

❏ What’s New in 1.3.0 (Section 5.5)

❏ What’s Fixed in 1.3.0 (Section 5.6)

5.1 What’s New in 1.3.2

5.1.1 New Administration Panel to Debug Applications

You can use the new Administration Panel to manage and debug your DDS applications. From this panel, you can:

❏ Customize when DDS entities are deleted.

❏ Visualize debugging messages in a debugging table.

❏ Customize the debugging table refreshment and size.

❏ Enable the Debugging Window on Windows systems.

❏ Show the DDS entities state, which contains the number of DomainParticipants, DataReaders, etc.

The Administration Panel is supported on LabVIEW for Windows. For more information, see Section 6.4, How to Use the Administration Panel, in the RTI DDS Toolkit for LabVIEW Getting Started Guide.

5.1.2 New Sub-Palette to Administer Debugging Functionalities and Monitor DDS Applications

A new set of subVIs has been added as a sub-palette under the Tools section. These subVIs allow you to administer the debugging functionality and monitor your DDS applications. The new subVIs are as follows:

❏ Get configuration parameters returns the current status of:

• Timeout to release unused DDS entities

4

Page 7: RTI DDS Toolkit for LabVIEW ReleaseNotes · RTI DDS Toolkit for LabVIEW Release Notes ... the Lab- RTI DDS Toolkit for LabVIEW. RTI DDS Toolkit for LabVIEW RTI DDS Toolkit for LabVIEW

5 Previous Releases

• Filter level

• Maximum stored allowed messages

❏ Set configuration parameters updates the values of the above three parameters

❏ Get DDS State returns general DDS entities statistics from RTI DDS Toolkit for Lab-VIEW.

❏ Read One Logged Message appends a read message to the introduced table.

For more details on each of these subVIs, see Section 6.4.2, Debugging SubVIs on Real-Time Tar-gets and Windows Systems, in the RTI DDS Toolkit for LabVIEW Getting Started Guide.

5.1.3 New SubVI to Log Messages

A new subVI called “Log New Message” has been added to the Debugging sub-palette. This subVI allows logging individual messages to the internal logger. These messages are composed of three parameters: timestamp, log level, and message text.

5.1.4 ‘Get DDS State’ Location and Behavior Changed

The Get DDS State subVI has been moved to the new 'Debugging' sub-palette. This sub-palette can be found in the “RTI Connext DDS toolkit -->Tools” sub-palette. Also, 'Get DDS State' will no longer run an infinite loop. From now on, it runs just one time per call.

5.1.5 Ability to Customize ‘Timeout to Delete Inactive DDS Entities’

In previous releases, unused DDS entities were only deleted if 10 seconds had passed since the last time they were used. That 10-second period was fixed and not customizable. From now on, you can customize the ‘Timeout to delete inactive DDS entities’ using the Set Configuration Parameters subVI. You can also change the timeout from the Administration Panel. If ‘Timeout to delete inactive DDS entities’ is set to 0 seconds, all DDS entities will be deleted as soon as ‘Release Reader/Writer’ is called. This can affect initialization time. By default, ‘Timeout to delete inactive DDS entities’ is 10 seconds.

5.2 What’s Fixed in 1.3.2

5.2.1 Exclusive DataReaders could be Wrongly Asserted, Reused as Shared DataReaders

In previous releases when creating a shared DataReader, an existing exclusive DataReader may have been reused. This caused exclusive DataReader to become a shared DataReader instead. This problem has been resolved; now exclusive DataReaders will never be shared.

[RTI Issue ID LABPLG-331]

5.2.2 Number of DDS DataWriters and DataReaders were not Correctly Updated

The 'Get DDS State' VI did not correctly update the number of DDS DataWriters and DataRead-ers. This problem has been resolved.

[RTI Issue ID LABPLG-360]

5.2.3 Possible Segmentation Fault when Loading Array Data from LabVIEW

When loading array data from LabVIEW, a segmentation fault may have occurred if the Lab-VIEW array somehow mismatched the internal type used by DDS. This problem has been resolved and an error will be shown if such a mismatch occurs.

[RTI Issue ID LABPLG-372]

5

Page 8: RTI DDS Toolkit for LabVIEW ReleaseNotes · RTI DDS Toolkit for LabVIEW Release Notes ... the Lab- RTI DDS Toolkit for LabVIEW. RTI DDS Toolkit for LabVIEW RTI DDS Toolkit for LabVIEW

5 Previous Releases

5.2.4 External Window showed Internal Error Messages and Crashed when Closed

If an RTI internal error occurred, it appeared in an external command prompt. Closing that com-mand prompt caused LabVIEW to crash. This problem has been resolved by forwarding those messages to the new debugging queue. Now you can see the messages from the Administration Panel. You can also recover the messages by calling the Administration Panel Read One Logged Message subVI.

[RTI Issue ID LABPLG-230]

5.3 What’s New in 1.3.1

5.3.1 New Platforms

❏ This release supports LabVIEW RT running on NI Linux 3 systems with a 64-bit Intel CPU.

❏ This release has also been validated for LabVIEW 2015.

❏ New VI Package for cRIO Support Files on Intel-based boards

A new VI package (.vip) containing the cRIO-9031 support files is now available. This package can be found in the NI Tools Network or by contacting [email protected]. It con-tains all the files you will need to install RTI DDS Toolkit for LabVIEW on a cRIO-903x board.

5.3.2 Updated Advanced Reader/Writer Configuration Controls

The Advanced Reader/Writer Configuration Controls have been updated. Now they show larger boxes for string values. Also, the names of the fields domainParticipantQoS, dataWriter-QoS and dataReaderQoS are now called domainParticipantQoSProfile, dataWriterQoSProfile and dataReaderQoSProfile, respectively.

5.3.3 Updated Type of Reference Number in Reader and Writer SubVIs

After creating a Reader/Writer, a reference number is generated. The type for this reference number has been updated to support 64-bit platforms. This change affects all subVIs and tem-plates in the toolkit. This change also caused the ‘DDS Read Object Ref’ and ‘DDS Write Object Ref’ controls to be removed from the Controls Palette.

5.4 What’s Fixed in 1.3.1

5.4.1 Possible Deadlock When Creating Several Readers/Writers at Once

You may have seen your VIs hang when you created several Readers or Writers in parallel. This was due to a deadlock in the creation subVIs. This problem has been solved.

[RTI Issue ID LABPLG-347]

5.4.2 Unsigned Int 8 Write subVI had Incorrect Type

In the previous release, the polymorphic Write subVI incorrectly mapped 'Numeric (U8)' type as 'Double' instead of as 'Unsigned Int 8'. This problem has been resolved.

[RTI Issue ID LABPLG-349]

5.5 What’s New in 1.3.0

5.5.1 New Platforms

This release supports LabVIEW 2012-2014.

6

Page 9: RTI DDS Toolkit for LabVIEW ReleaseNotes · RTI DDS Toolkit for LabVIEW Release Notes ... the Lab- RTI DDS Toolkit for LabVIEW. RTI DDS Toolkit for LabVIEW RTI DDS Toolkit for LabVIEW

5 Previous Releases

5.5.2 Removed Platforms

LabVIEW 2010 and 2011 are no longer supported. If you need support for older versions, contact [email protected].

5.5.3 New VI Package for cRIO Support Files

A new VI package (.vip) containing the cRIO-9068 support files is now available. This package can be found in the NI Tools Network or by contacting [email protected]. It contains all the files needed to install RTI DDS Toolkit for LabVIEW on a cRIO-9068 board.

5.6 What’s Fixed in 1.3.0

5.6.1 Removed Fixed Bound when Using Strings

In previous releases, string length was limited to 1024 characters. From this release and on, strings can be created as unbounded, removing this limitation. By default, strings will be created with a bound of 1024 characters. To force unbounded strings, you will need to set a new flag in Advanced Reader/Writer Configuration controls. The maximum number of characters to send when this flag is set is RTI_INT32_MAX (2147483647). The following DomainParticipant QoS property has been enabled to allow compatibility with bounded strings: dds.type_consistency.ignore_sequence_bounds. Set that property in any external DataReaders communicating with the RTI DDS Toolkit for LabVIEW if you use unbounded strings.

[RTI Issue ID LABPLG-210]

5.6.2 RTI_LABVIEW_CONFIG.xml no longer Required

RTI DDS Toolkit for LabVIEW used to provide an XML file with all the default QoS profiles used by the examples. That file was required for the toolkit to work. This limitation has been removed. Now the default QoS profiles are defined internally in the code, so RTI_LABVIEW_CONFIG.xml is no longer required.

A new file, RTI_LABVIEW_CONFIG.documentationONLY.xml, is provided for documenta-tion purposes only. Any changes in this file will not be loaded by RTI DDS Toolkit for LabVIEW.

[RTI Issue ID LABPLG-249]

5.6.3 Transport Compatibility over UDPv6

Connext DDS 5.1.0 and earlier releases used a UDPv6 locator kind that was not compliant with the value in the RTPS specification. The value used in Connext DDS 5.1.0 was 5 while the RTPS specification specifies a value of 2. Because of this issue, Connext DDS could not interoperate with other DDS vendors over UDPv6. This problem has been resolved. Notice that by doing this, out-the-box backward compatibility with previous releases using both the UDPv6 and SHMEM transports is broken. See the RTI Connext DDS Core Libraries Release Notes’ section on Transport Compatibility for more information.

[RTI Issue ID LABPLG-261]

5.6.4 Samples not Read if Wrong KeyName Provided

When creating a new Reader node for an unkeyed type, you could provide a nonexistent key name. In this situation, the DDS data type was created as unkeyed, but internally, new samples were treated as instances. This could have made your Reader starve after the first data was read. This problem has been resolved.

[RTI Issue ID LABPLG-289]

7

Page 10: RTI DDS Toolkit for LabVIEW ReleaseNotes · RTI DDS Toolkit for LabVIEW Release Notes ... the Lab- RTI DDS Toolkit for LabVIEW. RTI DDS Toolkit for LabVIEW RTI DDS Toolkit for LabVIEW

6 Known Issues

5.6.5 Possible Segmentation Fault while Loading

You may have seen LabVIEW hang after calling the RTI DDS Toolkit for LabVIEW. This may have been caused by a race condition when loading rtilvdds.dll. This problem has been resolved.

[RTI Issue ID LABPLG-298]

5.6.6 Memory Leak When Using Sequences

When using sequences, the RTI DDS Toolkit for LabVIEW Reader may not have properly freed all sequence resources, resulting in a memory leak. This only affected version 1.2.0.90. This problem has been resolved.

[RTI Issue ID LABPLG-300]

5.6.7 Error 5001 when Re-Running 'Read' subVI

You may have seen error 5001 when running your Reader application for the second time, or when sharing Readers. This problem has been resolved.

[RTI Issue ID LABPLG-305]

5.6.8 Create Writer SubVIs Showed Wrong Output Name

The Advanced and Simple Create subVIs showed as output ‘dds reader object ref’. This was incor-rect and has been resolved.

[RTI Issue ID LABPLG-306]

6 Known Issues

6.1 Reader/Writer Create SubVIs Fail if QoS Settings not Provided

When creating a new Reader or Writer, QoS settings are optional. However, if there are no QoS settings when working on a cRIO-9068 system, you may encounter error 5052 ("XML Configura-tion File not found").

A workaround is to add an empty string to the qos_profile pin.

[RTI Issue ID LABPLG-240]

7 Additional DocumentationRTI DDS Toolkit for LabVIEW uses RTI Connext DDS for communication. For details on RTI Con-next DDS and the Quality of Service (QoS) settings, visit http://community.rti.com/documenta-tion.

8