Battery Monitoring Node

Battery Monitoring Node

Tracks voltage, current and temperature, with a switchable 12 V output.

Power & Batteries EasyEDA

The brief

Voltage, current and temperature from a battery-backed node, with a 12 V output it can switch. The measurements and the switching share a power path, and the current measurement in particular has to stay accurate while that output is being switched.

Charging its own cell over USB-C while remaining the thing being measured adds the last constraint: the supply has to be correct whether or not the cell is attached.

Battery Monitoring Node

What we did

A battery-powered controller built around the ESP32-WROOM-32E. It monitors voltage, current and temperature, drives a switchable 12 V output, and charges its own Li-ion cell over USB-C.

  • Main controller: The ESP32-WROOM-32E has RESET and BOOT buttons, a 19-pin breakout header for spare GPIO, SPI and UART lines, and an OLED display header.
  • USB-C charging and battery protection: A TP4056 charger with status LEDs, plus a DW01 and FS8205A protection stage. A USBLC6-2SC6 provides ESD protection on the USB data lines. 3.3 V supply: A TPS62160 synchronous buck converter powers the logic efficiently from the battery.
  • Programming: A CP2102 USB-to-UART bridge with auto boot/reset transistors makes flashing hassle-free. 12 V boost output: An MT3608 boost converter feeds a P-MOSFET power switch (IRFR9024) that the ESP32 can turn on and off, with a resettable fuse for protection.
  • Power monitoring: An INA219 current sensor with a 100 mΩ shunt tracks the 12 V line over I2C.
  • Precision measurement: An ADS1115 16-bit ADC measures battery voltage and an external input through resistor dividers.
  • Temperature sensing: A 3-pin sensor header with a pull-up resistor.

Design details

Design summary

CAD toolEasyEDA
OverviewA battery-powered controller built around the ESP32-WROOM-32E.
Main controllerThe ESP32-WROOM-32E has RESET and BOOT buttons, a 19-pin breakout header for spare GPIO, SPI…
USB-C charging and battery protectionA TP4056 charger with status LEDs, plus a DW01 and FS8205A protection stage.
ProgrammingA CP2102 USB-to-UART bridge with auto boot/reset transistors makes flashing hassle-free.
Power monitoringAn INA219 current sensor with a 100 mΩ shunt tracks the 12 V line over I2C.
Precision measurementAn ADS1115 16-bit ADC measures battery voltage and an external input through resistor dividers.
Temperature sensingA 3-pin sensor header with a pull-up resistor.

Have a board like this?

Send us the schematic, the mechanical constraints and the deadline. We will tell you what it takes and what it costs.