6

I want to build an audio system for my apartment, that would have speakers in multiple rooms, and that would activate corresponding speakers automatically upon entering a room. It would have to be connected to Spotify, AirPlay and support mini jack input.

Is this possible? Is there some system that has this implemented already (I saw Sonos has multi-room support, but not the automation that I think of). I can do some coding if needed.

The ideal scenario would be system made of some motion/infrared sensors, that would remember which ones activated in what order, therefore it can memorize if there is somebody in the room or not. I think I'll choose HomeKit for my system, so I expect that it will be able to start playing Spotify playlist automatically on some HomeKit trigger. The example of the above system is: I listen to a podcast in the living room, but when I go to the bathroom is starts playing there as well, as long as I'm there.

A project expanding this one I have in mind, is automatically playing a specific Spotify playlist when I get home.

  • The second is easier I think. When your phone connects to Wifi, you are at home. – atakanyenel Oct 3 '17 at 1:06
  • Multiroom tends to be more about synchronising audio so they all play at the same time (no lag) between rooms so it sounds natural as you move between them, not starting/stopping as you leave rooms. – hardillb Oct 4 '17 at 8:32
  • You could link the output of one amplifier to the input of another one. And switch the sources whenever going to another room. Or you could choose an amplifier that has 4 "zones" and then toggle the volume of each zone. – Paul Oct 9 '17 at 18:03
4

Requirements: Multiple rooms, spotify, airplay mini-jack.

Functionalities: Activating speakers on presence/motion. Playing Spotify when you get home.

This is actually a very broad question that can have a very broad set of answers. However, let me explain how I would do this.


Audio

For up to about 4 rooms, you could use an amplifier that has different "zones". Be sure to get an amplifier that has an open API.

You can wire the speakers up that each "zone" is connected to one room. And you can simply control the volume for each room to when you walk in/out.

If you have multiple amplifiers, you can use the output of one amplifier as an input to the other amplifier. Then you'll have to switch to the correct inputs when changing rooms.

Another option could be using a setup like "MusicCast" where one amplifier streams his music to others. But I haven't yet found a fancy way to control MusicCast.


Motion detection

There really are hundreds of devices for this. You could get an ESP8266 (wifi module) and hook up an PIR module. If you program the ESP8266 to send a volume "80%" command to the amplifier whenever it registers motion (and send mute when it doesn't register for quite some time) you have a very cost effective setup.

However, you should look into having a central (Home automation) server to parse all inputs and control the amplifiers, because the behaviour will be easier to change through the servers' interface as when you're using dedicated modules themselves.

I would suggest using Node-red with Yamaha or Denon modules and MQTT. Your motion sensors would publish MQTT messages for it's motion. node-red will parse them and apply logic, to control the amplifier. This way you can "reprogram" your logic, withouth having to reprogram the ESP8266's. Or you could more easily integrate an app (there are a lot of MQTT button apps).


I must note that the company I work for is affiliated with Yamaha and thus my answer may be a bit biased. But you should always opt for an amplifier that has an open API (Denon's have it as well) if you want to control the amplifier over IP.

|improve this answer|||||
2

For an easy start I would go with PIR (Passive InfraRed) sensors to detect presence. They are quite nice and cheap. On detection, you should activate your room sound system, this might be done in several ways.

Maybe a BT loudspeaker and its power supply controlled by the PIR sensor. Well, this idea is a bit rough about the edges, but it could be worth a try.

|improve this answer|||||
  • It would be great if you could elaborate a bit to make it more an answer and less comment-y. – Helmar Oct 4 '17 at 12:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.