ni.com is currently experiencing unexpected issues.

Some services may be unavailable at this time.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Probing without a wire?

Solved!
Go to solution

Hi!

 

Is it possible to probe values without a wire? For instance the output of a vi/sub-vi that is not connected to anything but could still be interesting to check out.

I would find it interesting to avoid creating indicators for every output of every functions (or opening every sub-vis that I want to check), just in case I need it while debugging an application.

 

I should probably add that I'm not using a lot of the Labview debug tools (mostly the highlighting, probes and breakpoints); but I know that there is way more to labview. I'm curious to know if there is any "know how" somewhere to train on these tools 🙂

 

Thanks in advance.

Best,

Vinny

0 Kudos
Message 1 of 13
(2,709 Views)

For the specific case of looking at the output of a VI not connected to a wire, just keep the front panel open. If it's not a re-entrant VI you can see the front panel indicators/controls update as your program runs. 

0 Kudos
Message 2 of 13
(2,703 Views)

@StevenD wrote:

For the specific case of looking at the output of a VI not connected to a wire, just keep the front panel open. If it's not a re-entrant VI you can see the front panel indicators/controls update as your program runs. 


Yep, I'm aware of that but it doesn't work for reentrant VIs, and if they're not, it can be very annoying if there a bunch of them to check and keep all windows open.

I'm also referring to built-in Labview functions (e.g. Queue Status and many other) that you can't open the front panel.

 

0 Kudos
Message 3 of 13
(2,700 Views)
Solution
Accepted by topic author VinnyAstro

@VinnyAstro wrote:

I would find it interesting to avoid creating indicators for every output of every functions


You don't need to create any indicators, just wire to the nearest structure (making sure you are not messing with execution order) and you'll be able to probe that wire.

 

You probably can even leave these wires in place because once debugging is disabled, they will most likely be ignored and treated as dead code.

Message 4 of 13
(2,663 Views)

@altenbach wrote:You don't need to create any indicators, just wire to the nearest structure (making sure you are not messing with execution order) and you'll be able to probe that wire.You probably can even leave these wires in place because once debugging is disabled, they will most likely be ignored and treated as dead code

You can wire it to the side of the structure, but it could slow down the dataflow if the wire is too long and/or thin. Cluster wires or array wires are usually OK but numerics, strings, etc are quite thin.

 

I use my High-throughput Probe Turbosinkto prevent these issues. Just wire it straight to the output of your VI and now you have a handy probe hook.

 

BertMcMahan_0-1650910000103.png

 

 

0 Kudos
Message 5 of 13
(2,644 Views)

@BertMcMahan wrote:

@altenbach wrote:You don't need to create any indicators, just wire to the nearest structure (making sure you are not messing with execution order) and you'll be able to probe that wire.You probably can even leave these wires in place because once debugging is disabled, they will most likely be ignored and treated as dead code

You can wire it to the side of the structure, but it could slow down the dataflow if the wire is too long and/or thin. Cluster wires or array wires are usually OK but numerics, strings, etc are quite thin.

 

 


Let's not troll people looking for answers on a technical forum (Mr. Jenkins).

0 Kudos
Message 6 of 13
(2,641 Views)

@BertMcMahan wrote:
I use my High-throughput Probe Turbosink™ to prevent these issues.

Why re-invent the wheel when we already have the JKI wire nuts??? 😄

 

Message 7 of 13
(2,614 Views)

@StevenD wrote:

 


Let's not troll people looking for answers on a technical forum (Mr. Jenkins).


The OP seemed comfortable enough with LabVIEW that I assumed he'd catch the joke. I wouldn't have done it if he seemed like he was SUPER new to LV. I was hoping he'd get a small laugh and move on. And technically, the VI I provided will work for what he's looking for. Not to mention, examining the block diagram of the "Turbosinks" should be pretty telling 🙂

0 Kudos
Message 8 of 13
(2,597 Views)

@BertMcMahan wrote:
I was hoping he'd get a small laugh

I did haha. But I have to admit I got confused with the turbosink, I don't have enough xp for these inside jokes 😉

 

Ok then, I guess my answer is no: Can't probe without a wire ☹️ 

Wiring to the closest structure can be the easiest solution indeed, but I still can't do it during execution time

 

Thanks for your answers 🙂

0 Kudos
Message 9 of 13
(2,544 Views)

@VinnyAstro wrote:

@StevenD wrote:

For the specific case of looking at the output of a VI not connected to a wire, just keep the front panel open. If it's not a re-entrant VI you can see the front panel indicators/controls update as your program runs. 


Yep, I'm aware of that but it doesn't work for reentrant VIs, and if they're not, it can be very annoying if there a bunch of them to check and keep all windows open.

I'm also referring to built-in Labview functions (e.g. Queue Status and many other) that you can't open the front panel.

 


It does work for reentrant VIs. Just put a breakpoint in it and every instance will open as it runs. 

 

So you want to probe all indicators of reentrant VIs but not have the VIs open? There is no way to probe anything if the VI is not opened. 

 

Outputs of sub-VIs cannot be probed without creating a wire. There have been times when I would have liked to just watch the output of e.g a node like Queue status without having to create wires. Perhaps you could make a feature request for that. Perhaps a probe window that just displays the inputs and output values of a node.

 

I'm sure there's a comprehensive list of debugging techniques somewhere but I cannot find a great one now. That might help here, too see what is available and learn to use that.

 

Have you tried the Sub-VI Node Setup > Show front panel when called? It opens the FP when that node is run and you can change input values and run before you release the node. Its an often forgotten feature that can be useful sometimes.

 

 

Certified LabVIEW Architect
Message 10 of 13
(2,532 Views)