This content is not available in your preferred language.

The content is shown in another available language. Your browser may include features that can help translate the text.

NI 9361 Will Not Enable Differential or Pull-Up Resistor Mode

Updated Dec 28, 2023

Reported In

Hardware

  • NI-9361

Driver

  • NI-DAQmx

Issue Details

  • Why can't I set the Pull-Up resistor mode for my 9361 with more than one channel?
  • Why can't I set the terminal configuration on my 9361 for more than one channel?

Solution

This issue has been resolved in NI-DAQmx 16.0.1 and later. You can obtain this update through NI Update Service or you can download this driver at NI Downloads.  
 
Installing the DAQmx 16.0.1 Core Run-Time is the minimum installation you will need. However, if your application requires Real-Time support, you will need to install NI-DAQmx 16.0.1 Configuration Run-Time. Keep in mind that installing the full NI-DAQmx 16.0.1 driver will provide the full ADE support of NI-DAQmx 16.0.1 and that if you are using a Real-Time CompactDAQ controller you will need to deploy the updated driver to your cDAQ controller.

Upgrading the NI-DAQmx driver may not be a viable solution for all of our customers, so a workaround is available below to add to your code if you must continue using a version of NI-DAQmx that was released prior to 16.0.1.

The workaround consists of performing the following steps on each channel individually (typically in a for loop):  
  1. Create a task for the single channel. 
  2. Commit the Terminal Configuration and/or Logic Level Behavior properties.
  3. Unreserve the task.
  4. Stop the task.
  5. Move on to the next channel, until each channel has gone through these steps. 
After committing the settings to your hardware per terminal, the properties will be asserted on each channel when you run a DAQmx task that includes all terminals and performs your acquisition as desired.

The VI Snippet below demonstrates how to implement this workaround for a Count Edges measurement for ctr0 and ctr1. Note that this code needs to be repeated for each counter channel that you want to acquire data from.



Once you are finished adjusting the snippet above to represent your desired measurement type, physical channel, terminal, and terminal configuration and/or logic level behavior, it can be migrated into a subVI. This will allow you to smoothly add the workaround to your existing code where needed.

    Additional Information

    The root cause of this issue is a bug in the NI-DAQmx driver. Your system will be affected if:  
    • You are using a version of NI-DAQmx prior to 16.0.1. Please refer to KB 4W1GE4NC  if you need guidance determining what version of the NI-DAQmx driver you have on your system. 
    • You are setting one or both of the following properties for more than one channel: