Commercial internet radio receivers are still relatively expensive and cost $ 100 and up. So I decided to make a device that is functional, easy to make and manage and inexpensive. On the site "electronicsforu.com" is given exactly such device that uses cheap MP3 VS1053 codec processor from "aliexpress.com" and ESP32 MCU. Optional can be added OLED display to know which station is playing.
The ESP32 is connected on the streaming site at the fixed port and then receive the streaming data in an exact chunk of 32 bytes at a time. On the other hand, the board will keep on processing the data like an inflow/outflow machine and the stream will continue to play. For changing stations is used a GPIO (D13 ) pin as a push-to-on-switch to soft Reset the VS1053 board to tune in to the next station. The entire device is powered through the micro-usb port of the ESP32.
For connecting to the WiFi system, replace the SSID & password to the beginning of the code and then upload in the normal Arduino way. Once uploaded the ESP32 will first say ‘Hello’ to indicate that the VS1053 is up and ready. It will then wait for couple of seconds to get connected [ Keep a watch on the Serial output] of the computer. Once on the Internet it will then tune to the station in host [6] and then the beautiful streaming voice will start pouring in. Press the switch once [connected to D13] and the next station will be tuned. The char *sname[7] variable is optional. You can have your choice names against each radio stations which are set.. Additional station names can be added in the host, path and port arrays. You can find streaming informations of various radios by genre (ip adress, port...) at: https://www.xatworld.com/radio-search/.
Schematic code and libraries are given below:
Comments