diff --git a/atom.xml b/atom.xml index 481203ee40..fb043f1701 100644 --- a/atom.xml +++ b/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Home Assistant]]> - 2016-02-17T08:14:43+00:00 + 2016-02-18T06:58:42+00:00 https://home-assistant.io/ @@ -13,6 +13,160 @@ Octopress + + <![CDATA[Multi-room audio with Snapcast, Mopidy, and Home Assistant]]> + + 2016-02-18T05:10:56+00:00 + https://home-assistant.io/blog/2016/02/18/multi-room-audio-with-snapcast + Would you like to listen to music in every room in your home, controlled from one source? Then multi-room audio is for you.

+ +

Multi-room audio can be achieved by having a computer attached to speakers in every room. On each computer, services run to play and/or control the audio. With this DIY approach, the kind of computer and speakers is very much up to you. It could be your desktop computer with attached powered speakers, your HTPC hooked up to your TV and receiver, a Raspberry Pi with Amp or DAC, or even an Android device.

+ +

You’ll need two key software packages, besides Home Assistant. The first is Mopidy, a music server that can play local files, or connect to streaming music services like Spotify. The second is Snapcast, which enables synchronized audio streaming across your network. Both can be integrated into Home Assistant. Each room audio device will run an instance of the Snapcast client, and optionally a Mopidy instance. Your server will run a special instance of Mopidy and the Snapcast server.

+ +

Finally, you also need a player to control Mopidy. Any MPD-compatible player will work, and there are several Mopidy-only web-based options available. On Android, Remotedy is particularly nice since you can access multiple Mopidy instances in one place.

+ +

Home Assistant will provide device status, and volume control for each room. If you want to play music in all your rooms (on all your clients), access the server instance of Mopidy. If you want to play music only in a specific room, access that specific Mopidy instance. If you’re using a web UI for Mopidy, you can add links to each instance in Home Assistant with the weblink component.

+ +

+ +

+ + + +

Staging

+ + + +

Configure Mopidy

+ +

Mopidy can be run with multiple configuration files, each extending the previous file. This is helpful when we’re running multiple instances with varying functionality.

+ +

core.conf

+

The core configuration is shared between all instances:

+ +
+
[mpd]
+hostname = ::
+
+[http]
+hostname = ::
+
+[audio]
+output = alsasink
+
+[spotify]
+username = <redacted>
+password = <redacted>
+
+
+
+ +

local.conf

+

Add the local configuration on computers that have local media files:

+ +
+
[local]
+media_dir = <your/music/here>
+
+
+
+ +

snapcast.conf

+

Finally, the Mopidy instance that connects with Snapcast needs special configuration. Run on a different port to avoid conflicts if you have a second Mopidy instance running on your computer. The audio output is sent to a named pipe - Snapcast will read from there. Note that you may have to adjust the audio output attribute depending on your system and audio sources.

+ +
+
[mpd]
+hostname = ::
+port = 6601
+
+[http]
+hostname = ::
+port = 6681
+
+[audio]
+output = audioresample ! audio/x-raw,rate=48000,channels=2,format=S16LE ! audioconvert ! wavenc ! filesink location=/tmp/snapfifo
+
+
+
+ +

Run Mopidy

+ +

To run a room-specific instance:

+ +
+
$ mopidy --config $CONF_DIR/core.conf
+
+
+
+ +

To run a room-specific instance with local media:

+ +
+
$ mopidy --config $CONF_DIR/core.conf:$CONF_DIR/local.conf
+
+
+
+ +

To run the special Snapcast-connected instance (with local media):

+ +
+
$ mopidy --config $CONF_DIR/core.conf:$CONF_DIR/local.conf:$CONF_DIR/snapcast.conf
+
+
+
+ +

Run Snapcast

+ +

Start the snapserver on the same server running Mopidy with the snapcast configuration.

+ +
+
$ snapserver   # or use systemd
+
+
+
+ +

Start the snapclient on computers that will be playing audio.

+ +
+
$ snapclient   # or use systemd, add -h <server host> if necessary
+
+
+
+ +

Configure Snapcast

+ +

There are a number of snapcast configuration options, but the one relevant to Home Assistant is the client names. You can set them in the snapserver configuration file, by default located at ~/.config/Snapcast/settings.json. Only edit this file while the snapserver is not running. Modify the name JSON value to your liking - this is how the client will be named in Home Assistant.

+ +

Configure Home Assistant

+ +

Use the mpd and snapcast components. Optionally, use weblink to provide easy access to a Mopidy web UI.

+ +
+
media_player:
+- platform: snapcast
+  host: xxxxx
+- platform: mpd
+  server: xxxx
+  location: Multi-Room Controller
+- platform: mpd
+  server: xxx
+  location: Room 1
+
+weblink:
+  entities:
+  - name: Multi-Room Player
+    url: xxxx
+
+
+
+ +]]>
+
+ <![CDATA[0.13: Speedtest.net, Bloomsky, Splunk and Garage Doors]]> @@ -1683,69 +1837,6 @@ Map in Home Assistant showing two people and three zones (home, school, work)
  • Fuzzy matching for scenes (@pavoni)
  • Scene support for media player (@maddox)
  • -]]> -
    - - - <![CDATA[Alarms, Sonos and iTunes now supported]]> - - 2015-09-19T21:47:00+00:00 - https://home-assistant.io/blog/2015/09/19/alarm-sonos-and-itunes-support - It’s like someone opened a can of rock solid developers and emptied it above our chat channel because it exploded with great conversations and solid contributions. Featured in release 0.7.3: Sonos, iTunes, Alarm component and Automation upgrade.

    - -

    See GitHub for more detailed release notes.

    - -

    Migration note: the scheduler component has been removed in favor of the automation component.

    - -

    Sonos
    - Sonos support has been added by @rhooper and @SEJeff. Home Assistant is now able to automatically detect Sonos devices in your network and set them up for you. It will allow you to control music playing on your Sonos and change the volume.

    - -

    iTunes and airplay speakers
    - @maddox has contributed support for controlling iTunes and airplay speakers. For this to work you will have to run itunes-api on your Mac as middleware.

    - -
    -
    # Example configuration.yaml entry
    -media_player:
    -  platform: itunes
    -  name: iTunes
    -  host: http://192.168.1.50
    -  port: 8181
    -
    -
    -
    - - - -

    Automation
    -Automation has gotten a lot of love. It now supports conditions, multiple triggers and new types of triggers. The best to get started with it is to head over to the new getting started with automation page.

    - -
    -
    # Example of entry in configuration.yaml
    -automation:
    -  alias: Light on in the evening
    -  trigger:
    -    - platform: sun
    -      event: sunset
    -      offset: "-01:00:00"
    -    - platform: state
    -      entity_id: group.all_devices
    -      state: home
    -  condition:
    -    - platform: state
    -      entity_id: group.all_devices
    -      state: home
    -    - platform: time
    -      after: "16:00:00"
    -      before: "23:00:00"
    -  action:
    -    service: homeassistant.turn_on
    -    entity_id: group.living_room
    -
    -
    -
    - -

    Verisure Alarms
    - We now support arming and disarming your verisure alarm from within Home Assistant thanks to added support by @persandstrom.

    ]]>
    diff --git a/blog/2014/12/18/website-launched/index.html b/blog/2014/12/18/website-launched/index.html index fbee648ebb..ff4c1e18c1 100644 --- a/blog/2014/12/18/website-launched/index.html +++ b/blog/2014/12/18/website-launched/index.html @@ -203,6 +203,12 @@ diff --git a/blog/2014/12/26/home-control-home-automation-and-the-smart-home/index.html b/blog/2014/12/26/home-control-home-automation-and-the-smart-home/index.html index 02b3b434b5..a20d28fecd 100644 --- a/blog/2014/12/26/home-control-home-automation-and-the-smart-home/index.html +++ b/blog/2014/12/26/home-control-home-automation-and-the-smart-home/index.html @@ -258,6 +258,12 @@ This article will try to explain how they all relate.

    diff --git a/blog/2015/01/04/hey-pushbullet-nice-talking-to-you/index.html b/blog/2015/01/04/hey-pushbullet-nice-talking-to-you/index.html index 83c3a511d8..d22182ab4e 100644 --- a/blog/2015/01/04/hey-pushbullet-nice-talking-to-you/index.html +++ b/blog/2015/01/04/hey-pushbullet-nice-talking-to-you/index.html @@ -242,6 +242,12 @@ api_key=ABCDEFGHJKLMNOPQRSTUVXYZ diff --git a/blog/2015/01/11/bootstrapping-your-setup-with-discovery/index.html b/blog/2015/01/11/bootstrapping-your-setup-with-discovery/index.html index 5d8425f6ba..57b2fd01af 100644 --- a/blog/2015/01/11/bootstrapping-your-setup-with-discovery/index.html +++ b/blog/2015/01/11/bootstrapping-your-setup-with-discovery/index.html @@ -217,6 +217,12 @@ diff --git a/blog/2015/01/13/nest-in-da-house/index.html b/blog/2015/01/13/nest-in-da-house/index.html index bedc1afb20..982b45b396 100644 --- a/blog/2015/01/13/nest-in-da-house/index.html +++ b/blog/2015/01/13/nest-in-da-house/index.html @@ -220,6 +220,12 @@ password=YOUR_PASSWORD diff --git a/blog/2015/01/24/release-notes/index.html b/blog/2015/01/24/release-notes/index.html index 80bcdd1f3d..7c675ef5b6 100644 --- a/blog/2015/01/24/release-notes/index.html +++ b/blog/2015/01/24/release-notes/index.html @@ -226,6 +226,12 @@ Home Assistant now supports --open-ui and --demo-mode diff --git a/blog/2015/02/08/looking-at-the-past/index.html b/blog/2015/02/08/looking-at-the-past/index.html index 692f7e7e6b..d93b6dffa2 100644 --- a/blog/2015/02/08/looking-at-the-past/index.html +++ b/blog/2015/02/08/looking-at-the-past/index.html @@ -234,6 +234,12 @@ Events are saved in a local database. Google Graphs is used to draw the graph. D diff --git a/blog/2015/02/24/streaming-updates/index.html b/blog/2015/02/24/streaming-updates/index.html index fc43e25fce..3b97e41744 100644 --- a/blog/2015/02/24/streaming-updates/index.html +++ b/blog/2015/02/24/streaming-updates/index.html @@ -219,6 +219,12 @@ diff --git a/blog/2015/03/01/home-assistant-migrating-to-yaml/index.html b/blog/2015/03/01/home-assistant-migrating-to-yaml/index.html index 52136f3236..6be16d2508 100644 --- a/blog/2015/03/01/home-assistant-migrating-to-yaml/index.html +++ b/blog/2015/03/01/home-assistant-migrating-to-yaml/index.html @@ -209,6 +209,12 @@ diff --git a/blog/2015/03/08/new-logo/index.html b/blog/2015/03/08/new-logo/index.html index d95b404870..5cbf025e8d 100644 --- a/blog/2015/03/08/new-logo/index.html +++ b/blog/2015/03/08/new-logo/index.html @@ -210,6 +210,12 @@ The old logo, the new detailed logo and the new simple logo. diff --git a/blog/2015/03/11/release-notes/index.html b/blog/2015/03/11/release-notes/index.html index 20c5058fe5..5a3de11567 100644 --- a/blog/2015/03/11/release-notes/index.html +++ b/blog/2015/03/11/release-notes/index.html @@ -249,6 +249,12 @@ An initial version of voice control for Home Assistant has landed. The current i diff --git a/blog/2015/03/22/release-notes/index.html b/blog/2015/03/22/release-notes/index.html index 7536b82944..3230154715 100644 --- a/blog/2015/03/22/release-notes/index.html +++ b/blog/2015/03/22/release-notes/index.html @@ -286,6 +286,12 @@ I (Paulus) have contributed a scene component. A user can create scenes that cap diff --git a/blog/2015/04/25/release-notes/index.html b/blog/2015/04/25/release-notes/index.html index b0ac9b04c7..8753f2d393 100644 --- a/blog/2015/04/25/release-notes/index.html +++ b/blog/2015/04/25/release-notes/index.html @@ -297,6 +297,12 @@ diff --git a/blog/2015/05/09/utc-time-zone-awareness/index.html b/blog/2015/05/09/utc-time-zone-awareness/index.html index a10dfba967..2061b902c6 100644 --- a/blog/2015/05/09/utc-time-zone-awareness/index.html +++ b/blog/2015/05/09/utc-time-zone-awareness/index.html @@ -232,6 +232,12 @@ diff --git a/blog/2015/05/14/release-notes/index.html b/blog/2015/05/14/release-notes/index.html index 7cb11b2cad..1275069bec 100644 --- a/blog/2015/05/14/release-notes/index.html +++ b/blog/2015/05/14/release-notes/index.html @@ -324,6 +324,12 @@ Before diving into the newly supported devices and services, I want to highlight diff --git a/blog/2015/06/10/release-notes/index.html b/blog/2015/06/10/release-notes/index.html index 3c8fd92396..a0d22f4d8b 100644 --- a/blog/2015/06/10/release-notes/index.html +++ b/blog/2015/06/10/release-notes/index.html @@ -377,6 +377,12 @@ This switch platform allows you to control your motion detection setting on your diff --git a/blog/2015/07/11/ip-cameras-arduino-kodi-efergy-support/index.html b/blog/2015/07/11/ip-cameras-arduino-kodi-efergy-support/index.html index 17b70bbe67..fe6825e563 100644 --- a/blog/2015/07/11/ip-cameras-arduino-kodi-efergy-support/index.html +++ b/blog/2015/07/11/ip-cameras-arduino-kodi-efergy-support/index.html @@ -329,6 +329,12 @@ Fabian has added support for Forecast.io to g diff --git a/blog/2015/08/09/mqtt-raspberry-pi-squeezebox-asuswrt-support/index.html b/blog/2015/08/09/mqtt-raspberry-pi-squeezebox-asuswrt-support/index.html index cceaaa8986..0d2b4b6e3b 100644 --- a/blog/2015/08/09/mqtt-raspberry-pi-squeezebox-asuswrt-support/index.html +++ b/blog/2015/08/09/mqtt-raspberry-pi-squeezebox-asuswrt-support/index.html @@ -318,6 +318,12 @@ Support for Temper temperature sensors has been contributed by +
  • + Multi-room audio with Snapcast, Mopidy, and Home Assistant +
  • + + +
  • 0.13: Speedtest.net, Bloomsky, Splunk and Garage Doors
  • @@ -341,12 +347,6 @@ Support for Temper temperature sensors has been contributed by - Perfect Home Automation - - - diff --git a/blog/2015/08/17/verisure-and-modern-tp-link-router-support/index.html b/blog/2015/08/17/verisure-and-modern-tp-link-router-support/index.html index ebcac128ff..4c8cf6e4f4 100644 --- a/blog/2015/08/17/verisure-and-modern-tp-link-router-support/index.html +++ b/blog/2015/08/17/verisure-and-modern-tp-link-router-support/index.html @@ -228,6 +228,12 @@ diff --git a/blog/2015/08/26/laundry-automation-with-moteino-mqtt-and-home-assistant/index.html b/blog/2015/08/26/laundry-automation-with-moteino-mqtt-and-home-assistant/index.html index 142b369f08..3639db6fd8 100644 --- a/blog/2015/08/26/laundry-automation-with-moteino-mqtt-and-home-assistant/index.html +++ b/blog/2015/08/26/laundry-automation-with-moteino-mqtt-and-home-assistant/index.html @@ -337,6 +337,12 @@ diff --git a/blog/2015/08/31/version-7-revamped-ui-and-improved-distribution/index.html b/blog/2015/08/31/version-7-revamped-ui-and-improved-distribution/index.html index 7504d109a4..cf19a456de 100644 --- a/blog/2015/08/31/version-7-revamped-ui-and-improved-distribution/index.html +++ b/blog/2015/08/31/version-7-revamped-ui-and-improved-distribution/index.html @@ -315,6 +315,12 @@ diff --git a/blog/2015/09/11/different-ways-to-use-mqtt-with-home-assistant/index.html b/blog/2015/09/11/different-ways-to-use-mqtt-with-home-assistant/index.html index f789475ed4..2ec3b9a594 100644 --- a/blog/2015/09/11/different-ways-to-use-mqtt-with-home-assistant/index.html +++ b/blog/2015/09/11/different-ways-to-use-mqtt-with-home-assistant/index.html @@ -518,6 +518,12 @@ PubSubClient client(ethClient); diff --git a/blog/2015/09/13/home-assistant-meets-ifttt/index.html b/blog/2015/09/13/home-assistant-meets-ifttt/index.html index a511fbb457..fc475e5847 100644 --- a/blog/2015/09/13/home-assistant-meets-ifttt/index.html +++ b/blog/2015/09/13/home-assistant-meets-ifttt/index.html @@ -377,6 +377,12 @@ diff --git a/blog/2015/09/18/monitoring-with-glances-and-home-assistant/index.html b/blog/2015/09/18/monitoring-with-glances-and-home-assistant/index.html index 99e196e338..9b490557d5 100644 --- a/blog/2015/09/18/monitoring-with-glances-and-home-assistant/index.html +++ b/blog/2015/09/18/monitoring-with-glances-and-home-assistant/index.html @@ -278,6 +278,12 @@ Glances web server started on http://0.0.0.0:61208/ diff --git a/blog/2015/09/19/alarm-sonos-and-itunes-support/index.html b/blog/2015/09/19/alarm-sonos-and-itunes-support/index.html index 612fdf20b6..d845dcfbda 100644 --- a/blog/2015/09/19/alarm-sonos-and-itunes-support/index.html +++ b/blog/2015/09/19/alarm-sonos-and-itunes-support/index.html @@ -257,6 +257,12 @@ Automation has gotten a lot of love. It now supports conditions, multiple trigge diff --git a/blog/2015/10/05/home-assistant-goes-geo-with-owntracks/index.html b/blog/2015/10/05/home-assistant-goes-geo-with-owntracks/index.html index af19392907..b05623910d 100644 --- a/blog/2015/10/05/home-assistant-goes-geo-with-owntracks/index.html +++ b/blog/2015/10/05/home-assistant-goes-geo-with-owntracks/index.html @@ -233,6 +233,12 @@ Map in Home Assistant showing two people and three zones (home, school, work) diff --git a/blog/2015/10/11/measure-temperature-with-esp8266-and-report-to-mqtt/index.html b/blog/2015/10/11/measure-temperature-with-esp8266-and-report-to-mqtt/index.html index 51d21dc723..acc5e45c0b 100644 --- a/blog/2015/10/11/measure-temperature-with-esp8266-and-report-to-mqtt/index.html +++ b/blog/2015/10/11/measure-temperature-with-esp8266-and-report-to-mqtt/index.html @@ -564,6 +564,12 @@ Adafruit_HDC1000 hdc = Adafruit_HDC1000(); diff --git a/blog/2015/10/11/rfxtrx-blinkstick-and-snmp-support/index.html b/blog/2015/10/11/rfxtrx-blinkstick-and-snmp-support/index.html index e2474fcce5..585439304c 100644 --- a/blog/2015/10/11/rfxtrx-blinkstick-and-snmp-support/index.html +++ b/blog/2015/10/11/rfxtrx-blinkstick-and-snmp-support/index.html @@ -222,6 +222,12 @@ diff --git a/blog/2015/10/26/firetv-and-radiotherm-now-supported/index.html b/blog/2015/10/26/firetv-and-radiotherm-now-supported/index.html index eb1a7da01e..85b67486e8 100644 --- a/blog/2015/10/26/firetv-and-radiotherm-now-supported/index.html +++ b/blog/2015/10/26/firetv-and-radiotherm-now-supported/index.html @@ -244,6 +244,12 @@ This makes more sense as most people run Home Assistant as a daemon

    diff --git a/blog/2015/11/16/zwave-switches-lights-and-honeywell-thermostats-now-supported/index.html b/blog/2015/11/16/zwave-switches-lights-and-honeywell-thermostats-now-supported/index.html index e322553acf..0f7fd1aa0d 100644 --- a/blog/2015/11/16/zwave-switches-lights-and-honeywell-thermostats-now-supported/index.html +++ b/blog/2015/11/16/zwave-switches-lights-and-honeywell-thermostats-now-supported/index.html @@ -240,6 +240,12 @@ diff --git a/blog/2015/11/22/survey-november-2015/index.html b/blog/2015/11/22/survey-november-2015/index.html index 377731b562..e8b5f874b6 100644 --- a/blog/2015/11/22/survey-november-2015/index.html +++ b/blog/2015/11/22/survey-november-2015/index.html @@ -280,6 +280,12 @@ diff --git a/blog/2015/12/05/community-highlights/index.html b/blog/2015/12/05/community-highlights/index.html index dad73026b8..78b71d3fcb 100644 --- a/blog/2015/12/05/community-highlights/index.html +++ b/blog/2015/12/05/community-highlights/index.html @@ -213,6 +213,12 @@ diff --git a/blog/2015/12/06/locks-rollershutters-binary-sensors-and-influxdb-support/index.html b/blog/2015/12/06/locks-rollershutters-binary-sensors-and-influxdb-support/index.html index 80d1f31fe7..28e796b0be 100644 --- a/blog/2015/12/06/locks-rollershutters-binary-sensors-and-influxdb-support/index.html +++ b/blog/2015/12/06/locks-rollershutters-binary-sensors-and-influxdb-support/index.html @@ -222,6 +222,12 @@ diff --git a/blog/2015/12/07/influxdb-and-grafana/index.html b/blog/2015/12/07/influxdb-and-grafana/index.html index 849d3362a8..d7069f2b2b 100644 --- a/blog/2015/12/07/influxdb-and-grafana/index.html +++ b/blog/2015/12/07/influxdb-and-grafana/index.html @@ -313,6 +313,12 @@ $ sudo systemctl status grafana-server diff --git a/blog/2015/12/10/activating-tasker-tasks-from-home-assistant-using-command-line-switches/index.html b/blog/2015/12/10/activating-tasker-tasks-from-home-assistant-using-command-line-switches/index.html index 360f5ed667..6464819f75 100644 --- a/blog/2015/12/10/activating-tasker-tasks-from-home-assistant-using-command-line-switches/index.html +++ b/blog/2015/12/10/activating-tasker-tasks-from-home-assistant-using-command-line-switches/index.html @@ -263,6 +263,12 @@ requests.get(' +
  • + Multi-room audio with Snapcast, Mopidy, and Home Assistant +
  • + + +
  • 0.13: Speedtest.net, Bloomsky, Splunk and Garage Doors
  • @@ -286,12 +292,6 @@ requests.get(' - Perfect Home Automation - - - diff --git a/blog/2015/12/12/philips-hue-blocks-3rd-party-bulbs/index.html b/blog/2015/12/12/philips-hue-blocks-3rd-party-bulbs/index.html index fe3abd8c4a..edd48ab6d2 100644 --- a/blog/2015/12/12/philips-hue-blocks-3rd-party-bulbs/index.html +++ b/blog/2015/12/12/philips-hue-blocks-3rd-party-bulbs/index.html @@ -235,6 +235,12 @@ Philips Hue FAQ entries regarding 3rd party light bulbs. diff --git a/blog/2015/12/13/setup-encryption-using-lets-encrypt/index.html b/blog/2015/12/13/setup-encryption-using-lets-encrypt/index.html index 961bb8591f..918f9c3b0a 100644 --- a/blog/2015/12/13/setup-encryption-using-lets-encrypt/index.html +++ b/blog/2015/12/13/setup-encryption-using-lets-encrypt/index.html @@ -300,6 +300,12 @@ sudo docker run -it --rm -p 443:443 -p 80:80 --name letsencrypt \ diff --git a/blog/2015/12/22/amazon-echo-icloud-and-templates/index.html b/blog/2015/12/22/amazon-echo-icloud-and-templates/index.html index d4f391f96a..dc399e0ae5 100644 --- a/blog/2015/12/22/amazon-echo-icloud-and-templates/index.html +++ b/blog/2015/12/22/amazon-echo-icloud-and-templates/index.html @@ -256,6 +256,12 @@ diff --git a/blog/2016/01/17/extended-support-for-diy-solutions/index.html b/blog/2016/01/17/extended-support-for-diy-solutions/index.html index 7083f3b414..ebe2b33b03 100644 --- a/blog/2016/01/17/extended-support-for-diy-solutions/index.html +++ b/blog/2016/01/17/extended-support-for-diy-solutions/index.html @@ -236,6 +236,12 @@ diff --git a/blog/2016/01/19/perfect-home-automation/index.html b/blog/2016/01/19/perfect-home-automation/index.html index 6aef2f693b..7d7104a1bb 100644 --- a/blog/2016/01/19/perfect-home-automation/index.html +++ b/blog/2016/01/19/perfect-home-automation/index.html @@ -240,6 +240,12 @@ diff --git a/blog/2016/01/30/insteon-lifx-twitter-and-zigbee/index.html b/blog/2016/01/30/insteon-lifx-twitter-and-zigbee/index.html index 0606e27985..b6ae21c35a 100644 --- a/blog/2016/01/30/insteon-lifx-twitter-and-zigbee/index.html +++ b/blog/2016/01/30/insteon-lifx-twitter-and-zigbee/index.html @@ -242,6 +242,12 @@ Example of the new views in the frontend. Learn mor diff --git a/blog/2016/02/09/smarter-smart-things-with-mqtt-and-home-assistant/index.html b/blog/2016/02/09/smarter-smart-things-with-mqtt-and-home-assistant/index.html index 3b09fe9a7d..f6d1f7e09f 100644 --- a/blog/2016/02/09/smarter-smart-things-with-mqtt-and-home-assistant/index.html +++ b/blog/2016/02/09/smarter-smart-things-with-mqtt-and-home-assistant/index.html @@ -429,6 +429,12 @@ Z-Wave light bulb | diff --git a/blog/2016/02/12/classifying-the-internet-of-things/index.html b/blog/2016/02/12/classifying-the-internet-of-things/index.html index 17e88ea5b1..12aa2686d8 100644 --- a/blog/2016/02/12/classifying-the-internet-of-things/index.html +++ b/blog/2016/02/12/classifying-the-internet-of-things/index.html @@ -379,6 +379,12 @@ diff --git a/blog/2016/02/13/speedtest-bloomsky-splunk-and-garage-doors/index.html b/blog/2016/02/13/speedtest-bloomsky-splunk-and-garage-doors/index.html index 07b676f5f9..f556ac781a 100644 --- a/blog/2016/02/13/speedtest-bloomsky-splunk-and-garage-doors/index.html +++ b/blog/2016/02/13/speedtest-bloomsky-splunk-and-garage-doors/index.html @@ -245,6 +245,12 @@ diff --git a/blog/2016/02/18/multi-room-audio-with-snapcast/index.html b/blog/2016/02/18/multi-room-audio-with-snapcast/index.html new file mode 100644 index 0000000000..d64717520a --- /dev/null +++ b/blog/2016/02/18/multi-room-audio-with-snapcast/index.html @@ -0,0 +1,430 @@ + + + + + + + + + + Multi-room audio with Snapcast, Mopidy, and Home Assistant - Home Assistant + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    + +
    + + +
    + +
    + +

    Multi-room audio with Snapcast, Mopidy, and Home Assistant

    + + + +
    + + + four minutes reading time + + + + + + Comments + +
    + +
    + + +

    Would you like to listen to music in every room in your home, controlled from one source? Then multi-room audio is for you.

    + +

    Multi-room audio can be achieved by having a computer attached to speakers in every room. On each computer, services run to play and/or control the audio. With this DIY approach, the kind of computer and speakers is very much up to you. It could be your desktop computer with attached powered speakers, your HTPC hooked up to your TV and receiver, a Raspberry Pi with Amp or DAC, or even an Android device.

    + +

    You’ll need two key software packages, besides Home Assistant. The first is Mopidy, a music server that can play local files, or connect to streaming music services like Spotify. The second is Snapcast, which enables synchronized audio streaming across your network. Both can be integrated into Home Assistant. Each room audio device will run an instance of the Snapcast client, and optionally a Mopidy instance. Your server will run a special instance of Mopidy and the Snapcast server.

    + +

    Finally, you also need a player to control Mopidy. Any MPD-compatible player will work, and there are several Mopidy-only web-based options available. On Android, Remotedy is particularly nice since you can access multiple Mopidy instances in one place.

    + +

    Home Assistant will provide device status, and volume control for each room. If you want to play music in all your rooms (on all your clients), access the server instance of Mopidy. If you want to play music only in a specific room, access that specific Mopidy instance. If you’re using a web UI for Mopidy, you can add links to each instance in Home Assistant with the weblink component.

    + +

    + +

    + + + +

    Staging

    + + + +

    Configure Mopidy

    + +

    Mopidy can be run with multiple configuration files, each extending the previous file. This is helpful when we’re running multiple instances with varying functionality.

    + +

    core.conf

    +

    The core configuration is shared between all instances:

    + +
    +
    [mpd]
    +hostname = ::
    +
    +[http]
    +hostname = ::
    +
    +[audio]
    +output = alsasink
    +
    +[spotify]
    +username = <redacted>
    +password = <redacted>
    +
    +
    +
    + +

    local.conf

    +

    Add the local configuration on computers that have local media files:

    + +
    +
    [local]
    +media_dir = <your/music/here>
    +
    +
    +
    + +

    snapcast.conf

    +

    Finally, the Mopidy instance that connects with Snapcast needs special configuration. Run on a different port to avoid conflicts if you have a second Mopidy instance running on your computer. The audio output is sent to a named pipe - Snapcast will read from there. Note that you may have to adjust the audio output attribute depending on your system and audio sources.

    + +
    +
    [mpd]
    +hostname = ::
    +port = 6601
    +
    +[http]
    +hostname = ::
    +port = 6681
    +
    +[audio]
    +output = audioresample ! audio/x-raw,rate=48000,channels=2,format=S16LE ! audioconvert ! wavenc ! filesink location=/tmp/snapfifo
    +
    +
    +
    + +

    Run Mopidy

    + +

    To run a room-specific instance:

    + +
    +
    $ mopidy --config $CONF_DIR/core.conf
    +
    +
    +
    + +

    To run a room-specific instance with local media:

    + +
    +
    $ mopidy --config $CONF_DIR/core.conf:$CONF_DIR/local.conf
    +
    +
    +
    + +

    To run the special Snapcast-connected instance (with local media):

    + +
    +
    $ mopidy --config $CONF_DIR/core.conf:$CONF_DIR/local.conf:$CONF_DIR/snapcast.conf
    +
    +
    +
    + +

    Run Snapcast

    + +

    Start the snapserver on the same server running Mopidy with the snapcast configuration.

    + +
    +
    $ snapserver   # or use systemd
    +
    +
    +
    + +

    Start the snapclient on computers that will be playing audio.

    + +
    +
    $ snapclient   # or use systemd, add -h <server host> if necessary
    +
    +
    +
    + +

    Configure Snapcast

    + +

    There are a number of snapcast configuration options, but the one relevant to Home Assistant is the client names. You can set them in the snapserver configuration file, by default located at ~/.config/Snapcast/settings.json. Only edit this file while the snapserver is not running. Modify the name JSON value to your liking - this is how the client will be named in Home Assistant.

    + +

    Configure Home Assistant

    + +

    Use the mpd and snapcast components. Optionally, use weblink to provide easy access to a Mopidy web UI.

    + +
    +
    media_player:
    +- platform: snapcast
    +  host: xxxxx
    +- platform: mpd
    +  server: xxxx
    +  location: Multi-Room Controller
    +- platform: mpd
    +  server: xxx
    +  location: Room 1
    +
    +weblink:
    +  entities:
    +  - name: Multi-Room Player
    +    url: xxxx
    +
    +
    +
    +
    + + +
    +

    Comments

    +
    +
    + + +
    + + + + +
    +
    + + + + + + + + + + \ No newline at end of file diff --git a/blog/archives/index.html b/blog/archives/index.html index 7f9075c49a..0064bcd572 100644 --- a/blog/archives/index.html +++ b/blog/archives/index.html @@ -122,6 +122,38 @@

    2016

    + + + +
    @@ -1611,6 +1643,12 @@ diff --git a/blog/categories/architecture/atom.xml b/blog/categories/architecture/atom.xml index b88de4b8be..be1d50c6f7 100644 --- a/blog/categories/architecture/atom.xml +++ b/blog/categories/architecture/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Architecture | Home Assistant]]> - 2016-02-17T08:14:43+00:00 + 2016-02-18T06:58:42+00:00 https://home-assistant.io/ diff --git a/blog/categories/architecture/index.html b/blog/categories/architecture/index.html index 7237314480..00129af8a5 100644 --- a/blog/categories/architecture/index.html +++ b/blog/categories/architecture/index.html @@ -286,6 +286,12 @@ diff --git a/blog/categories/branding/atom.xml b/blog/categories/branding/atom.xml index bf2204817a..26ba7568a6 100644 --- a/blog/categories/branding/atom.xml +++ b/blog/categories/branding/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Branding | Home Assistant]]> - 2016-02-17T08:14:43+00:00 + 2016-02-18T06:58:42+00:00 https://home-assistant.io/ diff --git a/blog/categories/branding/index.html b/blog/categories/branding/index.html index eafb52c22f..a715e4bc35 100644 --- a/blog/categories/branding/index.html +++ b/blog/categories/branding/index.html @@ -254,6 +254,12 @@ diff --git a/blog/categories/community/atom.xml b/blog/categories/community/atom.xml index 2d354284b7..4d4de391d0 100644 --- a/blog/categories/community/atom.xml +++ b/blog/categories/community/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Community | Home Assistant]]> - 2016-02-17T08:14:43+00:00 + 2016-02-18T06:58:42+00:00 https://home-assistant.io/ diff --git a/blog/categories/community/index.html b/blog/categories/community/index.html index dea8ac9207..76f91ff87e 100644 --- a/blog/categories/community/index.html +++ b/blog/categories/community/index.html @@ -219,6 +219,12 @@ diff --git a/blog/categories/esp8266/atom.xml b/blog/categories/esp8266/atom.xml index 3f336ab23c..cec0640697 100644 --- a/blog/categories/esp8266/atom.xml +++ b/blog/categories/esp8266/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: ESP8266 | Home Assistant]]> - 2016-02-17T08:14:43+00:00 + 2016-02-18T06:58:42+00:00 https://home-assistant.io/ diff --git a/blog/categories/esp8266/index.html b/blog/categories/esp8266/index.html index ece884ed6f..d31ad8a9a7 100644 --- a/blog/categories/esp8266/index.html +++ b/blog/categories/esp8266/index.html @@ -223,6 +223,12 @@ diff --git a/blog/categories/how-to/atom.xml b/blog/categories/how-to/atom.xml index 3ba11d0cef..25bc53000b 100644 --- a/blog/categories/how-to/atom.xml +++ b/blog/categories/how-to/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: How-To | Home Assistant]]> - 2016-02-17T08:14:43+00:00 + 2016-02-18T06:58:42+00:00 https://home-assistant.io/ @@ -13,6 +13,160 @@ Octopress + + <![CDATA[Multi-room audio with Snapcast, Mopidy, and Home Assistant]]> + + 2016-02-18T05:10:56+00:00 + https://home-assistant.io/blog/2016/02/18/multi-room-audio-with-snapcast + Would you like to listen to music in every room in your home, controlled from one source? Then multi-room audio is for you.

    + +

    Multi-room audio can be achieved by having a computer attached to speakers in every room. On each computer, services run to play and/or control the audio. With this DIY approach, the kind of computer and speakers is very much up to you. It could be your desktop computer with attached powered speakers, your HTPC hooked up to your TV and receiver, a Raspberry Pi with Amp or DAC, or even an Android device.

    + +

    You’ll need two key software packages, besides Home Assistant. The first is Mopidy, a music server that can play local files, or connect to streaming music services like Spotify. The second is Snapcast, which enables synchronized audio streaming across your network. Both can be integrated into Home Assistant. Each room audio device will run an instance of the Snapcast client, and optionally a Mopidy instance. Your server will run a special instance of Mopidy and the Snapcast server.

    + +

    Finally, you also need a player to control Mopidy. Any MPD-compatible player will work, and there are several Mopidy-only web-based options available. On Android, Remotedy is particularly nice since you can access multiple Mopidy instances in one place.

    + +

    Home Assistant will provide device status, and volume control for each room. If you want to play music in all your rooms (on all your clients), access the server instance of Mopidy. If you want to play music only in a specific room, access that specific Mopidy instance. If you’re using a web UI for Mopidy, you can add links to each instance in Home Assistant with the weblink component.

    + +

    + +

    + + + +

    Staging

    + + + +

    Configure Mopidy

    + +

    Mopidy can be run with multiple configuration files, each extending the previous file. This is helpful when we’re running multiple instances with varying functionality.

    + +

    core.conf

    +

    The core configuration is shared between all instances:

    + +
    +
    [mpd]
    +hostname = ::
    +
    +[http]
    +hostname = ::
    +
    +[audio]
    +output = alsasink
    +
    +[spotify]
    +username = <redacted>
    +password = <redacted>
    +
    +
    +
    + +

    local.conf

    +

    Add the local configuration on computers that have local media files:

    + +
    +
    [local]
    +media_dir = <your/music/here>
    +
    +
    +
    + +

    snapcast.conf

    +

    Finally, the Mopidy instance that connects with Snapcast needs special configuration. Run on a different port to avoid conflicts if you have a second Mopidy instance running on your computer. The audio output is sent to a named pipe - Snapcast will read from there. Note that you may have to adjust the audio output attribute depending on your system and audio sources.

    + +
    +
    [mpd]
    +hostname = ::
    +port = 6601
    +
    +[http]
    +hostname = ::
    +port = 6681
    +
    +[audio]
    +output = audioresample ! audio/x-raw,rate=48000,channels=2,format=S16LE ! audioconvert ! wavenc ! filesink location=/tmp/snapfifo
    +
    +
    +
    + +

    Run Mopidy

    + +

    To run a room-specific instance:

    + +
    +
    $ mopidy --config $CONF_DIR/core.conf
    +
    +
    +
    + +

    To run a room-specific instance with local media:

    + +
    +
    $ mopidy --config $CONF_DIR/core.conf:$CONF_DIR/local.conf
    +
    +
    +
    + +

    To run the special Snapcast-connected instance (with local media):

    + +
    +
    $ mopidy --config $CONF_DIR/core.conf:$CONF_DIR/local.conf:$CONF_DIR/snapcast.conf
    +
    +
    +
    + +

    Run Snapcast

    + +

    Start the snapserver on the same server running Mopidy with the snapcast configuration.

    + +
    +
    $ snapserver   # or use systemd
    +
    +
    +
    + +

    Start the snapclient on computers that will be playing audio.

    + +
    +
    $ snapclient   # or use systemd, add -h <server host> if necessary
    +
    +
    +
    + +

    Configure Snapcast

    + +

    There are a number of snapcast configuration options, but the one relevant to Home Assistant is the client names. You can set them in the snapserver configuration file, by default located at ~/.config/Snapcast/settings.json. Only edit this file while the snapserver is not running. Modify the name JSON value to your liking - this is how the client will be named in Home Assistant.

    + +

    Configure Home Assistant

    + +

    Use the mpd and snapcast components. Optionally, use weblink to provide easy access to a Mopidy web UI.

    + +
    +
    media_player:
    +- platform: snapcast
    +  host: xxxxx
    +- platform: mpd
    +  server: xxxx
    +  location: Multi-Room Controller
    +- platform: mpd
    +  server: xxx
    +  location: Room 1
    +
    +weblink:
    +  entities:
    +  - name: Multi-Room Player
    +    url: xxxx
    +
    +
    +
    + +]]>
    +
    + <![CDATA[Smarter SmartThings with MQTT and Home Assistant]]> @@ -540,372 +694,6 @@ $ sudo systemctl status grafana-server Grafana Temperature graph

    -]]> -
    - - - <![CDATA[Report the temperature with ESP8266 to MQTT]]> - - 2015-10-11T19:10:00+00:00 - https://home-assistant.io/blog/2015/10/11/measure-temperature-with-esp8266-and-report-to-mqtt - I recently learned about the ESP8266, a $5 chip that includes WiFi and is Arduino compatible. This means that all your DIY projects can now be done for a fraction of the price.

    - -

    For this tutorial, I’ll walk through how to get going with ESP8266, get the temperature and humidity and report it to MQTT where Home Asssistant can pick it up.

    - -

    - -Picture of the final setup (+ 2 LED for decoration) -

    - -

    - -Home Assistant will keep track of historical values and allow you to integrate it into automation. -

    - - - -

    Components

    - -

    I’ve been using Adafruit for my shopping:

    - - - -

    Besides this, you will need the usual hardware prototype equipment: a breadboard, some wires, soldering iron + wire, Serial USB cable.

    - -

    Connections

    - -

    On your breadboard, make the following connections from your ESP8266 to the HDC1008:

    - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ESP8266HDC1008
    GNDGND
    3VVin
    14SCL
    #2SDA
    - -

    I picked #2 and 14 myself, you can configure them in the sketch.

    - -

    Preparing your IDE

    - -

    Follow these instructions on how to install and prepare the Arduino IDE for ESP8266 development.

    - -

    After you’re done installing, open the Arduino IDE, in the menu click on sketch -> include library -> manage libraries and install the following libraries:

    - -
      -
    • PubSubClient by Nick ‘O Leary
    • -
    • Adafruit HDC1000
    • -
    - -

    Sketch

    - -

    If you have followed the previous steps, you’re all set.

    - -
      -
    • Open Arduino IDE and create a new sketch (File -> New)
    • -
    • Copy and paste the below sketch to the Arduino IDE
    • -
    • Adjust the values line 6 - 14 to match your setup
    • -
    • Optional: If you want to connect to an MQTT server without a username or password, adjust line 63.
    • -
    • To have the ESP8266 accept our new sketch, we have to put it in upload mode. On the ESP8266 device keep the GPIO0 button pressed while pressing the reset button. The red led will glow half bright to indicate it is in upload mode.
    • -
    • Press the upload button in Arduino IDE
    • -
    • Open the serial monitor (Tools -> Serial Monitor) to see the output from your device
    • -
    - -

    This sketch will connect to your WiFi network and MQTT broker. It will read the temperature and humidity from the sensor every second. It will report it to the MQTT server if the difference is > 1 since last reported value. Reports to the MQTT broker are sent with retain set to True. This means that anyone connecting to the MQTT topic will automatically be notified of the last reported value.

    - -
    - - -
    1
    -2
    -3
    -4
    -5
    -6
    -7
    -8
    -9
    -10
    -11
    -12
    -13
    -14
    -15
    -16
    -17
    -18
    -19
    -20
    -21
    -22
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -34
    -35
    -36
    -37
    -38
    -39
    -40
    -41
    -42
    -43
    -44
    -45
    -46
    -47
    -48
    -49
    -50
    -51
    -52
    -53
    -54
    -55
    -56
    -57
    -58
    -59
    -60
    -61
    -62
    -63
    -64
    -65
    -66
    -67
    -68
    -69
    -70
    -71
    -72
    -73
    -74
    -75
    -76
    -77
    -78
    -79
    -80
    -81
    -82
    -83
    -84
    -85
    -86
    -87
    -88
    -89
    -90
    -91
    -92
    -93
    -94
    -95
    -96
    -97
    -98
    -99
    -100
    -101
    -102
    -103
    -104
    -105
    -106
    -107
    -108
    -109
    -
    #include <ESP8266WiFi.h>
    -#include <Wire.h>
    -#include <PubSubClient.h>
    -#include <Adafruit_HDC1000.h>
    -
    -#define wifi_ssid "YOUR WIFI SSID"
    -#define wifi_password "WIFI PASSWORD"
    -
    -#define mqtt_server "YOUR_MQTT_SERVER_HOST"
    -#define mqtt_user "your_username"
    -#define mqtt_password "your_password"
    -
    -#define humidity_topic "sensor/humidity"
    -#define temperature_topic "sensor/temperature"
    -
    -WiFiClient espClient;
    -PubSubClient client(espClient);
    -Adafruit_HDC1000 hdc = Adafruit_HDC1000();
    -
    -void setup() {
    -  Serial.begin(115200);
    -  setup_wifi();
    -  client.setServer(mqtt_server, 1883);
    -
    -  // Set SDA and SDL ports
    -  Wire.begin(2, 14);
    -
    -  // Start sensor
    -  if (!hdc.begin()) {
    -    Serial.println("Couldn't find sensor!");
    -    while (1);
    -  }}
    -
    -void setup_wifi() {
    -  delay(10);
    -  // We start by connecting to a WiFi network
    -  Serial.println();
    -  Serial.print("Connecting to ");
    -  Serial.println(wifi_ssid);
    -
    -  WiFi.begin(wifi_ssid, wifi_password);
    -
    -  while (WiFi.status() != WL_CONNECTED) {
    -    delay(500);
    -    Serial.print(".");
    -  }
    -
    -  Serial.println("");
    -  Serial.println("WiFi connected");
    -  Serial.println("IP address: ");
    -  Serial.println(WiFi.localIP());
    -}
    -
    -void reconnect() {
    -  // Loop until we're reconnected
    -  while (!client.connected()) {
    -    Serial.print("Attempting MQTT connection...");
    -    // Attempt to connect
    -    // If you do not want to use a username and password, change next line to
    -    // if (client.connect("ESP8266Client")) {
    -    if (client.connect("ESP8266Client", mqtt_user, mqtt_password)) {
    -      Serial.println("connected");
    -    } else {
    -      Serial.print("failed, rc=");
    -      Serial.print(client.state());
    -      Serial.println(" try again in 5 seconds");
    -      // Wait 5 seconds before retrying
    -      delay(5000);
    -    }
    -  }
    -}
    -
    -bool checkBound(float newValue, float prevValue, float maxDiff) {
    -  return newValue < prevValue - maxDiff || newValue > prevValue + maxDiff;
    -}
    -
    -long lastMsg = 0;
    -float temp = 0.0;
    -float hum = 0.0;
    -float diff = 1.0;
    -
    -void loop() {
    -  if (!client.connected()) {
    -    reconnect();
    -  }
    -  client.loop();
    -
    -  long now = millis();
    -  if (now - lastMsg > 1000) {
    -    lastMsg = now;
    -
    -    float newTemp = hdc.readTemperature();
    -    float newHum = hdc.readHumidity();
    -
    -    if (checkBound(newTemp, temp, diff)) {
    -      temp = newTemp;
    -      Serial.print("New temperature:");
    -      Serial.println(String(temp).c_str());
    -      client.publish(temperature_topic, String(temp).c_str(), true);
    -    }
    -
    -    if (checkBound(newHum, hum, diff)) {
    -      hum = newHum;
    -      Serial.print("New humidity:");
    -      Serial.println(String(hum).c_str());
    -      client.publish(humidity_topic, String(hum).c_str(), true);
    -    }
    -  }
    -}
    -
    -
    - -

    Configuring Home Assistant

    - -

    The last step is to integrate the sensor values into Home Assistant. This can be done by setting up Home Assistant to connect to the MQTT broker and subscribe to the sensor topics.

    - -
    - - -
    1
    -2
    -3
    -4
    -5
    -6
    -7
    -8
    -9
    -10
    -11
    -12
    -13
    -14
    -15
    -16
    -17
    -18
    -
    mqtt:
    -  broker: YOUR_MQTT_SERVER_HOST
    -  username: your_username
    -  password: your_password
    -
    -sensor:
    -  platform: mqtt
    -  name: "Temperature"
    -  state_topic: "sensor/temperature"
    -  qos: 0
    -  unit_of_measurement: "ºC"
    -
    -sensor 2:
    -  platform: mqtt
    -  name: "Humidity"
    -  state_topic: "sensor/humidity"
    -  qos: 0
    -  unit_of_measurement: "%"
    -
    -
    ]]>
    diff --git a/blog/categories/how-to/index.html b/blog/categories/how-to/index.html index 6dca75693a..d56814e525 100644 --- a/blog/categories/how-to/index.html +++ b/blog/categories/how-to/index.html @@ -122,6 +122,38 @@

    2016

    + + + +
    @@ -456,6 +488,12 @@ diff --git a/blog/categories/mqtt/atom.xml b/blog/categories/mqtt/atom.xml index eb95a029ca..82260ddfda 100644 --- a/blog/categories/mqtt/atom.xml +++ b/blog/categories/mqtt/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: MQTT | Home Assistant]]> - 2016-02-17T08:14:43+00:00 + 2016-02-18T06:58:42+00:00 https://home-assistant.io/ diff --git a/blog/categories/mqtt/index.html b/blog/categories/mqtt/index.html index b72a1faf9b..b18261e83a 100644 --- a/blog/categories/mqtt/index.html +++ b/blog/categories/mqtt/index.html @@ -294,6 +294,12 @@ diff --git a/blog/categories/public-service-announcement/atom.xml b/blog/categories/public-service-announcement/atom.xml index 3f5fb8c6d0..dd3bf16ec5 100644 --- a/blog/categories/public-service-announcement/atom.xml +++ b/blog/categories/public-service-announcement/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Public-Service-Announcement | Home Assistant]]> - 2016-02-17T08:14:43+00:00 + 2016-02-18T06:58:42+00:00 https://home-assistant.io/ diff --git a/blog/categories/public-service-announcement/index.html b/blog/categories/public-service-announcement/index.html index 502a19b1dc..7bcecdc366 100644 --- a/blog/categories/public-service-announcement/index.html +++ b/blog/categories/public-service-announcement/index.html @@ -219,6 +219,12 @@ diff --git a/blog/categories/release-notes/atom.xml b/blog/categories/release-notes/atom.xml index ea9e0dcf01..d48a0fe7b5 100644 --- a/blog/categories/release-notes/atom.xml +++ b/blog/categories/release-notes/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Release-Notes | Home Assistant]]> - 2016-02-17T08:14:43+00:00 + 2016-02-18T06:58:42+00:00 https://home-assistant.io/ diff --git a/blog/categories/release-notes/index.html b/blog/categories/release-notes/index.html index 6500a2c4e4..6163d9cde3 100644 --- a/blog/categories/release-notes/index.html +++ b/blog/categories/release-notes/index.html @@ -1088,6 +1088,12 @@ diff --git a/blog/categories/survey/atom.xml b/blog/categories/survey/atom.xml index 78660b4a3f..cc7ab34632 100644 --- a/blog/categories/survey/atom.xml +++ b/blog/categories/survey/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Survey | Home Assistant]]> - 2016-02-17T08:14:43+00:00 + 2016-02-18T06:58:42+00:00 https://home-assistant.io/ diff --git a/blog/categories/survey/index.html b/blog/categories/survey/index.html index 122d6e6abd..fe28a189b9 100644 --- a/blog/categories/survey/index.html +++ b/blog/categories/survey/index.html @@ -219,6 +219,12 @@ diff --git a/blog/categories/user-stories/atom.xml b/blog/categories/user-stories/atom.xml index 1b14f61728..c3f9caa40e 100644 --- a/blog/categories/user-stories/atom.xml +++ b/blog/categories/user-stories/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: User-Stories | Home Assistant]]> - 2016-02-17T08:14:43+00:00 + 2016-02-18T06:58:42+00:00 https://home-assistant.io/ diff --git a/blog/categories/user-stories/index.html b/blog/categories/user-stories/index.html index 994518f467..63889c6d1b 100644 --- a/blog/categories/user-stories/index.html +++ b/blog/categories/user-stories/index.html @@ -219,6 +219,12 @@ diff --git a/blog/index.html b/blog/index.html index 7ab5753292..1c3ce0781e 100644 --- a/blog/index.html +++ b/blog/index.html @@ -102,6 +102,62 @@ +
    +
    + +

    + Multi-room audio with Snapcast, Mopidy, and Home Assistant +

    + + + +
    + + + four minutes reading time + + + + + + Comments + +
    + +
    + + +
    +

    Would you like to listen to music in every room in your home, controlled from one source? Then multi-room audio is for you.

    + +

    Multi-room audio can be achieved by having a computer attached to speakers in every room. On each computer, services run to play and/or control the audio. With this DIY approach, the kind of computer and speakers is very much up to you. It could be your desktop computer with attached powered speakers, your HTPC hooked up to your TV and receiver, a Raspberry Pi with Amp or DAC, or even an Android device.

    + +

    You’ll need two key software packages, besides Home Assistant. The first is Mopidy, a music server that can play local files, or connect to streaming music services like Spotify. The second is Snapcast, which enables synchronized audio streaming across your network. Both can be integrated into Home Assistant. Each room audio device will run an instance of the Snapcast client, and optionally a Mopidy instance. Your server will run a special instance of Mopidy and the Snapcast server.

    + +

    Finally, you also need a player to control Mopidy. Any MPD-compatible player will work, and there are several Mopidy-only web-based options available. On Android, Remotedy is particularly nice since you can access multiple Mopidy instances in one place.

    + +

    Home Assistant will provide device status, and volume control for each room. If you want to play music in all your rooms (on all your clients), access the server instance of Mopidy. If you want to play music only in a specific room, access that specific Mopidy instance. If you’re using a web UI for Mopidy, you can add links to each instance in Home Assistant with the weblink component.

    + +

    + +

    + + + + Read on → + +
    +
    +
    +
    @@ -718,53 +774,6 @@ Philips Hue FAQ entries regarding reversing the decision.

    -
    -
    - -

    - Activating Tasker tasks from Home Assistant using command line switches -

    - - - -
    - - - three minutes reading time - - - - - - Comments - -
    - -
    - - -
    -


    -In this tutorial I will explain how you can activate Tasker tasks from Home Assistant command line switches. We are going to set up a switch that when toggled will make your Android device say either “On” or “Off”.

    - -

    You could also do this with the automation component instead so whenever you put your house to sleep mode for example your Android device will open up Google Play Books or the Kindle app ready for you to read as well as dimming your lights, but this tutorial is all about the switches.

    - - - - Read on → - -
    -
    -
    -
    -
    - -
    -
    - -

    - Nest in the house! -

    - - - -
    - - - less than one minute reading time - - - - - - Comments - -
    - -
    - - -
    -

    For thet majority of its existence, Home Assistant primary focus was on presence detection, lights and switches. But not anymore as we’re expanding the supported devices. Today, we’re proud to introduce Nest Thermostat integration for Home Assistant contributed by Stefano Fiorini!

    - -

    - -

    - -

    The new integration exists out of two parts: a generic thermostat component and a Nest platform implementation. The initial version implements provides a read-only card and services to control it. The plan is in the future to add temperature and away mode controls from the thermostat card and more info dialog. Internally, we are using the Python package python-nest by jkoelker to talk to the Nest.

    - -

    If you own a Nest thermostat, add the following lines to your home-assistant.conf:

    - -
    -
    [thermostat]
    -platform=nest
    -username=YOUR_USERNAME
    -password=YOUR_PASSWORD
    -
    -
    -
    - -

    diff --git a/blog/posts/5/index.html b/blog/posts/5/index.html index 8e8ed29c20..737e62ad6b 100644 --- a/blog/posts/5/index.html +++ b/blog/posts/5/index.html @@ -102,6 +102,64 @@ +
    +
    + +

    + Nest in the house! +

    + + + +
    + + + less than one minute reading time + + + + + + Comments + +
    + +
    + + +
    +

    For thet majority of its existence, Home Assistant primary focus was on presence detection, lights and switches. But not anymore as we’re expanding the supported devices. Today, we’re proud to introduce Nest Thermostat integration for Home Assistant contributed by Stefano Fiorini!

    + +

    + +

    + +

    The new integration exists out of two parts: a generic thermostat component and a Nest platform implementation. The initial version implements provides a read-only card and services to control it. The plan is in the future to add temperature and away mode controls from the thermostat card and more info dialog. Internally, we are using the Python package python-nest by jkoelker to talk to the Nest.

    + +

    If you own a Nest thermostat, add the following lines to your home-assistant.conf:

    + +
    +
    [thermostat]
    +platform=nest
    +username=YOUR_USERNAME
    +password=YOUR_PASSWORD
    +
    +
    +
    + + +
    +
    +
    +
    diff --git a/images/blog/2016-02-snapcast/diagram.png b/images/blog/2016-02-snapcast/diagram.png new file mode 100644 index 0000000000..fa894caae4 Binary files /dev/null and b/images/blog/2016-02-snapcast/diagram.png differ diff --git a/sitemap.xml b/sitemap.xml index 32587a604c..fc8fbec372 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1,5 +1,9 @@ + + https://home-assistant.io/blog/2016/02/18/multi-room-audio-with-snapcast/ + 2016-02-18T05:10:56+00:00 + https://home-assistant.io/blog/2016/02/13/speedtest-bloomsky-splunk-and-garage-doors/ 2016-02-13T06:15:00+00:00 @@ -1148,624 +1152,627 @@ https://home-assistant.io/blog/2016/02/13/speedtest-bloomsky-splunk-and-garage-doors/ + + https://home-assistant.io/blog/2016/02/18/multi-room-audio-with-snapcast/ + https://home-assistant.io/components/alarm_control_panel.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/alarm_control_panel.manual.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/alarm_control_panel.mqtt.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/arduino.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/automation.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/browser.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/camera.foscam.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/camera.generic.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/configurator.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/conversation.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_sun_light_trigger.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.actiontec.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.aruba.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.asuswrt.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.ddwrt.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.locative.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.luci.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.mqtt.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.netgear.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.nmap_scanner.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.owntracks.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.snmp.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.thomson.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.tomato.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.tplink.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/device_tracker.ubus.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/discovery.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/downloader.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/ecobee.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/group.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/history.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/ifttt.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/ifttt.manything.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/introduction.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/isy994.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/keyboard.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/light.blinksticklight.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/light.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/light.hue.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/light.hyperion.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/light.limitlessled.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/light.rfxtrx.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/light.tellstick.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/light.vera.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/light.wink.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/lock.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/lock.wink.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/logbook.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/media_player.cast.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/media_player.denon.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/media_player.firetv.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/media_player.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/media_player.itunes.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/media_player.kodi.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/media_player.mpd.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/media_player.plex.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/media_player.sonos.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/media_player.squeezebox.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/modbus.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/mqtt.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/notify.file.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/notify.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/notify.instapush.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/notify.nma.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/notify.pushbullet.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/notify.pushover.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/notify.slack.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/notify.smtp.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/notify.syslog.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/notify.telegram.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/notify.xmpp.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/rfxtrx.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/scene.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/script.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.arduino.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.arest.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.bitcoin.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.command_sensor.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.cpuspeed.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.dht.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.ecobee.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.efergy.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.forecast.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.glances.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.modbus.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.mqtt.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.mysensors.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.openweathermap.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.rest.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.rfxtrx.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.rpi_gpio.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.sabnzbd.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.speedtest.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.swiss_public_transport.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.systemmonitor.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.tellstick.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.temper.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.time_date.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.transmission.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.vera.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.wink.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sensor.worldclock.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/shell_command.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/simple_alarm.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/sun.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.arduino.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.arest.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.command_switch.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.edimax.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.hikvision.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.modbus.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.mqtt.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.rest.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.rfxtrx.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.rpi_gpio.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.tellstick.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.transmission.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.vera.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.wemo.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/switch.wink.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/tellstick.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/thermostat.ecobee.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/thermostat.heat_control.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/thermostat.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/thermostat.nest.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/thermostat.radiotherm.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/vera.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/verisure.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/wink.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/zone.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/components/zwave.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/demo/frontend.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/demo/index.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/developers/add_new_platform.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/developers/api.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/developers/architecture.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/developers/creating_components.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/developers/credits.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/developers/frontend.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/developers/python_api.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/developers/rest_api.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/developers/website.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/getting-started/android.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/getting-started/automation.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/getting-started/autostart.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/getting-started/configuration.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/getting-started/devices.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/getting-started/presence-detection.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/getting-started/troubleshooting-configuration.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/getting-started/troubleshooting.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/googlef4f3693c209fe788.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00 https://home-assistant.io/static/mdi-demo.html - 2016-02-17T08:13:32+00:00 + 2016-02-18T06:58:04+00:00