LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Running LabVIEW .exe on cRIO

Solved!
Go to solution

Hello Community,

 

I'm currently dealing with an instrument that has its own executable software and wish to integrate this instrument onto a cRIO system ( I would build my own software to interface but it has an onboard computer specifically designed to talk to this .exe). I'm just wondering if its possible to run that executable on the cRIO via the RT code and whether its possible to control the .exe and receive outputs from it?

 

Or is this seemingly impossible as the .exe is designed to interface with a windows user machine and not a headless cRIO system that has no user interface?

 

Thanks

0 Kudos
Message 1 of 4
(692 Views)
Solution
Accepted by topic author owhiteside

Hi owhiteside,

 


@owhiteside wrote:

Or is this seemingly impossible as the .exe is designed to interface with a windows user machine and not a headless cRIO system that has no user interface?


A Windows executable will not run on a cRIO because of (most often) different CPU architecture & different OS…

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 2 of 4
(672 Views)

Cheers GerdW, thanks for making that clear

0 Kudos
Message 3 of 4
(663 Views)

As Geerd mentioned, this is almost certainly impossible.

 

All current NI Realtime targets (cRIO, PXI, etc) runs NI Linux RT as OS. Some use an Intel compatible CPU in 64-bit mode, others an ARM Cortex A CPU.

 

For the ARM CPU targets (which are the cheaper ones) it's quite certainly impossible. Your executable would not only have to be compiled for Linux, but also for ARM CPU and to make matters slightly more complicated for ARM softFPU emulation. Most ARM compiled programs assume however full hardware FPU support.

 

The Intel CPU targets might theoretically be able to run an executable build for Linux x64, but there are still no guarantees. NI Linux RT uses a Linux kernel that comes from a source that is configuring Linux kernels for embedded applications and has several feature limitations that in modern Linux distributions are enabled for high computing and server operation, which is something that an embedded target not only doesn't need but clearly can overrun the capabilities of such hardware.

Also the NI Linux RT kernel always lags the official Linux kernel somewhat behind, since all the patches to the official kernel need to be ported first to the embedded kernel in some ways. So there are additional possible problems that might prevent your executable to run on a cRIO system, even if it uses an Intel CPU and your executable was compiled for Linux x64.

 

But your executable is with 99% guarantee a Windows executable and then anything I said above is irrelevant, it simply won't be possible to run.

Rolf Kalbermatter
My Blog
0 Kudos
Message 4 of 4
(660 Views)