07-17-2017 03:01 PM
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.
Solved! Go to Solution.
07-19-2017 01:28 PM
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?
07-31-2017 03:48 PM
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:
08-11-2017 11:09 AM
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.