LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Type-defined Shared Variables on a Real-Time target cause Remote Panel to fail

Solved!
Go to solution

Here's an odd one. We're creating a customer solution using a CompactRIO, and they wish to use Remote Panels to remotely view and interact with the executable. This is fine, we're able to create this, but one thing we've noticed is:

If we build and deploy our Real-Time code to the CompactRIO with any Shared Variables that are linked to a type-definition, the executable will not run. Indeed, it is reported by the Remote Panel browser utility as a broken VI.

 

Severing the Shared Variable link to the type-def, and rebuilding the executable, fixes the issue. Bizarre.

 

Anyone else seen this before?

Thoric (CLA, CLED, CTD and LabVIEW Champion)


Message 1 of 11
(3,232 Views)
Solution
Accepted by topic author Thoric

Hello Thoric,

 

I think I have spotted a CAR already assigned for this:

 

http://www.ni.com/white-paper/13235/en

 

#292012

 

Looking at our notes this should be fixed in the next release.

 

 

Nick
Message 2 of 11
(3,210 Views)

The quoted "known issue" suggests 2 workarounds (in AND or in OR? it's not clear). Anyway workaround #1 alone (disconnect SV from typedefs) is enough for my application, while #2 alone (don't disconnect typedefs during build) doesn't help at all.

Paolo
-------------------
LV 7.1, 2011, 2017, 2019, 2021
0 Kudos
Message 3 of 11
(3,206 Views)

Yea,

 

I think that should read 'enable disconnect type definitions' - that would make sense.

 

Then either or of those steps would workaround the issue.

Nick
0 Kudos
Message 4 of 11
(3,201 Views)

Thanks Nick, but if I don't disconnect all shared variables, the program doesn't start whether I disconnect typedefs during build or not

Paolo
-------------------
LV 7.1, 2011, 2017, 2019, 2021
0 Kudos
Message 5 of 11
(3,198 Views)

Ah sure, looks like you will need to manually disconnect then, I expect it depends on the versions of LabVIEW and NI-RIO.

Nick
0 Kudos
Message 6 of 11
(3,195 Views)

Thanks for finding this Nick. I find it extraordinary that there will be no patch made for 2011!? Disconnecting all our type-defs in the project is a massive pain, it makes maintenance an impossibility. Disconnecting type-defs in the build appears not to work.

Thoric (CLA, CLED, CTD and LabVIEW Champion)


0 Kudos
Message 7 of 11
(3,191 Views)

One other workaround is to make the shared variable a string typr and just flaten and unflaten when you read and write this shared variable.  I have done this before although it makes debugging using the variable manager a little harder.

Paul Falkenstein
Coleman Technologies Inc.
CLA, CPI, AIA-Vision
Labview 4.0- 2013, RT, Vision, FPGA
Message 8 of 11
(3,183 Views)

@falkpl wrote:

One other workaround is to make the shared variable a string typr and just flaten and unflaten when you read and write this shared variable.  I have done this before although it makes debugging using the variable manager a little harder.


That's a neat trick for avoiding the use of type-defs in the shared variable engine Smiley Happy

Thoric (CLA, CLED, CTD and LabVIEW Champion)


0 Kudos
Message 9 of 11
(3,180 Views)

The other buty of this truck is that even with basic types like integers, you dont have to change the shared variable if you decide to change the associated type (ie I weitched from int to float), the shared variable doesnt care.  additionally you can even pass multiple types over an single variable (although when you unflatten it you have to know whet type to unflatten to).

 

Paul Falkenstein
Coleman Technologies Inc.
CLA, CPI, AIA-Vision
Labview 4.0- 2013, RT, Vision, FPGA
0 Kudos
Message 10 of 11
(3,176 Views)