VI is Stuck in System Exec.vi When I Use the Ping Command in Linux System

Updated Aug 28, 2018

Reported In

Hardware

  • cRIO-9040

Software

  • LabVIEW Real-Time Module

Operating System

  • Linux
  • NI Linux Real-Time

Issue Details

I'm using a VI that uses the System Exec.vi to ping another system and it works correctly when I run it in a Windows computer, but when I run it in my compactRIO or another Linux system the System Exec.vi never executes even though I never get an error.

Why am I seeing this behavior? Can this VI be used correctly in Linux systems?

Solution

When using the ping function in a Linux system it is important to indicate to the system how many times the ping function is going to execute, since by default in Linux system this command runs indefinitely until the user indicates it to stop, which differs from the behavior of the ping function in Windows systems.

The following command is an example of how to indicate how many times the iteration has the ping command has to run.

ping -c 5 xx.xx.xx.xx

The -c flag indicates that the next number will indicate how many commands will be sent by the ping operation to the indicated IP Address. By using the command as shown above you should be able to see the System Exec.vi complete successfully.

An alternative would be to use the wait until completion? terminal in the System Exec.vi can be used to indicate the system to run the operation in the background, however if this is option is used the ping operation will continue running indefinitely.

WAS THIS ARTICLE HELPFUL?

Not Helpful