Accessing Front Panels of Reentrant VIs on Real-Time Systems

Updated Nov 15, 2025

Reported In

Software

  • LabVIEW Real-Time Module
  • LabVIEW

Operating System

  • LabVIEW Real-Time (NI Linux Real-Time)

Issue Details

I have a real-time program containing reentrant VIs running on a real-time system, such as a cRIO. I would like to access the front panels of these VIs during the program's execution on my remote target to view data from instances of these reentrant VIs. Is this possible?

Solution

Viewing the front panels of reentrant VIs in real-time applications compiled for deployment is not possible, as allowing dynamic access to instances of a reentrant VI would prevent the memory model of real-time operating systems from maintaining the determinism which makes them unique. For deployed applications, the main way for users to access the information on the front panel of a reentrant real-time VI would be to transfer that information to a host-side VI using shared variables. See: Sharing Data Using Shared Variables.

However, there is a workaround for accessing the front panels of reentrant real-time VIs which can be used if you are working with a real-time program in the development environment, or have compiled your real-time application to be debuggable and access the code using the Operate » Debug Application or Shared Library. With one of the previous configurations, you could access the information from your reentrant VI's front panel by passing the data to the front panel of a non-reentrant subVI inside your re-entrant VI. You could then control which set of information you're viewing on your non-reentrant VI's front panel by using a case structure controlled by a registry of the names of the reentrant VI's instances. An example of what this might look like is below.

 

Additional Information

Note that the recommended way for viewing data from real-time applications on a front panel is by transferring the data to a host VI using shared variables.