How Do I Use Differential Mode on an NI-9205, NI-9206 or NI-9209 On My CompactRIO?

Updated Jan 14, 2019

Reported In


  • NI-9205
  • NI-9206
  • NI-9209

Issue Details

I am trying to create an application using a NI-9205/NI-9206/NI-9209 in a CompactRIO. The NI page specifies that it has 32 single-ended channels or 16 differential channels. I have selected differential mode for all of the NI-9205 channels but I am still able to use I/O nodes for all 32 channels in my code. How is this possible?


Each channel on the NI-9205/NI-9206/NI-9209 has the ability to return a single-ended reading or a reading as part of a differential pair. This is configured through the module properties in the LabVIEW project as shown here:

For each Analog Input line (AI0 - AI31), there is a Terminal Mode drop-down menu allowing you to choose how the measurement is referenced. For guidelines how to properly reference an analog measurement, refer to the table taken from Developer Zone Tutorial: Field Wiring and Noise Considerations for Analog Signals

For the Module Properties page, differential mode (DIFF) can only be selected for channels AI0-AI7 and AI16-AI23. When these channels are selected to be in differential mode, the channel number plus eight (AI"x" + 8) is the corresponding terminal it will be referenced with. Thus, differential mode cannot be selected for channels AI8-AI15 and AI23-AI31 because these channels correspond with the negative signal input. See pages 15-16 in the NI 9205 Getting Started Guide for a reference for the differential terminal pairs.

To get a value for the differential measurement, you need to take a reading from the I/O Node corresponding to the positive signal. For example, when measuring a differential signal with AI0 and AI8, the hardware will measure the difference between the AI0 (AI+) and AI8 (AI-) signals, and output this measurement to the I/O Node corresponding to AI0. Only the properties for the positive channel (in this case AI0) need to be configured; the settings for the negative channel (AI8) can be ignored.

Due to improper grounding, a reading from AI8 (AI-) while wired in differential mode will likely produce errant data. However, if your circuit is wired in a RSE or NRSE mode, you can use the I/O Node for AI8 to read the single-ended data.


Not Helpful