ESP32: dev boards vs bare modules, the right pick for battery projects
When to use a $5 dev board and when to drop down to the bare ESP32 module. The tradeoffs that matter for battery, size, and cost.
The dev board with the USB connector, the voltage regulator, and all the breakout pins costs about $5 and takes 5 minutes to get running. The bare ESP32-WROOM-32 module costs about $2 and takes half a day to solder onto a custom board. For your first 20 projects, use the dev board. For your project 21 (the one that has to fit in a tiny case and run for 6 months on a battery), drop down to the bare module.
This tutorial covers when the swap makes sense, what you give up, and what you gain.
What the dev board gives you
The standard ESP32 dev board (the ESP32-DevKitC or NodeMCU-32S) bundles:
- The ESP32-WROOM-32 module (the actual chip + antenna + flash)
- A USB-to-serial chip (CP2102 or CH340)
- A voltage regulator (3.3V from the USB’s 5V)
- A reset button and a boot button
- Two rows of breakout pins (0.1 inch pitch, breadboard-compatible)
- An onboard LED on GPIO 2
For development, that is everything you need. Plug in USB, press the boot button if needed, upload a sketch, wire up some sensors, see results. The dev board is the right call for every prototype.
What the bare module gives you
The ESP32-WROOM-32 module by itself is just the chip, the antenna, the flash, and castellated pads (the little half-holes on the edge that you can solder to a custom PCB). No USB, no buttons, no regulator.
To use it, you design a PCB that includes:
- A 3.3V regulator (or run straight from a battery in some cases)
- A USB-to-serial chip if you want to program it
- Reset and boot buttons or test pads
- Pin headers or screw terminals for your sensors
- Your application’s components
The PCB design is half a day of work for someone who has done it before and a week for someone who has not. Tools: KiCad (free), EasyEDA (free, web-based), or Altium Designer (not free, but the standard for real products).
When to make the swap
Stay on the dev board when:
- You are still iterating on the software. Pulling a dev board out of a project box to reprogram it is faster than wiring up a USB cable to a custom PCB.
- You only need one of them. The dev board is $5, and PCB fabrication costs $20-50 minimum. For a single prototype, the math is not there.
- The dev board’s size fits your enclosure. A dev board is roughly 55mm x 28mm. If your enclosure is bigger than that, do not bother designing a custom board.
- You are selling fewer than 50 units. The dev board cost difference is real but not transformative at low volume.
Move to the bare module when:
- The dev board does not fit your enclosure. Common for wearables, in-wall sensors, and small robots.
- You need to drop the current consumption below what the dev board’s components allow. The onboard USB-serial chip draws about 10 mA even when idle. The onboard voltage regulator drops 1-2 mA. A bare module plus a low-dropout regulator can hit 10 uA in deep sleep.
- You need reliability. The dev board’s pin headers are the most common failure point in production. A soldered module survives vibration, thermal cycling, and physical handling.
- You are selling more than 100 units. At that volume, the per-unit cost savings on components and assembly pay for the design time.
The bare module’s power advantage
This is the biggest reason to switch. The dev board’s regulators and USB-serial chip burn power even when the ESP32 is asleep:
| Stage | Dev board current | Bare module current |
|---|---|---|
| Active (Wi-Fi TX) | 80-200 mA | 80-200 mA (same) |
| Active (CPU only) | 30-50 mA | 30-50 mA (same) |
| Modem sleep | 20-30 mA | 5-15 mA |
| Light sleep | 5-10 mA | 0.8-1.5 mA |
| Deep sleep | 0.15-10 mA | 0.01-0.15 mA |
The deep sleep number is the one that matters for battery life. A dev board at 0.15 mA in deep sleep will drain a 2000 mAh battery in about 1.5 years (assuming the ESP32 wakes briefly every hour to do its job). A bare module at 0.01 mA will last 22 years on the same battery. The math changes for the better when you sleep most of the time.
The actual deep sleep current depends on which peripherals you leave enabled. ULP coprocessor running, RTC memory retained, touch pins powered. The book ESP32 Low Power covers all of this.
The size advantage
The dev board is about 28mm x 55mm x 14mm (the height includes the USB connector). The ESP32-WROOM-32 module alone is 18mm x 26mm x 3mm. That is a 4x area reduction and 5x volume reduction. For projects that need to fit somewhere small, the bare module is the only option.
What you lose
The bare module tradeoffs:
- No USB. You need a USB-to-serial chip on your PCB, or you need to buy an FTDI cable or similar to program it.
- No onboard buttons. You need to add reset and boot buttons or test pads, or you can live with the manual reset procedure (hold GPIO 0 low, pulse EN).
- No 5V input. The bare module is 3.3V only. If your project needs to run from a higher voltage battery or a USB input, you need a regulator on your PCB.
- No breakout pins. You either solder headers, design castellated edge pads into your PCB, or use surface-mount soldering.
The first three are the ones people forget about. The fourth is a soldering skill issue.
The middle path: ESP32 modules with built-in USB
The ESP32-S3 and ESP32-C3 have a USB-OTG peripheral built into the chip. Modules based on these (ESP32-S3-DevKitC, ESP32-C3-DevKitM) can be programmed directly over USB without an external USB-serial chip. They are the right call when:
- You want the bare-module form factor with USB for programming
- You do not mind the slightly higher cost ($3-5 per module)
- The slightly higher active current is OK for your battery budget
The ESP32-S3 is the standard pick for new battery projects in 2026.
What to build next
- The 18650 + TP4056 tutorial covers the battery-side wiring for either a dev board or a bare module.
- The deep sleep tutorial shows the code patterns for getting the deep sleep current down to the bare-module minimum.
- The book ESP32 in Production covers PCB layout, antenna design, and the regulatory stuff (FCC, CE) you need to ship a bare-module product.
When you should definitely stay on the dev board
If you are reading this and trying to decide for a hobby project, stay on the dev board. The bare module path is for when the constraints force it. Save the custom PCB for the project that has outgrown the breadboard.