Teacher and maker Gordon Payne has developed a “simple” internet radio streamer powered by an Espressif ESP32 microcontroller module and housed in a 3D printed case – delivering a streamlined system that still supports the storage and selection of up to 10 favorite stations.
“I wanted to build a simple streaming radio ‘receiver’ for my workbench so I could listen to radio stations while I work on projects,” Payne explains. “This is a lot less complicated than the clock radio project I also designed. This is a simple streamer. There’s no scrolling station, artist, or song metadata here. If you want to see that kind of extra information, you’re better off choosing a different (project).”
At the heart of the build is an Espressif ESP32-WROOM-32 microcontroller module that handles both the user interface and reception of the selected radio stream – provided via the module’s integrated Wi-Fi radio – with decoding offloaded to a VS1053 MP3 codec. This is connected to a four-part LED display that provides a way to distinguish between different stations and a rotary encoder that lets you select which of the 10 favorites is currently playing.
A major improvement over Payne’s previous designs is the use of a web-based configuration system. This means that credentials and station URLs no longer need to be hard-coded into the firmware before it is uploaded to the microcontroller. Wi-Fi credentials are managed using a hotspot-based Wi-Fi manager library.
The project is fully documented, with source code and STL files for the housing, on Instructables.