Debugging Code Module VIs with LabVIEW
- Updated2025-03-28
- 3 minute(s) read
Debugging Code Module VIs with LabVIEW
When executing your VIs in the LabVIEW Development System, you can debug your VIs using LabVIEW by setting breakpoints and probes in VIs being executed. The LabVIEW Development System can also debug applications that execute VIs using the LabVIEW Runtime, such as VIs executed using the TestStand LabVIEW Adapter and LabVIEW-built DLLs executed using the TestStand C/C++ DLL Adapter. Refer to the LabVIEW Help for more information about debugging remote applications and VIs executed using the LabVIEW Runtime.
Complete the following steps to debug VIs when the TestStand Sequence Editor executes VIs using a LabVIEW Runtime:
- Ensure that the Enable Debugging and Tracing option in the LabVIEW Adapter Configuration dialog box is enabled, and restart the TestStand Sequence Editor if required.
- Ensure that you save all VIs you want to debug in the version of the LabVIEW development system you are using to debug the VIs.
- Ensure that the LabVIEW code modules you want to debug are loaded into memory. You can load the modules by executing the sequence once, or by starting execution of the sequence if the modules are set to preload when execution begins.
- In the LabVIEW Development System, open a debug connection to the TestStand Sequence Editor by selecting Operate»Debug Application or Shared Library to open the Debug Application or Shared Library dialog box. Set the Machine name or IP address to localhost, select seqEdit.exe in the Application or shared library option, and click Connect. LabVIEW opens a debug connection to the TestStand Sequence Editor and downloads the code module VIs for debugging. See the Debug Application or Shared Library Dialog Box topic in the LabVIEW Help for more information about this step.
- In LabVIEW, add the required breakpoints and probes to the downloaded VIs to debug, then save the VI.
- (Optional) View the VIs loaded for debugging using LabVIEW RTE Debugging Viewer.vi, located in <TestStand Public>/AdapterSupport/LabVIEW. When you launch this tool, it will display the VIs loaded in the debugging application instance. If no VIs are shown, you can use the Application to Debug menu to manually select the application instance you want to view. If none of the options contain seqEdit.exe, verify that the debug connection was successful.
- Execute the TestStand sequence again to execute and debug the VIs. Once the TestStand execution reaches the VI, the first breakpoint will be triggered in a new instance of the VI. To add additional breakpoints or probes, add them to this instance of the VI.
- To make changes to the VI after debugging, right-click on the front panel of the debugging instance of the VI and select Remote Debugging»Quit Debug Session.
- This feature is only supported when executing VIs in the TestStand Sequence Editor.
- Step Into commands in TestStand are not supported when debugging VIs executing using the LabVIEW Runtime.
- You cannot debug TestStand steps configured to execute Express VIs or property nodes.
- LabVIEW will not connect to the TestStand Sequence Editor if the relevant LabVIEW Runtime does not have any VI code modules loaded.
Debugging VIs executing in different LabVIEW projects
If you have a sequence file that executes VIs in one or more project contexts, you can connect to each project context by selecting the item named SeqEdit.exe - <Project Name>.lvproj – My Computer from the Application or shared library option in the LabVIEW Debug Application or Shared Library dialog box.
Debugging VIs executing in different LabVIEW Runtimes
You can only debug code module VIs executing in one LabVIEW Runtime at a time. If you want to debug VIs executing in a different LabVIEW Runtime, you must close the existing debug connection from LabVIEW and open a new debug connection using the LabVIEW Development System that matches the LabVIEW Runtime version and bitness.
Debugging VIs executed in a User Interface
You can debug VIs executed in a TestStand User Interface by launching the User Interface in the LabVIEW Development System and setting the LabVIEW Adapter to execute VIs using the LabVIEW Development System before you execute your test sequence.
Closing a Debug Connection
When you open a debug connection from LabVIEW, LabVIEW will continue to debug VIs executed by the runtime until all code module VIs being debugged are closed. You can also close the debug connection using one of the following approaches:
- In the LabVIEW Development System, right-click on the front panel of one of the VIs to debug and select Remote Debugging»Quit Debug Session from the shortcut menu.
- In the TestStand Sequence Editor, unload all modules by using either the File menu or the TestStand Engine API.