NI-9262 Channels Overwritten to 0 V

Updated Jun 8, 2023

Reported In

Hardware

  • NI-9262

Software

  • LabVIEW FPGA Module

Driver

  • NI CompactRIO
  • NI CompactRIO 17.0

Issue Details

I am using two FPGA I/O nodes in different loops to command outputs on my NI-9262. Channels written to or from one of my FPGA I/O nodes seem to be set to the desired value while all of the output channels written to in another FPGA I/O node appear to be overwritten to 0 V.

Solution

This is known issue with the NI-9262 when the Calibration Mode is set to Calibrated, tracked under 739019. It has been fixed in NI-compactRIO 19.5 . If it is not possible to upgrade the driver version. Please see the workaround below.
 

Switching to Raw Calibration Mode

You can work around this issue by setting the module in raw calibration mode. When set to Raw, users will have to convert their values in and out of the FPGA I/O nodes. 
  1. Right-click the NI-9262 in the project and select Properties.
  2. Select Raw in the Calibrated Mode drop down.

 


Write to every channel in every FPGA I/O node

Whenever an FPGA I/O node is used, write to every channel. You can then use variables to pass data values from other loops. One option to accomplish this is shown below: 

  • Create a new loop that continually updates the channel output values from an FPGA Control or a global variable. In the main code, update the variable value instead of using an FPGA I/O Node. 

 

User-Controlled IO Sampling

You can use User-Controlled IO Sampling to work around this issue. Follow the steps below to access and use the NI-9262 User-Controlled IO sample project.

  1. Open LabVIEW and select Help>>Find Examples to open the NI Example Finder
  2. From the Browse tab select Hardware Input and Output>>CompactRIO>>Module Specific IO>>Analog Output>>NI-9262 User-Controlled IO Sampling.lvproj

Additional Information

This behavior does not appear on NI-9263 or NI-9260 modules. In this known issue, if a channel is not included in the FPGA I/O node, it defaults the output value to 0 V, which is illustrated in the picture below.