DIY ESP32-S3 Internet Radio with Winamp-Inspired Interface - CNX Software

DIY ESP32-S3 Internet Radio with Winamp-Inspired Interface – CNX Software

2 Min Read

Volos Projects recently presented an affordable and easy-to-build DIY ESP32-S3 Internet radio, featuring a Waveshare ESP32-S3-LCD-1.54 development board. The project includes an Arduino sketch with a retro Winamp-style user interface.

The radio’s hardware relies on the ESP32-S3 WiFi and Bluetooth SoC, paired with a 1.54-inch 240×240 color display, and a speaker that offers surprisingly good audio quality as noted by Volos Projects.

Waveshare ESP32-S3-LCD-1.54 specifications:

  • SoC – Espressif ESP32-S3R8
    • CPU – Dual-core Tensilica LX7 microcontroller up to 240 MHz with AI acceleration
    • Memory – 512KB SRAM, 8MB PSRAM
    • Wireless – WiFi 4 and Bluetooth 5.0 LE + Mesh connectivity
  • Storage
    • 16MB NOR flash
    • MicroSD card slot
  • Display
    • 1.54-inch IPS display with 240×240 resolution, 262K colors
    • 4-wire SPI ST7789 driver
    • Optional CST816 capacitive touch controller (not used by the DIY Radio project)
  • Audio
    • Speaker
    • 2x microphones
    • NS4150B audio amplifier
    • ES8311 low-power audio codec
    • ES7210 AEC chip
  • USB – USB Type-C port for power and programming
  • Sensor – QMI8658 6-axis IMU with gyroscope and accelerometer
  • Misc
    • Power, Boot, and “PLUS” user buttons
    • Ceramic antenna
  • Power Supply
    • 5V via USB Type-C port
    • 2-pin connector for a 3.7V lithium battery; supports charging and discharging
  • Dimensions – 46 x 46 x 22.5 mm

Waveshare provides basic instructions and code samples for using the device with the Arduino IDE and ESP-IDF framework. Although many affordable MCU boards from companies like Waveshare and LILYGO have unique features, they typically require users to create custom firmware.

The ESP32-S3-LCD-1.54 now has a ready-to-use Arduino sketch, allowing easy transformation into an Internet radio with a classic Winamp-like interface. Users just need to update the code with their WiFi credentials and personal radio station list:

Necessary libraries: esp32-audio-I2S-master 3.4.0, GFX Library for Arduino 1.6.0, LovyanGFX 1.2.19, and Arduino WiFiMulti 1.0.0.

You can observe the DIY ESP32-S3 internet radio in action in the video provided below.

The ESP32-S3-LCD-1.54 can be purchased for $14.99 from Waveshare without a battery or $15.99 with a battery. It is also available on Amazon ($27.99) and

You might also like