08-31-2023 02:44 AM
Hi,
I have an application working heavily with subpanels. I have a main, almost full screen subpanel which could load different, application specific front panels. One of these front panels has a listbox on the left and its own subpanel which again could load different front panel based on the listbox selection. So in short there are subpanel in subpanels as well. All the VIs we ever display in a subpanel started when the user starts the application and stopped when the app is closed. When they are not displayed they run in the background.
I have noticed a very strange behaviour: from time to time the indicators on the subpanel stop refreshing. This means that however their value should change they dont display that anymore just displaying the previous value forever. I have probed the wire right before the indicator terminal and the value on the wire does not match the value displayed on the front panel.
If I load another subpanel and then load the problematic back then I see the right value, but the problem stays so new values wont get displayed until I reload the subpanel. "Latch when released" pushbuttons are not returning to their default visual after pressing them, but they do what they have to do and once the subpanel is reloaded the get back to normal.
I cant reproduce the problem on purpose, it seems happening randomly. Once the problem occurs, it stays and never disappears. First I thought that somehow the Defer Panel Update property of the VI is asserted, but its not.
I use NXG style controls and indicators on our GUI front panels.
Do you guys have any idea what could cause such a behaviour and how can I get rid of it? Is there any known bugs could cause a problem like this?
Thanks.
09-02-2023 09:29 AM
From your description, it sounds like you have a complex program, possibly with hundreds of sub-VIs (or a Block Diagram that spans many "screens" in both the horizontal and vertical dimension), with the possibility of subtle problems with Data Flow that the person with the most familiarity with the LabVIEW code (that would, I presume, be you) cannot figure out.
Since you haven't posted all of the code in a format that most of us can open, my advice would be to hire an expert LabVIEW Consultant and do a "Code Walkthrough" with her (or him). You may well find yourself explaining some non-obvious piece of coding and saying "Oops, I forgot to ". [I've used this method when I'm stuck, drafting one of my colleagues who then, typically, say "Why did you do it that way, isn't this way easier to understand?", and, usually, they are right ...].
Bob Schor
09-02-2023 02:13 PM
@1984 wrote:
I have noticed a very strange behaviour: from time to time the indicators on the subpanel stop refreshing. This means that however their value should change they dont display that anymore just displaying the previous value forever. I have probed the wire right before the indicator terminal and the value on the wire does not match the value displayed on the front panel..
Very hard to troubleshoot, but there seems to be an issue with the UI thread here. LabVIEW is very smart to not overload the UI thread with unimportant things that the user never sees, but maybe it makes a mistake in your case (gasp!).
Maybe you want to try some of these suggestions. No guarantees.