5/19/2024 Setup oss multiroom hi-fi

This post briefly details how to setup a ( fully open-source ) multi-room hi-fi setup, relying on :

Note that other player distributions (like Volumio, etc) may also work, though a LMS + PiCorePlayer combination seems the best, imho ( also because it's all open-source and free ). You can read this article for an in-depth comparison.

Prerequisites

Installation

Install the LMS on your laptop ( macOS is possible ). Physically mount the DAC ( e.g IQAudio DAC + ) on each RPi.

Flash each RPi sd-card with latest PiCorePlayer OS using Raspberry Pi Imager. No need to configure the OS, it can be done in the next step.

Insert the flashed sd-card in each RPi-DAC, insert an Ethernet wire ( will be removed once wifi setup on the RPi-DAC ), and boot the RPi-DAC.

Setup

Check on a browser that it is up and running at http://{server IP}:9000

Check on a browser that each RPi-DAC is up and running by visiting each http://{player IP}.

In each PiCorePlayer webUI, now you can :

Then, via ssh into each RPi, disable the native RPi audio :

ssh tc@{RPi-DAC IP}
# password is 'piCore' by default

mount /mnt/mmcblk0p1 && cd /mnt/mmcblk0p1

vi config.txt
# disable native audio by commenting out this line
#dtparam=audio=on

# then you can check that you have this line, i.e DAC is already configured:
dtoverlay=iqaudio-dacplus
# or add it yourself !

At last, remove the Ethernet cable, reboot, and the RPi-DAC, aka your PiCorePlayer, should now be ready !

Check on the LMS interface available at http://{server IP}:9000 that the server has automatically recognized each of your players.

You should be now able to listen to your media ( local media files on the server disk, as well as webradios and more with LMS plugins ) accross all your rooms, either choosing to synchronize each player with each other, or not !

lms webUI