From 04:00 PM CDT – 08:00 PM CDT (09:00 PM UTC – 01:00 AM UTC) Tuesday, April 16, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How to identify a specific sub-VI?

Solved!
Go to solution

Hello alltogether,

 

my wonderfully-working VI just started giving me a strange error about channels being in use and so on. I don't really get why and LabView seems not to help me.

 

The error window tells me that the error happens in DAQmx Start Task.vi:3. So far, so well, how can I know which of the task starts I use is the third one?

0 Kudos
Message 1 of 4
(2,315 Views)

ReBoot,

 

i am sure that finding the location WHERE the error occurs does not help you by any means. You should find out WHY the error occurs. Since you said something about "already in use", i asume that you are using several tasks in your application and have conflicts in the tasks. So please describe in more detailed way

- what hardware are you using?

- what channels have you defined?

- post your code.

 

hope this helps,

Norbert 

Norbert
----------------------------------------------------------------------------------------------------
CEO: What exactly is stopping us from doing this?
Expert: Geometry
Marketing Manager: Just ignore it.
0 Kudos
Message 2 of 4
(2,302 Views)

Erm, well, that's kind of a shame, but the reason was simple: The DAQmx Test Panel was running. Most likely, it used the same hardware channel.

 

Yet, I have an excuse. The Linux KDE desktop was too dumb to show me that the Test Panel app was running (no entry in the taskbar) and I had alot of maximized windows open so I just did not know that it was running.

 

Still, can you tell me how to identify a specific sub-VI? In this case, I'd seen that the VI wants to read from the channel I've used in the Test Panel before.

0 Kudos
Message 3 of 4
(2,299 Views)
Solution
Accepted by topic author ReBoot

The naming xyz.vi:<number> is indicating that the vi xyz is reentrant.

In fact, DAQmx Start Task.vi is reentrant and you use at least 3 of them in your application.

In this case, you will not be able to use the find function in order to find the DAQmx Start Task.vi:3 in your code. But since i asume that you do not use too many Start Tasks, you might find it by checking which instance is which VI (so search for Start Task and open it's clone).

I am not sure if this works out for your needs, but you can give it a try.

 

hope this helps,

Norbert 

 

Norbert
----------------------------------------------------------------------------------------------------
CEO: What exactly is stopping us from doing this?
Expert: Geometry
Marketing Manager: Just ignore it.
0 Kudos
Message 4 of 4
(2,293 Views)