Help Needed for ESP32-Based Handheld Console with Battery and USB-C

Hi everyone.

I’m working on a project to build an ESP32-based handheld gaming console, and I’m looking for advice on how to best design the power supply and overall functionality. Here are the main features I’d like to implement:

  1. Battery-Powered Operation: The console should be portable and run on a Li-ion or LiPo battery.

  2. USB-C Port: The USB-C port should handle charging the battery, powering the console while charging, and also serve as a programming interface for the ESP32.

  3. Stable Power Supply: The ESP32 and peripherals (like the display, buttons, and speaker) need reliable power at all times.

  4. Optional: Power path management to protect the battery and prioritize USB-C power when connected.

I’m unsure about the components and design required to achieve these goals. Specifically:

How can I design the USB-C port to handle charging, power supply, and programming simultaneously?

Should I use a dedicated power path management IC, or would a simpler MOSFET-based solution suffice?

Are there any common pitfalls or known issues when integrating a battery, USB-C, and ESP32 that I should watch out for?

If anyone has worked on a similar project or has suggestions for components, schematics, or design tips, I’d greatly appreciate your help!

Thanks in advance!

There are plenty of Esp boards with built-in battery management taking care of charging, protection and automatic switching between usb/battery power.

Hey im locking forward to use a ESP32 Module like a wrover on a pcb. Because of this i wouldn't like to use a development board. Do you have any other recommendations for a charging ic or something like that.

Sounds like an awesome project. Completing it, you will definitely level up your knowledge and skills.

For such projects, at this point in history, there are tons of examples. In your shoes, I'd start by studying the Arduino MKR WiFi 1010's schematic. All that would be needed is to swap out the USB circuit for a USB C circuit. In turn, you could design your custom PCB to work with the Arduino IDE.

Arduino MKR WiFi 1010 — Arduino Official Store

Look at the documentation section and you can get the Eagle files along with the schematic. This will save you a ton of time getting your design ready for fabrication.

With a similar approach to Open Source scouting, there are plenty of boards where you can get the USB C design block:

Arduino Hardware | Arduino

Remember - what makes one stand ahead of their peers is your ability to finish.

-Sean

How many ESP PCB designs have you done so far?

None yet! I'm just starting out with designing ESP PCBs, and this project will be my first attempt. It’s also part of a school project, so I’m excited to learn and apply my skills while working on something practical and educational.

Instead of using that Xiao or similar, you want to use bare Esp module and other modules for battery management? For what reason?

Well I wish you the best of luck.

I want to learn more about designing ESP boards and create something optimized for my needs. Using a bare ESP module and custom battery management allows me to make the board as small as possible and tailor it to my specific requiremeints.
And my current plan is to first paste the schematic of a Devkit (for example ESP32 DevkitC and then look for another Devkit that has battery managment builtin (like the ESP32-C3-DevKit-RUST-1).

Sounds like good plan.

First of all, Merry Christmas to everyone!

This is my current schematic. I am using the ESP32-WROOM-2, and I've also included parts of the battery charging and power circuit design from the ESP32-C3-Rust reference with an MAX17048 for Battery Monitoring. However, I am a bit confused about some aspects.

The ESP32-WROOM-2 doesn't require an external USB-UART IC, so why do other boards like the ESP32-S3-DevkitC-1 have an external USB-UART IC. In my schematic, the USB-UART IC is connected in such a way that it only turns on when power is supplied via USB.

My questions are:

  1. At first what do you think about the design?
  2. I how should i connect the pins (ESP32 pins (need to be connected) in red box)
  3. Later i want to measure the current draw to adjust for the battery. How would this be implemented the best(i only need to know if i should a?

Thank you!
SCH_Schematic2_2025-01-24.pdf (537.7 KB)

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.