Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Diagnostic Channels #26

Open
rdp137 opened this issue Apr 8, 2019 · 8 comments
Open

Diagnostic Channels #26

rdp137 opened this issue Apr 8, 2019 · 8 comments

Comments

@rdp137
Copy link

rdp137 commented Apr 8, 2019

I cannot figure out what the diagnostic channels are or how to add one. Would you please add instructions to the help?

@ryanvallieres
Copy link
Contributor

Hey rdp137;

In the latest release (best accessible from my fork), the diagnostic channels have been largely removed. They were originally planned to expose a variety of internal metrics and data about the performance of the UDP threading. They have since been deprecated as other features have taken priority. Unless you are on a very old release, it should be very difficult access the diagnostic channels option. These channels may return in the future, but other features will likely take priority for the time.

In short, they're an old feature that never got implemented and has been hidden away in the latest release.

@rdp137
Copy link
Author

rdp137 commented Apr 22, 2019

I have downloaded the latest version of the Custom Device. How do I use the transmit and New data channels? I am assuming transmit is a "trigger" line? if so does it just transmit when its non zero?

@ryanvallieres
Copy link
Contributor

Kind of. On the transmit packet page, there is a checkbox boolean called 'Always Transmit'. If this box is checked off, the transmit packet will send whenever it is possible to do so, pending the PCL rate and your decimation. If the 'Always Transmit' flag is not set, you need to set the 'Transmit' channel to a non-zero value to trigger a transmit. You will need to continuously set this flag, as it will reset when the packet is sent (or so I recall).

Just for your own information, a lot of the general use information regarding this custom device should have been installed alongside it. Assuming you're using VS2016, you should be able to find a .CHM file at this path:

C:\Users\Public\Documents\National Instruments\NI VeriStand 2016\Custom Devices\UDP-Custom-Device\Windows

At that location, there should be a file called UDP-Custom-Device.chm. This is a compiled help file that should have reasonably thorough documentation on each page of the UDP Custom Device, as well as some basic examples for how to setup transmit and receive packets.

@rdp137
Copy link
Author

rdp137 commented Apr 22, 2019

I am using VS2018. Ok thank you, I will check it out. I must be doing something wrong because the help files never appear in veristand when I build a custom device.

@ryanvallieres
Copy link
Contributor

Interesting. I developed most of the features for this custom device in LV2016 and test in VS2016. There may be some latent issues when building it for VS2017+.

I wouldn't be surprised if there were minor features (particularly dependent on the custom device pathing) that didn't work quite right.

@rdp137
Copy link
Author

rdp137 commented Apr 23, 2019

To be fair, I do not see the help in any of my custom devices now that I have updated to VS2018.

I am trying to test the buffered transmit feature of this custom device (I have been needing this functionality for a long time)

I cannot seem to be able to create a simple labview model to write bytes to the buffer. I cannot get it to deploy. I am trying to use the Pointer.Write.vi from the Veristand Data Library.
Do you have any suggestions on how I can test this functionality? Is it possible to fill the buffer you create directly from a Simulink Model?

@ryanvallieres
Copy link
Contributor

You should be able to create a buffer/pointer in any external custom device (as I did to test this feature) or model. Shouldn't matter what creates the buffer/pointer so long as the reference is exposed to the UDP Custom Device via mapped channel. If you are having issues creating the reference yourself, you can always have the UDP CD create the buffer internally and expose it to your own model.

@rdp137
Copy link
Author

rdp137 commented Apr 23, 2019

I dont think I have any issue creating the pointer. it's when I make a simple model that takes in the pointer and try write bytes to that location that makes my veristand sys def file refuse to deploy

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants