Text-Based Programming on CompactRIO Hardware

Updated Jun 1, 2023

Reported In


  • cRIO-9046
  • cRIO-9042
  • cRIO-9045
  • cRIO-9047
  • cRIO-9043
  • cRIO-9048
  • cRIO-9049
  • cRIO-9041
  • cRIO-9053
  • cRIO-9054
  • cRIO-9055
  • cRIO-9056
  • cRIO-9057
  • cRIO-9058
  • sbRIO-9637

Issue Details

  • Is it possible to program the CompactRIO using the C/C++ DAQmx API? What software do I need to accomplish this?
  • Can I use a Text-based programming language to program my CompactRIO?


For DAQmx:         Implementation of NI-DAQmx is the same as other text based programming environments

For programming the Real-time Controller:
  • Programming the cRIO-904x uses the same method as programming a Linux Real-Time integrated controller. For any new project, consider using a toolchain based on Visual Studio Code. For detailed instructions on how to set up a toolchain based on Visual Studio Code, see the NI Linux Real-Time Documentation and Tutorials. It also provides information on typical steps, like building, deploying, and debugging a shared library.
  • The cRIOs that runs Linux real time can also be programmed using the Python FPGA API
Note: To create a complete application where the real time controller has access to the hardware I/O you will require to program the embedded FPGA. In order to program the FPGA you can only use the LabVIEW FPGA module.

If you are new to programming in an embedded system, first learn about general methods and other tools that are available.