DIY Web Radio and Media Streamer

Markus | Sunday, April 11th 2021, 18:23

-- Based on an AVR and a Raspberry Pi 0W running MPD

Figure 1. DIY Web Radio

Last year, a friend gave me a dead DAB+ radio, whose only function that still worked was the heater-function -- Oh, it wasn't supposed to do that? OK... Then it was 100% dead. -- Either way, I've been meaning to get myself an Internet radio for a while now, but all on the market were missing some feature I wanted, plus building one myself didn't sound too hard.

This post describes the radio that I built in the end, based around only the original case and speaker from the DAB+ radio.

Features

Here's a quick list of the features of the radio in its current state:

  • Battery operated for around 5 hours
  • Web radio streaming (direct and HLS)
  • Music playback from my local file server
  • Standalone operation (without PC or smartphone) for basic track selection and playback
  • Extended features using PC or smartphone (playlists, favorites, ...)
  • Single button press like functionality to bookmark a currently playing track for later
  • Extended character set support (e.g. Japanese) in the title display

Technical Details

  • IO / System controller: Atmega48
  • SoM: Raspberry Pi Zero W
  • Audio DAC and amplifier: MAX98357A
  • Battery: 3000 mAh Li-Ion

The following graphic illustrates the internal blocks of the web radio and their connections.

Figure 2. Block diagram view of the components

If you are interested in the source code of the firm- and software, take a look at my Git repository for the project [1].

Web Interface

The radio provides a web interface to view and manage liked songs. It's not particularly pretty, but it gets the job done:

Web Radio: Liked Songs

  • [2020-10-30 12:55:40.254104] I Love Me - Sono Manma Yusha
  • [2020-12-12 20:11:48.346861] Nagai Mariko - Zutto (Xmas Version)
  • [2020-12-12 20:21:59.846149] Girls2 - Daijoubu
  • [2020-12-12 20:58:08.490693] Honey Knights - O Chin Chin
  • [2020-12-24 18:05:21.631764] Hirahara Ayaka - Blessing Jukufuku
  • [2021-01-06 11:47:43.146603] Mizuki Nana - No Rain No Rainbow
  • Refresh

    Figure 3. The web interface

    Gallery

    Figure 4. The insides of the radio
    Figure 5. The new hardware (back)
    Figure 6. The new hardware (front)
    Figure 7. The Li-Ion battery pack and charger


    Sources:
        [1]: https://git.notsyncing.net/electronics/webradio


    Tags: hardware software