I need to use CAN (PXI 8513) with Veristand (2011 SP1). I created a new project, defined a CAN port, a can database, import frames ... when i deploy my project on the target i get the following message : Error 1003 vi is not executable .... C:\ni-rt\NI VeriStand\XNET.llb\NI-XNET.vi.
I already search in the forum :
So i tryed diffrent things, at first as described in 1) I download the NI CAN Frame to channel conversion library installed it on the host, and on the RT target. On the target i have following drivers : NI CAN 2.7.4, NI XNET 1.5.1, Veristand 2011.1, CAN Frame to channel conversion library conversion library 1.0.3 . I get the same error.
Then as described in 2) i created a new system definition file. Tryed to uninstall and reinstall the NI XNET driver and .... i alway get the same error.
I also tryed to use example database instead of mine ... but i get the same error .. even if i don't import frames ...
What am i doing wrong ?? Help !
I have seen this error several times, and have tried several things to fix it. My conclusion is that the fix is to install NI-RIO onto the target which makes no sense to me.
I just did a test to confirm this. Here is what I did to recreate the issue:
1. Reformat the target in MAX to start from scratch with the software install.
2. Add/Remove software and just select VeriStand and let it pull in it's dependencies. If you have NI-RIO installed on your host, make sure you deselect NI-RIO from the installation in order to recreate the error.
3. After the install, you should verify that NI-XNET is installed on your target and NI-RIO is not.
4. Create a new VeriStand project and add a CAN port with a CAN database (No need to add frames to recreate the error)
5. First time you deploy the project you will get an error 7 (See first attachment)
6. To fix this error, you need to open the system definition and make some change (I just added a user channel), any change will work.
7. Now when you deploy the project, you will get the error 1003. (See second attachment)
8. To get rid of this error, you need to use MAX to install NI-RIO to the target (You will need NI-RIO installed on your host)
9. Now when you deploy your VeriStand project it should work.
As a check I then unistalled NI-RIO from the target and the error comes back. I'm not sure why NI-RIO affects a project that doesn't require FPGA, but this appears to fix it.
Hmm, I know why this is happening. I reporeted it to R&D in CAR 396490
It will have started with NIVS 2011, because we added a feature to load a bitfile before initializing CAN ports to make the 986x modules work with NIVS (which require a bitfile loaded). However, we hard linked to the NI-RIO driver instead of dynamically linking to it. So even if you don't want to load a bitfile... we still try to find the NI-RIO driver.
Quick fix for us. Hopefully we can get it into a future revision of NIVS. Until then... install NI-RIO.