LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Will controls update from UI VI to FPGA VI if disconnected from type def?

Solved!
Go to solution

 I am using LabVIEW 2019 and I am using the "LabVIEW FPGA Control for CompactRIO Sample Project" template. I changed the type definition of a control, hoping that the instances of the control in the FPGA Main.VI and UI Main.VI would update automatically. Unfortunately, they didn't. They just appeared as their previous, unchanged, version, but gray-ed out, or faded.

 

To get around this, I individually disconnected each instance of the control in the FPGA Main.VI and UI Main.VI from the type definition, and then altered them individually (and I changed the type definition anyway as well.)

 

My worry is, if I run the VIs, would the control in the UI still be connected to the controls in the FGPA VI in that, changing the values of the control in the UI would be properly communicated to the FGPA?

 

I would appreciate any help. Thanks!

0 Kudos
Message 1 of 4
(1,997 Views)

@dbrother wrote:

 I am using LabVIEW 2019 and I am using the "LabVIEW FPGA Control for CompactRIO Sample Project" template. I changed the type definition of a control, hoping that the instances of the control in the FPGA Main.VI and UI Main.VI would update automatically. Unfortunately, they didn't. They just appeared as their previous, unchanged, version, but gray-ed out, or faded.

 

To get around this, I individually disconnected each instance of the control in the FPGA Main.VI and UI Main.VI from the type definition, and then altered them individually (and I changed the type definition anyway as well.)

 

My worry is, if I run the VIs, would the control in the UI still be connected to the controls in the FGPA VI in that, changing the values of the control in the UI would be properly communicated to the FGPA?

 

I would appreciate any help. Thanks!


No, they won't update precisely because disconnecting them from your typef... disconnects then from your typedef.  I'm not sure what you mean by "changing the values of the control in the UI would be properly communicated to the FGPA?"

 

So, it should've just updated.  Typedefs won't update until you apply changes or attempt to close the typedef.  (Clicking in the [x] button will trigger an update.)

 

One other common reason why a typedef gets grayed out is because there was some kind of fundamental change in the typedef where LabVIEW cannot predict what the value of a default value should be.  Then you have to use the Review and Update from Type Def to fix them.  LabVIEW gives it a "best guess" - and I've found it to be accurate more often than not - and then you can either confirm it's the right choice, or you can override it by choosing your own.

 

You probably just caused yourself some needless maintenance headaches.  If you have a previous version of your code with the typedefs still intact, I'd be tempted to just revert to it.

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
0 Kudos
Message 2 of 4
(1,932 Views)

Hi Bill, 

 

Thanks so much for your reply. I should have been clearer about what I meant behind, "changing the values of the control in the UI would be properly communicated to the FGPA".

 

What I meant is, when I'm eventually running the control system, if someone using the User Interface (UI) changes the values of this control, what is supposed to happen is that an event is triggered, and eventually the new values will be sent through the Real-Time VI to the FPGA VI, and the values of the control in the FPGA VI will be updated to the new ones so they can be used in the control algorithm. You probably know this already.

 

What I'm afraid of is that: because I disconnected each instance of the control from their type definition and then changed the nature of each instance of the control (just how many numerics are in the cluster and the labels of each numeric, but they still look identical with respect to each other), this prevents the process I outlined above from happening correctly.

 

So according to you, to prevent them from being greyed out in the future, I should use "review and update from type def". Where can I find this? (is it a drop down menu when I right click the greyed out control?)

0 Kudos
Message 3 of 4
(1,919 Views)
Solution
Accepted by dbrother

Stupid me for not elaborating.  See here.  (It's a link to the online LV 2018 help that shows how to solve these kinds of issues, and it includes how to Review and Update from Typedef.  I hope this is the kind of help you were looking for.  🙂

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
0 Kudos
Message 4 of 4
(1,888 Views)