LabVIEW Real-Time Startup VI vs Executable

Updated Dec 15, 2022



  • CompactRIO Controller
  • Smart Camera

  • I would like a specific VI to run when the real-time executable starts
  • I would like the executable that I developed to run when my controller boots up

  • You will need to create a Real-Time executable with your VI configured as startup. To do this. Right click Build Specifications in your proyect and select New>> Real-Time Application.
  • Once the Real-Time Application Properties window opens, navigate to Source Files, select your VI and add it to Startup VIs.
  • To make a specific real-time executable run when the controller boots up you will need to specify the executable to Set as Startup or Run as Startup

Additional Information

  • Compared to a non real-time application there are several benefits to building a real-time application
    • An executable can be configured as a startup executable, which will automatically begin execution when the controller boots up
    • Building an exe allows you to remove unnecessary source elements (such as block diagrams, unused polymorphic VI instances, etc.), reducing file size and overhead
    • It is possible to remotely debug startup executables in the LabVIEW development environment
  • Note that it is still possible to configure Startup VIs that will run automatically when the Real-Time controller boots up without having to compile them
  • Startup executables should not be confused with Startup VIs defined in an executable's Build Specification
    • Startup VIs will run when the executable is launched and not necessarily when the controller boots up