LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

NI ETS hangs when dll is set to run on startup

I made a dll using LabWindows/CVI for NI ETS Real Time System. The dll works when run from the LabWindows/CVI IDE. I used the RTFileCopyUtility to set the dll to run on startup. On the next reboot the RT PC hangs during boot up. The last thing printed to the screen is "System Web Server Started". Normally I would expect "Welcome to LabVIEW RealTime 10.0" next on the screen. The program I made only takes 10 seconds to complete its execution. I tried rebooting the machine several times and waited around 15minutes each time before deciding that it is hung.

 

Relatedly, I am unable to disable the startup dll. I booted into the "Desktop PC Utility USB". I selected option 5 "Disabled Startup applications". Then I tried to reboot the system. The RT PC still hangs as the same location.

 

I'm using LabWindows/CVI 2010 SP1. My RT machine is a Desktop PC running NI ETS 2010 with VISA5.0.

0 Kudos
Message 1 of 3
(1,912 Views)

Hi schddc,

 

Can you try to deploy through the method given in this guide?

 

Getting Started with the LabWindows /CVI Real-Time Module

http://www.ni.com/pdf/manuals/374686e.pdf

 

Specifically, using the Run»Install Program to Real-Time Execution Target

 

Also, can you ensure you are configuring this target correctly?

 

Best,

Claire C.
AppSW Staff Product Support Engineer
National Instruments
CLD|CTD
0 Kudos
Message 2 of 3
(1,850 Views)

I had previously tried it but I tried again. When I execution that action I get the prompt "Program successfully deployed... Reboot now?". Before rebooting I FTP'ed to the system to  check out the \NI-RT\CVI folder. It contained my application and the dependent library, so both were automatically copied to the system.

 

The same issue occurs. The system initializes the network adapter, then the web server, and it hangs. I never see the text that NI-VISA is started.

 

For reference, the software I configure on the system is NI-VISA 5.0 (which auto selects a lot of dependent software) and LabWindows/CVI Run-Time Engine for RT 10.0.0.

 

It seems like my program is trying to execute before NI-VISA is started. The default boot sequence seems to be

  1. Initialize Network
  2. Start Web Serer
  3. Welcome to LabVIEW RT 10
  4. NI-VISA Server started

When I install my application the system hangs between items 2 and 3.

 

For a test I created a RT dll which only printed hello world.

 

// some includes

void CVIFUNC_C RTmain (void) { if (InitCVIRTE (0, 0, 0) == 0) return; /* out of memory */ printf("Hello World\n"); CloseCVIRTE (); }

 

I tried Run->Install Program to Real-Time Execution Target. Boot sequence printed out changed to

  1. Initialize Network
  2. Start Web Serer
  3. Hello World
  4. Welcome to LabVIEW RT 10
  5. NI-VISA Server started

It is possible to delay the execution of a RT program until NI-VISA is started?

0 Kudos
Message 3 of 3
(1,840 Views)