Enable NI-845x I²C Pullup Resistance

Updated Apr 21, 2023

Reported In

Hardware

  • USB-8452
  • USB-8451

Software

  • LabVIEW

Driver

  • NI-845x

Issue Details

How do I activate the I²C pullup resistor in my NI-845x serial device?

Solution

For NI-8452:

Use an NI-845x Device Property Node to select the I²C Pullup Enable property. Write a true or false boolean to enable or disable, respectively.

 

For NI-8451:

With this device you have to use an external pullup resistor since NI-8451 doesn't support to set I²C Pullup Enable to true.

 

For more information about this property, consult the NI-845x Hardware and Software Manual on section 3-10 for 8451 and section 3-18 for 8452.

Additional Information

The I²C bus drivers are “open drain”, meaning that they can pull the corresponding signal line low, but cannot drive it high. Thus, there can be no bus contention where one device is trying to drive the line high while another tries to pull it low, eliminating the potential for damage to the drivers or excessive power dissipation in the system. Each signal line has a pull-up resistor on it, to restore the signal to high when no device is asserting it low. Read more about the I²C bus, here: External Link: I2C at the Hardware Level