Topics/Power/ESP32 LiPo Dev Kit: 3 Boards with a LiPo Charger, and 3 Shields
POWERbeginner

ESP32 LiPo Dev Kit: 3 Boards with a LiPo Charger, and 3 Shields

Three classic ESP32 boards that charge a lithium cell from USB-C and run from it when the cable comes out, and three shields to wire them on. Which cell, which socket, which way round, and how long a cell lasts.

ESP32 LiPo Dev Kit: 3 Boards with LiPo Charger + 3 Shields

Specifications

In the box3 ESP32 LiPo boards with 6 male header strips to solder on, 3 shields (2.54 mm header, spring terminal, screw terminal) that need no soldering, 6 JST PH 2.0 cables and a storage case. No battery
ChipESP32-D0WDQ6: two cores at 240 MHz, 2.4 GHz Wi-Fi, Bluetooth Classic and BLE. 4 MB flash, no PSRAM
BatteryOne 3.7 V lithium cell with its own protection circuit — a LiPo pouch or a protected 18650 — on a JST PH 2.0 plug. Not included
ChargingUp to 500 mA from USB-C, to 4.2 V. Use a cell of 500 mAh or more
Power pathRuns from USB and charges the cell at the same time. When USB is unplugged the cell takes over without a reset
USBUSB-C with a CH340 USB-to-serial chip, for power, charging and uploads. Some C-to-C cables work only one way up
Pins26 on a 2.54 mm grid, 13 a side. 3V and GND are the only power pins: no 5 V pin and no battery pin. GPIO 21 is not brought out
LEDGPIO 22, lit when the pin is LOW
ButtonsRST only. Uploads start the board themselves through the USB chip; there is no BOOT button
Battery socketsThe board's socket has + on the left, and the shield's LIPO BTT socket has + on the right, looking down with the USB end towards you. A lead that is right for one is reversed on the other
ShieldsEach has a battery ON/OFF switch, a resettable fuse (PPTC), a LIPO BTT socket for the cell and a TO ESP32 socket for the cable to the board
Battery monitorA solder pad on each shield joins a 1:2 divider across the cell to IO36 (VP). It ships open
Arduino IDEBoard: ESP32 Dev Module. Upload speed 921600, or 115200 if an upload stops partway

What it does

It is a classic ESP32 with a lithium cell charger on the board. Plug a cell into its socket and USB-C does two jobs: it runs the board and charges the cell. Unplug the cable and the cell carries on running it, without a reset, so a sketch in the middle of something stays in the middle of it.

The rest of the board is a small ESP32 dev board: 26 pins, a USB-C port with a CH340 serial chip for uploads, a reset button and an LED on GPIO 22.

The box

Three boards and three shields. The boards arrive with their header strips loose, for you to solder; the shields arrive finished.

The ESP32 LiPo Dev Kit: three black ESP32 boards fanned out at the top left, each with a PCB antenna, 13 labelled pins down each side, a white battery socket and a USB-C socket; the teal storage box at the top right; and three shields along the bottom — one with black and yellow headers, one with green screw terminals, one with grey spring terminals — each with an ON/OFF switch and two white battery sockets.
Three boards, the storage case, and the three shields: 2.54 mm header, screw terminal, spring terminal.

The board does the charging, the switching and the computing. It has its own battery socket, so it works on its own with a cell plugged straight in.

A shield is what the board plugs into when it becomes a project. All three have the same middle — a battery switch, a resettable fuse, a monitor pad and two battery sockets — and differ only in how they hold a wire:

ShieldHoldsGood for
2.54 mm headerJumper wiresBreadboard work that changes every few minutes
Spring terminalStripped wire, no toolWiring that changes now and then
Screw terminalStripped wire, screwdriverA finished build that gets carried or shaken

Wiring, in four lines

  1. Seat the board on the shield with the antenna at the switch end and USB-C at the end printed USB.
  2. Cell into LIPO BTT, red wire to the + printed beside it.
  3. A cable from the box between the shield's TO ESP32 and the board's battery socket, + to +.
  4. Switch ON, then USB-C to charge or program.

The board's own socket and the shield's LIPO BTT socket are wired opposite ways round. A cell whose plug is right for one is reversed on the other, so read the + every time. Which pin is plus shows both.

The cell

One 3.7 V lithium cell, with its own protection circuit, on a JST PH 2.0 plug. A LiPo pouch of 500 mAh or more is the usual choice; a protected 18650 lasts longest. The charger delivers up to 500 mA, which is too fast for the small 100–200 mAh cells sold for tiny projects. The cell to buy has the arithmetic.

Where to start

The handbook below is thirteen short articles with a working figure in each. If you only read one before plugging in a cell, read which pin is plus. If you want the LED blinking first, blink the LED on GPIO 22 has the one setting the Arduino IDE needs.

When it doesn’t work

Is this an ESP32-S3?
No. It is the original ESP32 — esptool reports an ESP32-D0WDQ6 — with two cores, Wi-Fi, Bluetooth Classic and BLE. Choose ESP32 Dev Module in the Arduino IDE, and any sketch for a classic ESP32 DevKit will run, as long as it uses pins this board brings out.
Which way round does the board go on a shield?
Antenna at the end with the ON/OFF switch, USB-C at the end printed USB. The two rows are the same length, so it also fits turned round — and then the board's 3.3 V pin sits in the shield's GND socket. Check both ends before you connect a cell.
My cell's plug is right for the shield but reversed on the board.
That is how they are made: the board's socket and the shield's LIPO BTT socket are wired opposite ways round. Use the socket the plug is right for, and check the red wire against the + printed beside the socket every time. If you need the other one, the two pins lift out of the plug with a needle under each tab and swap over.
Does it really keep running when I unplug USB?
Yes, with a charged cell connected. The board runs from USB while it charges the cell, and when USB goes it switches to the cell without a reset. On a shield, the switch must be at ON and the TO ESP32 cable fitted, or there is no cell for it to switch to.
Can I power a 5 V sensor from it?
Not from the header. The only supply pin is 3V, which is 3.3 V from the board's regulator. A part that needs 5 V needs its own 5 V supply, a shared ground, and a level shifter on any signal it sends back.
How do I read how full the battery is?
Bridge the BATTERY MONITOR pad on the shield with a blob of solder. That joins a divider across the cell to GPIO 36, which then sees half the cell voltage. Read it with analogReadMilliVolts and double it, on battery and with the radio quiet — while USB is in, you are reading the charger, not the cell.

The ESP32 LiPo handbook

13 articles · about 60 minutes

This page is the reference: what the part is, what it is made of, and the questions people arrive already asking. The handbook is the walk — the same part in the order somebody actually meets it.

Why a battery board

2 articles

A board that charges a lithium cell from USB and runs from it when the cable comes out, without a reset. What that needs from the cell is the first decision.

What is in the box

3 articles

Three boards, three shields, six cables and six header strips. Twenty-six pins, five of which have opinions about how the board starts.

First code

2 articles

One board setting, one LED that lights when its pin is LOW, and the USB-C cable that works one way up.

Where the power comes from

3 articles

Two sockets for a cell, wired opposite ways round. Then what the regulator does as the cell runs down, and how long a cell lasts.

Reading the battery

3 articles

One solder pad on the shield lets the board measure its own cell. A sketch that reads it honestly, and a page for when it will not run on battery at all.

Edit this page — content/modules/esplipo.mdx

Community

Questions about this product

See what other owners have asked, and read their solutions.

Ask a question ↗

ESP32 LiPo Dev Kit: 3 Boards with LiPo Charger + 3 Shields

Loading discussions…

Discuss this article

Ask about this page. The answer stays here, on the page it belongs to, for whoever hits the same wall next.

Browse Modules and blocks on the forum