A networked receiver for digital music

Sound Card

At first, my plan was to connect the output of the HiFiBerry to the AUX input of the system. I wanted to switch the two inputs with a push-button switch, but by chance, I came across a circuit diagram for the identical Grundig 18-C compact system [5] and discovered which pins of the CD player were attached to the sound fader control circuit (SOFAC). I was therefore able to connect the HiFiBerry output directly through the corresponding connector on the board. A shielded network cable eliminated hum (Figure 9).

To avoid having to connect the RCA outputs, the HiFiBerry board already has holes for a post connector. The warranty expires if you solder on the attachment, but this can hardly be avoided if you still want to use GPIO pins. They can only be reached through the HiFiBerry because of the attachment. Please note that certain pins are already reserved [6]. Power is also supplied by the HiFiBerry.

LibreELEC

The question arises as to which software to use on the receiver. Volumio, for example, can be used to stream music [7]. In my case, however, my compact system uses one out-of-date Euronorm standard [8], and my Samsung television uses an equally ancient Euronorm standard. The TV is already smart and networked, but it has had trouble playing back certain content for some time now. As early as 2017, Samsung removed the YouTube app [9]; moreover, it has no usable web browser to play back video offerings from the web.

I therefore chose a dual-boot system for the free LibreELEC Linux operating system based on the Kodi media center. For example, BerryBoot and OpenELEC or Noobs and the OpenELEC fork LibreELEC are available as combinations. However, it turns out OpenELEC does not currently support an extension for activating the GPIO pins and has generally not been updated regularly since the fork three years ago. BerryBoot and LibreELEC do not always play well together. The developers therefore recommend avoiding this combination [10].

Several program add-ons are important for the use of the system. Advanced WoL is available for waking up the NAS, and Raspberry Pi tools are available for certain of its functions. The Audio Profiles add-on has also proven practical: It can be used to select which port to use for the output when a track or video is started. In this case, the HiFiBerry, the Bluetooth adapter, and the HDMI output are available.

Once the add-ons have been set up, you need to include the Python script in the LibreELEC autostart script [11]. You can also add some settings to the Raspberry Pi's config file [12] (e.g., the device tree overlay for the corresponding HiFiBerry version).

Because I am not supplying power to the Rasp Pi from the micro-USB input, but via the GPIO pins, a small flash constantly appears in the display. This behavior normally warns of a power supply undervoltage, but not in this case. I thus decided to disable the display with the

avoid_warnings=1

command [13]. In normal operation, the components, including the display, do not require more than 1A, so the 3A power supply I am using is fine (Figure 10).

Figure 10: The power supply is 3A; it shares its connection with the internal power supply of the stereo system.

Outsmarting Standby

The circuit still lacks one tiny thing in operation. The system automatically switches to standby mode if no key is pressed for 15 minutes at the end of a CD. Although the system starts up again after one or two seconds because it notices that the CD drawer (which no longer exists) is "open," the interruption disrupts operation. This prompted me to connect the cable formerly connected to the drawer button to another relay and use a Python script to simulate an occasional keystroke so the system no longer switches off.

The push-button (UNCAL) switch is also used: The graphics driver of the Raspberry Pi is not capable of powering two video outputs simultaneously (Figure 11). To output the video signal over HDMI to the TV, the power supply of the touch display has to be disconnected before boot, because the system does not support changing the display during operation. Finally, I installed a small LED on the front panel to show the system status.

Figure 11: A switch for the display lets you use the HDMI output for a TV.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • DIY Boombox

    A HiFiBerry HAT, the matching system, and a Raspberry Pi combine with two old speakers to create a contemporary boombox.

  • Kodi 18.0 and LibreELEC 9.0

    Thanks to Kodi 18.0, LibreELEC 9.0 now supports the DRM encryption used by many streaming services. However, integrating Netflix, Amazon, and other streaming services does involve some manual work.

  • BerryLan

    BerryLan installs a system on a Raspberry Pi that can be integrated into the wireless network with a smartphone app over Bluetooth.

  • Raspberry Pi Model B+

    The brand new Raspberry Pi Model  B+ is solid and tidy, with many clever improvements in detail that make this the best version so far. The desired improvement in performance will have to wait for now.

  • Rasp Pi Symfonisk

    Build open software, open hardware smart WiFi speakers for the home with the Sonos and Ikea Symfonisk.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News