Hi folks! This is my first post. I'm a software engineer and I'm struggling with some power issues on a circuit I've designed and thought I'd reach out to some experts because I'm really stumped now.
I've got:
1 x ESP32 S3 WROOM (using both ESP-NOW WiFi and Bluetooth LE)
1 x Display module
1 x NFC module
1 x LoRa module
1x Audio Module MP3-TF-16P
1 x IR Receiver
1 x IR LED
2 x Switch (Buttons)
Although my schematic supports more modules like lights, rumble motor and serial interface, those listed above are the only ones connected at present.
The software is running Platform.io and Arduino framework.
All of this works just fine, including comms via ESP-NOW, app control via BLE etc until I try to playback audio. At low volumes audio playback works fine but if I ramp the volume up even to half the max, the audio module gives up, usually after a crackly attempt to play the audio, and often the ESP32 goes into a reboot cycle where as it boots, the audio clicks and then the ESP32 resets again, over and over.
I've also noticed that the circuit wont boot at all unless I provide 5.15V from the bench supply instead of the 5V the ESP32 is rated at. If I provide less than this, things light up but the ESP32 doesn't actually boot so things like the display never get to rendering anything, but the backlight is visible.
If I ramp up the voltage a bit to 5.40V the audio playback can play at higher volume without a crash. Increasing the volume further then crashes it all again. This all seems a bit weird to me because I thought that current would increase in line with volume rather than requiring more voltage for volume.
I'm running the circuit on both a breadboard and a double-sided copper PCB plate I CNC milled my circuit to. Both exhibit the same issue.
I've swapped out the ESP32 and the audio module as I have spares, but no difference.
Here's the schematic:
Here's the PCB:
I'm too new to circuit design, especially power-related topics and I know it's a mistake I've made or some poor design decision that's causing this, but I don't think I have the capability to figure this out by myself.
My ultimate goal is to be able to run this from a battery pack but for now, even the bench supply is not working ![]()
If anyone has any ideas or advice or things I can try or clarify, please let me know!
Thanks everyone!!



