RTI DDS Toolkit for LabVIEW Support

cancel
Showing results for 
Search instead for 
Did you mean: 

DDS on myRIO Stops Working After Reset

Solved!
Go to solution

Hi all,

 

I'm using the RTI DDS Toolkit to communicate between two myRIOs. I can get the communication to work fine, but if I reset the power on the myRIOs, it no longer works. Has anyone run into a problem like this?

 

The only workaround I have found is to uninstall and reinstall the toolkit on the myRIO. However, this only works some of the time, and it is unclear why.

 

I'm using LabVIEW 2016 and RTI DDS Toolkit 2.0.0.104.

Thanks,
Travis N.
Applications Engineering
National Instruments
0 Kudos
Message 1 of 4
(3,368 Views)

Hi Travis,

 

I have a few questions for you:

 

Are you resetting the power on the myRIOs while the application is actively running? 

 

What other troubleshooting steps have you tried that were unsuccessful prior to re-installing all software?

 

When you re-install, are you doing this for both myRIOs, or just one of them?

Nick C | Software Project Manager - LabVIEW Real-Time | National Instruments
0 Kudos
Message 2 of 4
(3,326 Views)

 

Nick-C and I are still working on this question with RTI, but we have found a reliable workaround. Adding this snippet before creating any DDS entities will make sure the devices can communicate after being powered back on:

 

 

Thanks,
Travis N.
Applications Engineering
National Instruments
0 Kudos
Message 3 of 4
(3,258 Views)
Solution
Accepted by Nick-C

Problem:

myRIOs connected over WIFI stop communicating over DDS after being powered off and back on

 

Root Cause:

myRIOS are connected on different subnets, causing the peer discovery to fail

 

Solution:

On each device, set the variable NDDS_DISCOVERY_PEERS to the IP addresses of the other devices in the network.

 

On Linux (myRIO):

Access your Linux command line via SSH

Edit the bashrc file in the /home/lvuser directory

vi /home/lvuser/.bashrc

Add a command to set the NDDS_DISCOVERY_PEERS variable

export NDDS_DISCOVERY_PEERS=<IP ADDRESS 1>,<IP ADDRESS n>

Reset or power of the myRIO

 

On Windows:

In the command prompt, enter a command to set the NDDS_DISCOVERY_PEERS variable

set NDDS_DISCOVERY_PEERS=<IP ADDRESS 1>,<IP ADDRESS n>

Run LabVIEW through the command prompt

           "C:\Program Files (x86)\National Instruments\LabVIEW 20XX\LabVIEW.exe"

 

Drawbacks:

Setting this variable disables the multicast peer discovery. You can add devices by adding their IP Address to the NDDS_DISCOVERY_PEERS variable on each device.

To re-enable multicast again, unset the NDDS_DISCOVERY_PEERS variable in the bashrc file. On Windows, run LabVIEW without using the command prompt.

Thanks,
Travis N.
Applications Engineering
National Instruments
Message 4 of 4
(3,149 Views)