Real-Time Measurement and Control

cancel
Showing results for 
Search instead for 
Did you mean: 

RT does not run when deployed to 9642 sbRIO LV 2011

I have code deployed to a Ni sbRIO9642 where the RT code does not run when deployed to the when using LabVIEW 2011. It appears the NI-RT.ini file on the target is not being properly configured. I manually configured the ini file using FTP and the RT still will not run. I built a small test application and the RT on that did not run either, although i had hard validatiuon that the FPGA code was indeed running. Thanks - Keith

0 Kudos
Message 1 of 27
(6,276 Views)

Hello,

 

Does your code run in interactive mode?  If interactive mode is what you are having trouble with, I recommend trying highlight execution, and watch to see if any errors are thrown.  Also, make sure you are connecting all error wires, and that you handle/output the errors for easier debugging.

 

If you are trying to get an rtexe to run on startup I first recommend trying to attach the real-time debugger to it to see if any errors are thrown.  Here is a link to the Real-Time Module Help: Debugging a Stand-Alone Real-Time Application

 

Once you have tried either of these please let me know what, if any, errors are being thrown, and I will hopefully be able to better assist you in getting to the root of the issue.

 

Regards,

Matt M.

Applications Engineer
National Instruments
0 Kudos
Message 2 of 27
(6,268 Views)

I can run the code interactively - but when I deploy it the NI-RT.ini file seems to be configured incorrectly ( the startup.rtexe does not get named to the build spec, and the RTTarget.LaunchAppAtBoot never gets added ti the ini file) and the RT does not launch. I also looked at the console out data while the RIO boots and i see no errors there. I will deploy the debugger with my code and get back to you with that information.  Thanks, Keith

0 Kudos
Message 3 of 27
(6,259 Views)

Was this resolved?  I am having an issue with a cRIO-9074 that I have been using as a development station for different projects and it now will run apps in interactive mode, but not after I deploy.  I tried using the debugger and that crashed as well.  No errors occur during boot.

 

I am running LV2012.  I did update my host to have a second NIC card and have created the logos.ini file for the new NIC. 

0 Kudos
Message 4 of 27
(6,048 Views)

Hey Martin, 

 

I don't know if this specific problem was resolved, but there was a known issue in LabVIEW Real-Time 2011 (sp1) that exhibited this behavior. 

 

Shared Variables
292012

Return
Real-Time Applications containing typedef Shared Variables fail to run.
If you are building an RTEXE that contains Shared Variables whose data type is based upon a type definition and the build specification is configured to disconnect type definitions the RTEXE will not run.

Workaround: 1.) Manually disconnect the variable from the typedef before building the application 2.) Change the build spec so it doesn't disconnect type definitions

Reported Version: 2011 32-bit    Resolved Version: 2012    Added: 10/11/2011

 

Although this has been fixed in 2012, and shouldn't be an issue for you developing in LabVIEW 2012. Have you tried implementing a heartbeat VI? to verify if your RT app is actually running and not communicating? (great example here)

 

Do you have the system state pushier installed on your cRIO? does it point to a memory leak or 100% CPU utilization? (steps to install it found here, if you're not familiar)

 

Are you using the cRIO in Scan Interface mode? or in the FPGA interface? 

Applications Engineer
National Instruments
CLD Certified
0 Kudos
Message 5 of 27
(6,027 Views)

Thanks for the reply, I was out yesterday.  I will try the typedef trick today.

 

My app already blinks the user LED when it starts. It never gets started when using an executable.  The CPU usage is very low <10%.  Normally it is about 70%.  It looks like it tries to start, the CPU goes up to 100% for a second and then stops.

 

I am using FPGA mode. 

0 Kudos
Message 6 of 27
(6,015 Views)

Are you perchance using wait on IRQ methods in your RT code? I've seen another problem which keeps debuggable executables from running.

 

It was caused by wiring the "timed out(?)" value of an IRQ method to a case structure in RT code. The work around was to wire the "timed out(?)"  Boolean output to an or gate, with a false constant attached.

 

What behavior are you seeing from the debuggable executable? (Does it crash with an error? Does it simply not run? Can you not connect to it? Or does it start to connect and fail?)

 

The fact that your LED doesn't blink does point to the fact that your RT executable isn't actually running. Be sure to verify that you're not using any unsupported RT funtions, such as certain property nodes to front panel objects. 

Applications Engineer
National Instruments
CLD Certified
0 Kudos
Message 7 of 27
(6,004 Views)

It looks like disconnecting the typedefs did work.  So maybe the problem was not fixed for LV2012?

 

In trying to track this down I noticed some other behaviour that looked bad.  I noticed the nirio.ini looked like it was corrupted.  There were no CR/LF in the file.  I saw this happen to my text file that was deployed as well.  It doesn't always happen.

0 Kudos
Message 8 of 27
(5,996 Views)

The above issue was fixed for 2012, but perhaps you've found a similar bug. What were the exact steps you went through to get the executable up and running? 

 

Could you be more specific about the behavior you're seeing with the INI files? maybe post an example?

Applications Engineer
National Instruments
CLD Certified
0 Kudos
Message 9 of 27
(5,970 Views)

Attached is the nirio.ini file that I thought was corrupted.  Putting the CR/LF back in did not seem to fix the issue, but I don't see how it can parse the file correctly.  I have seen the same issue with an ini file that I use for my application.

 

I have a project which has about 20 network variables hosted on the cRIO. 4 or 5 of these variables were using typedefs.  On each of these variables I selected the Disconnect From Typedef button.  After that the executable would deploy and execute.

 

This application has been working in the past.  I did add a network card to my host recently, so that I can manage the IP addresses without our IT dept getting involved.  I don't know if going through this process caused the issue.

0 Kudos
Message 10 of 27
(5,965 Views)