My previous build of the internet radio was based on a battery hungry raspberry pi zero, so I decided to modify it a little bit and use a ESP32 instead.

The idea is inspired by and

I could have used a ESP32 with additional LiPo charger (e.g. Adafruit HUZZAH32 – ESP32 Feather) but had the PowerBoost and a regular ESP32 laying around so I used that.

For the buttons and leds a MCP23017 I/O Expander was used. The cabling is a little messy but it is working ๐Ÿ˜‰

To change the LEDs according to the battery state the LBO, BAT and USB Pins of the PowerBoost are connected to the ESP32. The PowerBoost can supply up to 5.2 V so a voltage divider is neccessary to not kill the ESP32 Pins.

Additionally the DAC Pins of the ESP32 are connected through a voltage divider to the PAM8403 amplifier.