Overview

The INA219 is a high-side, bidirectional current and power monitoring IC with an I2C interface manufactured by Texas Instruments. It monitors both shunt voltage drop across an onboard precision current sense resistor (0.1 Ω0.1\text{ }\Omega) and bus supply voltage up to 26 V DC.

It includes a 12-bit ADC, a programmable multiplier for onboard current (in Amperes) and power (in Watts) calculations, and programmable averaging filtering. It is standard in solar monitoring, battery fuel-gauge systems, and power-metering projects.

Quick reference

Logic supply (VCC)3.0 V to 5.5 V DC
Target bus voltage range (VIN+)0.0 V to +26.0 V DC
Max current range (Standard breakout)±3.2 A\pm 3.2\text{ A} (with 0.1 Ω0.1\text{ }\Omega shunt resistor)
Max shunt voltage±320 mV\pm 320\text{ mV} (PGA gain /8)
Resolution12-bit (0.8 mA0.8\text{ mA} current resolution, 4 mV4\text{ mV} bus voltage resolution)
I2C slave addressBase 0x40 (selectable 0x40 to 0x4F via jumpers A0, A1)
Operating current1 mA active, 6 µA power-down

Pinout

Standard INA219 Breakout Board Header & Screw Terminal

Pin / TerminalNameTypeDescription
Screw Terminal 1VIN+High-Side Power InputConnect to Positive Power Supply Output / Battery
Screw Terminal 2VIN-High-Side Load ConnectionConnect to Positive Load terminal
Header Pin 1VCCPowerLogic supply (+3.0 V to +5.5 V DC)
Header Pin 2GNDPowerLogic Ground (0 V)
Header Pin 3SCLDigital InputI2C Serial Clock input
Header Pin 4SDADigital I/OI2C Serial Data line
Header Pin 5Vin+PowerHigh-Side Voltage Input (bridged to terminal VIN+)
Header Pin 6Vin-PowerHigh-Side Voltage Output (bridged to terminal VIN-)

Specifications

ParameterSymbolMinTypMaxUnitConditions
Logic Supply VoltageVCCV_{CC}3.03.3 / 5.05.5VDC
Bus Operating VoltageVBUSV_{BUS}0.026.0VVIN+V_{IN+} to GND
Max Shunt Voltage RangeVSHUNTV_{SHUNT}-320+320mVVIN+VINV_{IN+} - V_{IN-}
Bus Voltage Offset ErrorVOS,BUSV_{OS,BUS}4.012.0mV
Shunt Gain ErrorEGAINE_{GAIN}0.20.5%
Quiescent CurrentICCI_{CC}1.01.5mAActive conversion mode
Power-Down CurrentIPDI_{PD}615µAShutdown mode

Register Map

AddressRegisterAccessResetDescription
0x00CONFIGURATIONR/W0x399FBus voltage range, PGA gain, ADC resolution & mode
0x01SHUNT_VOLTAGER0x0000Differential shunt voltage (1 LSB=10 μV1\text{ LSB} = 10\text{ }\mu\text{V})
0x02BUS_VOLTAGER0x0000Bus voltage (1 LSB=4 mV1\text{ LSB} = 4\text{ mV})
0x03POWERR0x0000Calculated Power (1 LSB=20×Current_LSB1\text{ LSB} = 20 \times \text{Current\_LSB})
0x04CURRENTR0x0000Calculated Current (1 LSB=Current_LSB1\text{ LSB} = \text{Current\_LSB})
0x05CALIBRATIONR/W0x0000Calibration value (0.04096/(Current_LSB×RSHUNT)0.04096 / (\text{Current\_LSB} \times R_{SHUNT}))

Wiring

text
        Power Supply (+12V) ─────► [ VIN+ ]  INA219  [ VIN- ] ─────► Load (+ Terminal)
                                      ▲                 ▲
                                      └───── Shunt ─────┘
                                           (0.1 Ω)
INA219 Breakout PinMicrocontroller / Circuit
VCC5V (or 3.3V)
GNDCommon GND (MCU GND + Load GND)
SDASDA (A4 on Uno, GPIO21 on ESP32)
SCLSCL (A5 on Uno, GPIO22 on ESP32)
Warning

High-Side Voltage Limit: The target bus voltage (VIN+V_{IN+}) MUST NOT exceed 26.0 V DC. Attempting to measure mains AC or DC voltages >26 V> 26\text{ V} will permanently destroy the INA219 chip.

Common mistakes

  • Low-side wiring instead of high-side: The INA219 is designed for high-side current measurement (inserted on the positive supply wire). Wiring it on the ground side distorts ground reference levels for downstream sensors.
  • Forgetting common ground: Not connecting the microcontroller ground to the power supply ground prevents I2C communication and causes erratic readings.
  • Uncalibrated current register reads: The CURRENT (0x04) and POWER (0x03) registers remain zero until software writes a valid value to the CALIBRATION register (0x05).

Notes

  • Modifying the onboard sense resistor to a 0.01 Ω0.01\text{ }\Omega shunt expands maximum current measurement up to ±32 A\pm 32\text{ A}.

Assets & downloads