VeriStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Best starting point for custom workspace objects?

Solved!
Go to solution

Dear forum

 

I am trying to find a working starting point for designing all my custom workspace objects for Veristand. The problem is that the current template doesn't seem to work:

Template: http://www.ni.com/tutorial/9989/en/

Forum Discussion: https://forums.ni.com/t5/NI-VeriStand/Custom-Workspace-Object-quot-Forgets-quot-Its-Channel-Mapping/...

 

I found an older template, some of its components seem to be deprecated though:

http://www.ni.com/example/11123/en/

 

The second one looks more like what I would need, I have dozens of values which I want to place on a front panel. It seems this was not included in VS after the 2014 Version. Where can I find an updated template that works? Or a documentation which explains this interface?

 

Thanks in advance,

Raphael

0 Kudos
Message 1 of 5
(2,902 Views)

The first link you posted is most likely the most viable way to get started with custom workspace controls. One thing I do not like about the "no-brain reference template" in the last link you provided is that it tries to abstract how communication between your control(s) and the VeriStand engine works, while you need to understand how it works. Sure it takes longer, but once you got it right, you can quickly build any custom control.

 

You can also have a look at some of the examples on the VeriStand Add-Ons Github page

https://github.com/NIVeriStandAdd-Ons?utf8=%E2%9C%93&q=workspace

 

--Eric

Eric M. - Senior Software Engineer
Certified LabVIEW Architect - Certified LabVIEW Embedded Systems Developer - Certified LabWindows™/CVI Developer
Neosoft Technologies inc.

Message 2 of 5
(2,882 Views)

Hi Eric

 

thanks for your reply! I'll have a look at the github, thanks a lot. I completely agree with you that I need to understand it. But there is no documentation that would enable understanding it, and there seems to be an issue with the only current example provided:

 

The problem with the first link is that in the forum post someone said it doesn't work like that, and everyone seems to agree. Do you disagree with the point about the label vs. the path?

 

The second link I like because it's documented better and does what I need. I just don't know if it will work because it seems to be constructed with elements of LabView which are discontinued (FP.Open). A quick test on my system (without target) looked promising.

 

On top of that the custom objects I managed to build from the first link do not work as advertised, and there is an obscure error after deploying the third screen (the element from the first screen suddenly appears behind the elements of the second screen).

 

Again, thanks for your help!

Raphael

0 Kudos
Message 3 of 5
(2,877 Views)

As far as I remember the first link works the way it is supposed to. The code does not remember the Output/Input channels, that's clearly a mistake from the example designer but you can easily tell by reading the example.

If you want to persist information you must save them to the Custom Data variant data, and you have to read that data upon initializing the control.

 

Hope this makes it more clear ^^

Eric M. - Senior Software Engineer
Certified LabVIEW Architect - Certified LabVIEW Embedded Systems Developer - Certified LabWindows™/CVI Developer
Neosoft Technologies inc.

Message 4 of 5
(2,871 Views)
Solution
Accepted by topic author raphael.wittwer

Oh, and the FP.Open is deprecated since a while but it works. Turn it into a Front Panel.Open method (instead of a property) if you want to use the updated function.

Eric M. - Senior Software Engineer
Certified LabVIEW Architect - Certified LabVIEW Embedded Systems Developer - Certified LabWindows™/CVI Developer
Neosoft Technologies inc.

Message 5 of 5
(2,869 Views)