NI-9262 Channels Overwritten to 0 V

Updated Jul 11, 2019

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 a known issue with the NI-9262 when the Calibration Mode is set to Calibrated. Several different workarounds are detailed 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 is known issue number 739019. 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.