04-06-2011 12:59 PM
I currently have a project set up with a real-time application running on my cRIO which is running in Hybrid Mode. I also have an application that runs on my computer, and the RT App and the host machine app communicate through bound libraries. Everything runs correctly when I run the RT App and host machine app through the LabVIEW project window. My issue is, when I create a real-time startup application for my cRIO, when I run my host machine program, I get the following error:
My understanding of Hybrid Mode leads me to think that the FPGA bitfile isn't running, since scan mode is compiled into the bitfile. I have read other forum postings and KB articles but none of them have led me to the fix. My main RT app VI first opens the FPGA reference, and in the RIO device setup the FPGA is set to load the bitfile on reboot. I have attached my "Main.vi" which is set to run on the cRIO RT App. Thank you!
04-07-2011 11:59 AM
Brandon:
According to the error, the controller doesn't have the Scan Engine installed or running. Have you gone into MAX and made sure that you have a driver package with Scan Engine support installed? Judging by what you've posted, it looks like the issue lies with the controller software, not the FPGA...
Also, when you configure your chassis, have you gone through the correct order in terms of switching the chassis between scan mode to FPGA mode (see here for more info)?
04-07-2011 12:38 PM
This is actually an issue with the errors the controller throws when running in Hybrid mode. I indeed have everything installed properly. As I said, it all works when I run it from the project explorer. If the FPGA code is not already running (with the scan engine compiled in), then LabVIEW *thinks* the scan engine isn't installed, and then errors out. My issue is with getting the FPGA code to run prior to anything else happening I believe.
I have configured everything correctly, as I said it works from the project window. I spent some time on the phone with NI support getting that working, but that part is ok. The issue I am running into is simply when I try to make a real-time startup application.
04-10-2011 01:52 PM
Brandon:
In your real-time code, are you calling the "Download" and "Run" methods for the FPGA VI explicitly? If not, does that change the behavior if you do?
The other thing I noticed is that you get the error when you run the host machine. Is the host machine app attempting to deploy the I/O Variables under the modules in your project? Would you be willing to post a screen shot of your project tree?
04-11-2011 11:55 AM
My code only had the "Run" method. I tried adding the "Download" method, as well as disabling autodeploy variables from the host machine but I still get the same error. I have attached a screenshot of my project window as well. Thank you for your time and help with this.
04-13-2011 12:42 AM
Brandon:
A couple things are occurring to me:
-Can you try re-deploying your chassis settings (right-click the chassis and select "deploy")?
-Would you be willing to post up your project for me to look at? Could you also post a screen shot or MAX export of the software currently installed on the cRIO controller? This is a bit of a strange issue, and I'd like to try to reproduce it at this end. I still think it has something to do with your controller, not the FPGA. Regardless of wether or not the scan engine is incorporated into the bitfile, the error seems to think that the service is not running on the real-time controller.
04-13-2011 02:14 PM
Mr. Harris,
Below is a screenshot of what's installed on my cRIO. I also pm'ed you with a link to download my project. I tried re-deploying the chassis settings, rebuilding the startup app and testing again but I get the same error.
04-15-2011 12:20 AM
Brandon:
Thanks for that. I've got the compile running, and I'll try to get the real-time system and app set up as soon as possible. Just a couple more things;
What controller are you using? I assume it has a 9104 backplane, according to your project?
Have you tried doing this on another cRIO? I ask because I don't have immediate access to your specific hardware (I should be able to dig it up if we end up needing it, though), and I'm thinking that might be a potential factor if I can't replicate it on the RIO I have handy (a 9074).
Final question: did this start happening after you manually put the bitfile on the FPGA and set it to run as startup? Have you ever done it any other way? In my experience, nothing extra should be needed to get hybrid mode working (you just compile your FPGA VI and make sure the host VI calls the configure FPGA VI reference to run the VI before doing and FPGA or Scan Engine calls.
04-15-2011 06:12 PM
I am using a cRIO-9024 controller with a 9104 backplane as you said. I have not tried this on any other cRIOs. I don't have easy access to any others.
This has been like this every time I have tried making a real-time startup app. I haven't really need to try much up until now. I believe the code as I sent it to you downloads and runs the FPGA code when it starts.
04-24-2011 01:17 AM
Were you able to make any progress with this? I will probably be leaving this project soon and I was hoping to resolve this before I left.