LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How to probe wires in a subIV

Hi

I'm a bit new to LabVIEW, so I'm allowed to ask stupid questions.

I'm running a biggish application in LabVIEW, and of course some of the bits run in subVIs. I find that I can't probe the wires of some of the subVIs, or set breakpoints. For I while I thought that was just the way things were, but in some of the subVIs, it does work.

What am I missing?

I'm running LabVIEW 7.1
0 Kudos
Message 1 of 12
(4,248 Views)
Exactly, what kind of subVI can't you probe?

You can set, in VI properties, Allow debug, and also if a VI is reentrant you can't debug it!

Hope it can help...

graziano
0 Kudos
Message 2 of 12
(4,249 Views)
 

 


@Graziano wrote:
You can set, in VI properties, Allow debug, and also if a VI is reentrant you can't debug it!

Actually, newer versions of LabVIEW allow debugging of reentrant VIs. See:

https://www.ni.com/docs/en-US/bundle/labview/page/suggestions-for-using-execution-systems-and-priori...

0 Kudos
Message 3 of 12
(4,241 Views)
Hi Graziano

Thank you very much for you help. I found that my subVI was re-entrant.

You ask "Exactly, what kind of subVI can't you probe?" What kinds of subVI's are there.

Regards

Niel
0 Kudos
Message 4 of 12
(4,231 Views)

Hi niel_malan,

      Re: no probing reentrant VIs under LV 7.1 - I feel your pain!  When especially desperate, I pump the value-of-interest into an OK Dialog.  Of course it's easier to debug with only 1 instance running, but if multiple instances are necessary it may be possible to put a case around the dialog so only a specific instance will write to the dialog - or have the dialog include some instance-specific identifier.  If you use this Dialog method much, it's also helpful to include some info to identify what VI the Dialog is located in (to help remove it later Smiley Wink-.)

First, though, look around the diagram for some non-rentrant SubVI that the value is wired-to.  It may be possible to see the value-of-interest by simply examining the controls of a Sub-VI.  You can even build a special-purpose sub-VI just for this.  Don't forget about breakpoints as a tool for trapping values.

Cheers!

"Inside every large program is a small program struggling to get out." (attributed to Tony Hoare)
0 Kudos
Message 5 of 12
(4,205 Views)
 

 


@altenbach wrote:
 


@Graziano wrote:
You can set, in VI properties, Allow debug, and also if a VI is reentrant you can't debug it!

Actually, newer versions of LabVIEW allow debugging of reentrant VIs. See:

https://www.ni.com/docs/en-US/bundle/labview/page/suggestions-for-using-execution-systems-and-priori...




But still a Reentrant SubVI of Subroutine priority cant be debugged. Smiley Wink

- Partha ( CLD until Oct 2027 🙂 )
0 Kudos
Message 6 of 12
(4,190 Views)


@parthabe wrote:
But still a Reentrant SubVI of Subroutine priority cant be debugged. Smiley Wink

A subVI with subroutine priority cannot be debugged, period. Reentrant or not reentrant. 🙂
Message 7 of 12
(4,188 Views)

Thats what I implied, Altenbach. Smiley Wink

What I meant to say was, even if it is Reentrant VI of version 8.5, it still cant be debugged if its Priority was set to Subroutine.

- Partha ( CLD until Oct 2027 🙂 )
Message 8 of 12
(4,178 Views)
Hi Altenbach and parthabe,
   Thanks for your replies, maybe I've found new reasons to switch to newer labView... even if I'm skeptical about this feature'I mean, when you probe a Reentrant subVI, you are probing one instance of it... or you can open all instances called in different windows?

   Have a nice day!

graziano
0 Kudos
Message 9 of 12
(4,151 Views)


@Graziano wrote:
I mean, when you probe a Reentrant subVI, you are probing one instance of it... or you can open all instances called in different windows?

Yes, you can open and probe every instance seperately. They will be indicated as "clones" in the title bar of the window.
Message 10 of 12
(4,141 Views)