Multiroom audio

It has been a few years that we listen to music on shitty speakers connected directly on a shitty soundcard from Coltello.

The idea is to have multiple, proper, connected, digitally controled amplifiers with speakers in each room that can all play the same source of music and be indenpendently controled for volume and power.

  • Better quality audio to listen to Music
  • Control volume through mobile app, MQTT, web API and physical knob.
  • One audio source, multiple rooms installations.

Media server (mpd on Coltello, Volumio on RaspberryPi or Kodi server )
→ DAC with optical output (USB dac for Coltello or HifiBerry DAC+ or raspberry)
→ Optical TosLink splitter
→ Optical cable to each room
Optical to analog
→ Adafruit MAX9744 20W calss D amplifier
→ Speakers
→ ESP8266 to provide wireless control of the amp.

We currently have 2 possibilites already setup in the lab:

  1. MPD installation on Coltello
Server Active Advantage Disadvantage
MPD Yes on Coltello Already in place and used by users
Integrated with welcome music
Used by DrinkingBuddy
On coltello
Kodi Yes on Rpi Nice interface, lots of mobile remotes, dedicated Cannot watch TV at the same time
Volumio No Dedicated music headless server needs installation, separate server

The following has been tested:

  • Controling the MAX9744 with an android app through the ESP8266 using the local Blynk server
  • Volume is loud enough for a nice party
  • 2 x Speakers set in PTL are working ok

First working prototype has been made, it has the following:

  • DAC for the optical signal, the amplifier, ESP8266 (Wemos) and a rotary encoder for volume control
  • Control volume and mute with the Blynk app on our local Blynk server (ptlpi)
  • Control volume and mute with the physical rotary encoder
  • Control volume and mute with the serial interface (9600 bps CRLF, chars: +,-,m and M, )
  • Everything is powered through a single 12V power supply
  • The whole setup is connected to the Kodi installation and using HifiBerry digi+ for optical output on the RaspberryPi

Needs to be done:

  • Make a box for the whole setup
  • Replace the speaker's screw-in terminal with push connectors
  • Add MQTT support to control the volume
  • 3D print a know for the encoder
  • Mount the speakers properly

Photo of the kitchen prototype, under the TV:

To control the volume and mute from a smartphone, we use a Blynk app on our local Blynk server.

To use it, please install Blynk for your smartphone (android, ios).

Then scan this QR code with your app:

The app looks like this:

<doodle MultiRoom_audio | MultiRoom_audio>

participation active participation passive suivre de loins


  • projects/audio/multiroom_audio.txt
  • Dernière modification: 2017/02/12 21:26
  • de charafantah