# INA219 current sensor: 26 V, I2C and what the shunt decides

> Measures bus voltage to 26 V and shunt current over I2C. The datasheet limits, the shunt maths and where it goes in a robot.

Canonical: https://roboticsengineering.in/components/ina219-current-sensor/ | Published: 2026-11-03 | Updated: 2026-11-03

**The INA219 measures bus voltage from 0 to 26 V and the voltage across a shunt resistor over I2C, then reports current and power, with a maximum accuracy of 0.5 percent over temperature on the B grade.** It runs from a 3 to 5.5 V supply and draws at most 1 mA. On a robot it is the cheapest way to see battery voltage and motor current from software. Figures are from the Texas Instruments datasheet SBOS448G.

## Key specifications

| Bus voltage | 0–26 V |
| --- | --- |
| Supply | 3–5.5 V, 1 mA max |
| Shunt ranges | ±40, ±80, ±160, ±320 mV |
| Accuracy | 0.5% max over temperature (B grade) |
| Interface | I2C, 16 addresses |
| Packages | SOT-23-8, SOIC-8 |

## What the datasheet promises

| Item | Datasheet value |
| --- | --- |
| Bus voltage sensing | 0 to 26 V |
| Chip supply | 3 to 5.5 V, 1 mA maximum |
| Shunt voltage full scale (PGA settings) | ±40 mV, ±80 mV, ±160 mV, ±320 mV |
| Accuracy | 0.5 percent maximum over temperature (INA219B grade) |
| Interface | I2C or SMBus compatible, 16 programmable addresses |
| Packages | SOT-23 (8) and SOIC (8) |

The 26 V limit is on the bus pins. The datasheet says no more than 26 V should ever be applied, so it is suitable for a 3S lithium pack (12.6 V) but not for a 24 V system with spikes.

## What the numbers mean for a robot

The chip measures voltage across a shunt, so the current range depends on the shunt value. With the full-scale ±320 mV setting and a 0.1 Ω shunt, the top current is 3.2 A, because 0.32 V divided by 0.1 Ω is 3.2 A. Many breakout boards ship with a 0.1 Ω shunt, so they top out near 3.2 A; check the marking on yours. The sensor sits in the high side, in line with the positive supply. Wiring it into the ground side or bypassing the shunt gives wrong readings. If readings are zero, see [INA219 reads zero current](https://roboticsengineering.in/fix/ina219-reads-zero-current-wiring/).

## Wiring and software

- Connect VCC and GND to the logic supply, and SDA and SCL to the I2C pins.
- Put the shunt in series with the load, with Vin+ on the supply side and Vin- on the load side.
- Join the ground of the measured circuit to the ground of the board.
- Choose the address with the A0 and A1 pins if you use more than one.
- Pick the gain and calibration value in code to match your shunt.

For battery voltage alone a resistor divider and ADC is cheaper, as explained in [battery voltage monitor reads wrong](https://roboticsengineering.in/fix/battery-voltage-monitor-divider-adc-reads-wrong/). The INA219 earns its place when you also want current, for stall detection or a run-time estimate.

## Sources and further reading

- [Texas Instruments INA219 datasheet (SBOS448G)](https://www.ti.com/lit/ds/symlink/ina219.pdf) — the voltage ranges, supply, accuracy, shunt ranges and packages above.

Last reviewed: November 2026. The 3.2 A example is a calculation from the datasheet’s 320 mV range and a 0.1 Ω shunt, not a measurement; breakout shunt values vary. No price is quoted because it has not been checked.
