Is It Possible to Read the Value of Analog or Digital Output Channels in LabVIEW NXG?

Updated Jun 27, 2018

Reported In




  • NI-DAQmx

Issue Details

In my application, I am writing some values out on an analog or digital output line. How do I read the value being output on the line without having to manually connect wires from the output channel back to an input channel?


The technique used to accomplish this task differs depending on whether the output of interest is analog or digital.

Reading Back Analog Output
While you cannot read this channel with the default settings for a DAQmx Physical Channel, you can read the Analog Output in relation to the Analog Output Ground by enabling the selection of Internal Channels as shown in Figure 1.

Figure 1. DAQmx Internal Channel Configuration in LabVIEW NXG.

1. Place a DAQmx Physical Channel Control/Constant in your program. (All Controls » I/O » DAQmx Name Controls » DAQmx Physical Channel)

2. Click on the Constant and then navigate to the configuration pane

3. In the configuration pane, make sure to select Internal Channels or All under Category.

4. Now select the channel _aoX_vs_aognd where X is the desired output channel.

You are now able to select any of these internal channels as a voltage that you are able to read. You can also select the various other physical channels that you want to read by clicking Browse and selecting the desired lines.

Figure 2 shows a VI Snippet of an example of monitoring a continuous analog output.  The code is a modification of a DAQmx shipping example for analog generation designed to also read the output.
Figure 2. Read Analog Output using Internal Channels.

Reading Back Digital Output

With digital I/O lines, you can use a DAQmx Read to read the value back from the same output channel without having to internally route signals.  Figure 3 shows a VI Snippet that is a modified shipping example for digital generation to also read the output.

Figure 3. Reads back Digital Output.


Not Helpful