VeriStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Reading Channels with a Custom Device

Solved!
Go to solution

I'm trying to build a custom device for my first time but I can't seem to find any example or helpful documentation on how I would read channel data/information into the RT Driver.vi as well as modify them for other part of my project to read. And if possible, I'd like to read and write arrays. (else I imagine I'd just make a multiple channels).

From what I can tell, I think I need to use the Device Input/Output FIFOs and initialize the channels in the Initialization VI, but the documentation NI supply doesn't seem very concise for me.

0 Kudos
Message 1 of 4
(2,770 Views)
Solution
Accepted by topic author James9

Hi,

I always recommend to start with this reference documentation - NI VeriStand Custom Device Developer’s Guide. It's still 99% valid.

BTW you're trying to R/W channels inside or outside of the CD scope?

CLA, CTA, CLED
Message 2 of 4
(2,733 Views)

Will check that out!
I plan on having another custom device to be able to R/W to the same channel, but for now just within its scope is fine. I imagine I would need to make for a way to queue up the R/W requests to a single process to handle multiple devices.

0 Kudos
Message 3 of 4
(2,722 Views)

Usually, the CD should expose data via channels so they are available for any other part of the system. Then, if you need to transfer data between multiple CDs (or multiple instances of the same CD) you simply use channel mappings implemented on higher-level of the VeriStand. As long as every CDs runs as a isolated process with it's private memory you need to either overcome the channel scope access protection that NIVS naturally has or implement some kind of pipe in between the CDs.

CLA, CTA, CLED
Message 4 of 4
(2,717 Views)