From eba36391fbd1f9e88cc1542033ee2ddf9e952d6b Mon Sep 17 00:00:00 2001 From: Travis CI Date: Tue, 19 Jul 2016 19:44:18 +0000 Subject: [PATCH] Site updated at 2016-07-19 19:44:18 UTC --- atom.xml | 152 ++++++-- blog/2014/12/18/website-launched/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- blog/2015/01/13/nest-in-da-house/index.html | 12 +- blog/2015/01/24/release-notes/index.html | 12 +- .../2015/02/08/looking-at-the-past/index.html | 12 +- blog/2015/02/24/streaming-updates/index.html | 12 +- .../index.html | 12 +- blog/2015/03/08/new-logo/index.html | 12 +- blog/2015/03/11/release-notes/index.html | 12 +- blog/2015/03/22/release-notes/index.html | 12 +- blog/2015/04/25/release-notes/index.html | 12 +- .../05/09/utc-time-zone-awareness/index.html | 12 +- blog/2015/05/14/release-notes/index.html | 12 +- blog/2015/06/10/release-notes/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../13/home-assistant-meets-ifttt/index.html | 12 +- .../index.html | 12 +- .../alarm-sonos-and-itunes-support/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../11/22/survey-november-2015/index.html | 12 +- .../12/05/community-highlights/index.html | 12 +- .../index.html | 12 +- .../12/07/influxdb-and-grafana/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../01/19/perfect-home-automation/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../multi-room-audio-with-snapcast/index.html | 12 +- .../02/20/community-highlights/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- blog/2016/04/07/static-website/index.html | 12 +- .../index.html | 12 +- .../04/17/updated-documentation/index.html | 12 +- .../04/19/to-infinity-and-beyond/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../05/06/open-iot-summit-talk/index.html | 12 +- .../empowering-scripts-and-alexa/index.html | 12 +- .../index.html | 12 +- blog/2016/05/18/why-we-use-polymer/index.html | 12 +- blog/2016/05/21/release-020/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../06/01/community-highlights/index.html | 12 +- .../08/super-fast-web-enocean-lirc/index.html | 12 +- .../home-assistant-at-pycon-2016/index.html | 12 +- .../index.html | 8 +- .../usb-webcams-and-home-assistant/index.html | 12 +- .../index.html | 12 +- .../index.html | 12 +- .../sqlalchemy-knx-join-simplisafe/index.html | 12 +- .../19/exporting-processing-data/index.html | 365 ++++++++++++++++++ blog/archives/index.html | 44 ++- blog/categories/community/atom.xml | 2 +- blog/categories/community/index.html | 12 +- blog/categories/device-tracking/atom.xml | 2 +- blog/categories/device-tracking/index.html | 12 +- blog/categories/esp8266/atom.xml | 2 +- blog/categories/esp8266/index.html | 12 +- blog/categories/how-to/atom.xml | 353 ++++++----------- blog/categories/how-to/index.html | 44 ++- blog/categories/ibeacons/atom.xml | 2 +- blog/categories/ibeacons/index.html | 12 +- blog/categories/internet-of-things/atom.xml | 2 +- blog/categories/internet-of-things/index.html | 12 +- blog/categories/mqtt/atom.xml | 2 +- blog/categories/mqtt/index.html | 12 +- blog/categories/organisation/atom.xml | 2 +- blog/categories/organisation/index.html | 12 +- blog/categories/owntracks/atom.xml | 2 +- blog/categories/owntracks/index.html | 12 +- blog/categories/presence-detection/atom.xml | 2 +- blog/categories/presence-detection/index.html | 12 +- .../public-service-announcement/atom.xml | 2 +- .../public-service-announcement/index.html | 12 +- blog/categories/release-notes/atom.xml | 2 +- blog/categories/release-notes/index.html | 12 +- blog/categories/survey/atom.xml | 2 +- blog/categories/survey/index.html | 12 +- blog/categories/talks/atom.xml | 2 +- blog/categories/talks/index.html | 12 +- blog/categories/technology/atom.xml | 2 +- blog/categories/technology/index.html | 12 +- blog/categories/user-stories/atom.xml | 2 +- blog/categories/user-stories/index.html | 12 +- blog/categories/video/atom.xml | 2 +- blog/categories/video/index.html | 12 +- blog/categories/website/atom.xml | 2 +- blog/categories/website/index.html | 12 +- blog/index.html | 102 +++-- blog/posts/2/index.html | 119 +++--- blog/posts/3/index.html | 121 +++--- blog/posts/4/index.html | 109 +++--- blog/posts/5/index.html | 104 ++--- blog/posts/6/index.html | 120 +++--- blog/posts/7/index.html | 127 +++--- blog/posts/8/index.html | 58 +++ components/media_player.braviatv/index.html | 7 + index.html | 10 +- sitemap.xml | 23 +- topics/platform_options/index.html | 12 +- 122 files changed, 1709 insertions(+), 1247 deletions(-) create mode 100644 blog/2016/07/19/exporting-processing-data/index.html diff --git a/atom.xml b/atom.xml index b95307e3cb..e43aa2e9dd 100644 --- a/atom.xml +++ b/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ @@ -13,6 +13,123 @@ Octopress + + <![CDATA[Exporting Home Assistant information]]> + + 2016-07-19T16:00:00+00:00 + https://home-assistant.io/blog/2016/07/19/exporting-processing-data +

+ +

The history component is tracking everything that is going on within Home Assistant. This means that you have access to all stored information about your home. Our history is not a full-fledged graphical processing and visualization component as you may know from systems and network monitoring tools. The current limitation is that you only can select a day for a visual output of your information and not a period. Also, there is no possibility to drill down on a specific entity.

+ +

This blog post will show you ways to export data for reporting, visualization, or further analysis of automation rules.

+ + + +

In this blog post I use the temperature of the Aare river close to where I live as a show case. The temperatures were recorded with the Swiss Hydrological Data sensor and the name of the sensor is sensor.aare.

+ +

The database is stored at <path to config dir>/.homeassistant/home-assistant_v2.db as SQLite database. In all examples we are going to use the path: /home/ha/.homeassistant/home-assistant_v2.db

+ +

If you are just curious what’s stored in your database then you can use the sqlite3 command-line tool or a graphical one like DB Browser for SQLite.

+ +

The table that is holding the states is called states. The events tables is responsible for storing the events which occurred. So, we will first check how many entries there are in the states table. sqlite3 needs to know where the databases is located. To work with your database make sure that Home Assistant is not running or create a copy of the existing database. It’s recommended to work with a copy.

+ +
+
$ sqlite3 /home/ha/.homeassistant/home-assistant_v2.db 
+SQLite version 3.11.0 2016-02-15 17:29:24
+sqlite> SELECT count(*) FROM states;
+24659
+
+
+
+ +

Let’s have a look at a sample SQL query. This query will show all states in a period for the sensor sensor.aare.

+ +
+
SELECT state, last_changed FROM states
+  WHERE
+    entity_id = 'sensor.aare'
+  AND
+     last_changed BETWEEN
+    '2016-07-05 00:00:00.000000' AND '2016-07-07 00:00:00.000000';
+
+
+
+ +

The SQL statement can be formed that it fits exactly what you need. This means that you can process the data in any way you want for further use. Often it makes sense to eliminate certain entries like Unknown or peaks.

+ +

If the above query is executed in DB Browser for SQLite you would be able to save the sensor’s graph as png.

+ +

+ + Visualization with DB Browser for SQLite +

+ +

You may ask: Why not do this with LibreOffice Calc or another spreadsheet application? As most spreadsheet applications are not able to work directly with SQLite database we are going to export the data from the database to CSV.

+ +
+
$ sqlite3 -header -csv /home/ha/.homeassistant/home-assistant_v2.db "SELECT last_changed, state FROM states WHERE entity_id = 'sensor.aare' AND last_changed BETWEEN '2016-07-05 00:00:00.000000' AND '2016-07-07 00:00:00.000000';" > sensor.csv
+
+
+
+ +

The ordering for the SELECT was changed to get the time stamps first and then the state. Now we can import the CSV file into the application of your choice, here it’s LibreOffice Calc.

+ +

+ + Import of the CSV file +

+ +

After the import a graph can be created over the existing data.

+ +

+ + Graph in LibreOffice +

+ +

You can also use matplotlib to generate graphs as an alternative to a spreadsheet application. This is a powerful Python 2D plotting library. With the built-in support for SQLite in Python it will only take a couple lines of code to visualize your data.

+ +
+
import sqlite3
+from matplotlib import dates
+import matplotlib.pyplot as plt
+
+import homeassistant.util.dt as dt
+
+values = []
+timestamps = []
+
+conn = sqlite3.connect('/home/ha/.homeassistant/home-assistant_v2.db')
+data = conn.execute("SELECT state, last_changed FROM states WHERE "
+                    "entity_id = 'sensor.aare' AND last_changed BETWEEN "
+                    "'2016-07-05 00:00:00.000000' AND "
+                    "'2016-07-07 00:00:00.000000'")
+
+for x in data:
+    timestamps.append(dates.date2num(dt.parse_datetime(x[1])))
+    values.append(float(x[0]))
+
+plt.plot_date(x=timestamps, y=values, fmt="r-")
+plt.ylabel('Temperature')
+plt.xlabel('Time line')
+
+plt.savefig('sensor.png')
+
+
+
+ +

Creating a connection to the database and executing a query is similar to the ways already seen. The return values from the query are splitted into two lists. The time stamps must be converted in an value which is accepted by matplotlib and then the graph is generated and saved as image.

+ +

+ + Sensor graph generated by matplotlib +

+ +

Most of the graphs are pretty ugly. So, further beautification will be needed. If you have created a nice report including some amazing graphs then the Home Assistant community would be grateful for sharing them in our forum.

+ +]]>
+
+ <![CDATA[0.24: SQLAlchemy, KNX, Join by Joaoapps, and SimpliSafe.]]> @@ -1181,39 +1298,6 @@ For example, my wife works next door - and I couldn’t detect whether she’s a

Today it has been almost 1.5 years since we started the website. We now have 264 components and platforms under our belt and have been honored with 1.5 million page views ✨. And hopefully we now also have documentation that our community deserves.

Finally, if you see some content that could use more clarifcation or is outdated, don’t hesitate to use the ‘Edit in GitHub’ link that is present on each page.

-]]> -
- - - <![CDATA[0.17: Onkyo, Panasonic, GTFS and config validation]]> - - 2016-04-09T06:10:00+00:00 - https://home-assistant.io/blog/2016/04/09/onkyo-panasonic-gtfs-and-config-validation - Another awesome release ready to hit your homes. YAML can be hard for beginners and more experienced automators. So to help catch those pesky errors that sneak into your files we’ve been hard at work to introduce config validation! Especially huge thanks to @jaharkes for his hard work on this. Config validation is still in it’s early stages. More common platforms and components have been added but we didn’t do everything yet.

- -

When we encounter an invalid config we will now write a warning to your logs. You can see those in the frontend by clicking on the last developer tool. We’re looking into options to make it more clear - it is a work in progress.

- -

Another big thing is the addition of GTFS support. You probably don’t know it, but GTFS is the standard that public transit companies all over the world use to distribute their schedule. This means that you can now have the time of the next bus/train/etc right in your frontend.

- -

- - - -

Breaking changes

- -

As of now we are not aware of any breaking changes. However, it might be that Home Assistant will not start for you because of an invalid configuration. A common mistake that people are making is that they are still referring to execute_service in their script configs. This should be service.

]]>
diff --git a/blog/2014/12/18/website-launched/index.html b/blog/2014/12/18/website-launched/index.html index 6ba7888f79..8dabc73b37 100644 --- a/blog/2014/12/18/website-launched/index.html +++ b/blog/2014/12/18/website-launched/index.html @@ -179,6 +179,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 c21d35cd17..5345dab10d 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 @@ -234,6 +234,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 34ef10b5bc..516507e73e 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 @@ -218,6 +218,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 a03289cabb..6ee374cab1 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 @@ -193,6 +193,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 0c681d909c..d903404cfb 100644 --- a/blog/2015/01/13/nest-in-da-house/index.html +++ b/blog/2015/01/13/nest-in-da-house/index.html @@ -196,6 +196,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 c72cf723ac..c7148850fa 100644 --- a/blog/2015/01/24/release-notes/index.html +++ b/blog/2015/01/24/release-notes/index.html @@ -202,6 +202,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 f6864c73ba..a6ac3013eb 100644 --- a/blog/2015/02/08/looking-at-the-past/index.html +++ b/blog/2015/02/08/looking-at-the-past/index.html @@ -210,6 +210,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 89f3898393..c09d3a33bf 100644 --- a/blog/2015/02/24/streaming-updates/index.html +++ b/blog/2015/02/24/streaming-updates/index.html @@ -195,6 +195,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 8f108f87ab..03c0908e54 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 @@ -185,6 +185,12 @@ diff --git a/blog/2015/03/08/new-logo/index.html b/blog/2015/03/08/new-logo/index.html index 99ca489b62..c620afa33a 100644 --- a/blog/2015/03/08/new-logo/index.html +++ b/blog/2015/03/08/new-logo/index.html @@ -186,6 +186,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 64a246881d..4609028541 100644 --- a/blog/2015/03/11/release-notes/index.html +++ b/blog/2015/03/11/release-notes/index.html @@ -225,6 +225,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 357a918373..642c837ce9 100644 --- a/blog/2015/03/22/release-notes/index.html +++ b/blog/2015/03/22/release-notes/index.html @@ -262,6 +262,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 653ff46bde..d9c5c73afc 100644 --- a/blog/2015/04/25/release-notes/index.html +++ b/blog/2015/04/25/release-notes/index.html @@ -273,6 +273,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 6995041213..ddd855acdf 100644 --- a/blog/2015/05/09/utc-time-zone-awareness/index.html +++ b/blog/2015/05/09/utc-time-zone-awareness/index.html @@ -208,6 +208,12 @@ diff --git a/blog/2015/05/14/release-notes/index.html b/blog/2015/05/14/release-notes/index.html index 35008e27e3..30d65f2717 100644 --- a/blog/2015/05/14/release-notes/index.html +++ b/blog/2015/05/14/release-notes/index.html @@ -300,6 +300,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 c85d66c658..829c439a21 100644 --- a/blog/2015/06/10/release-notes/index.html +++ b/blog/2015/06/10/release-notes/index.html @@ -353,6 +353,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 0e445c3773..916eded6d0 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 @@ -305,6 +305,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 7c6e7cd253..5543d3efeb 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 @@ -294,6 +294,12 @@ Support for Temper temperature sensors has been contributed by +
  • + Exporting Home Assistant information +
  • + + +
  • 0.24: SQLAlchemy, KNX, Join by Joaoapps, and SimpliSafe.
  • @@ -317,12 +323,6 @@ Support for Temper temperature sensors has been contributed by - 0.22: Pandora, BT Home Hub 5 and local file camera. - - - 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 48778003a3..d121ec38e8 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 @@ -204,6 +204,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 aaa48a7efe..eb42b92827 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 @@ -317,6 +317,12 @@ The automation and script syntax here is using a deprecated and no longer suppor 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 69053b0f83..913620d396 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 @@ -291,6 +291,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 ad6a8c6557..1ca30f45d4 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 @@ -494,6 +494,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 c204d50f51..f34b025564 100644 --- a/blog/2015/09/13/home-assistant-meets-ifttt/index.html +++ b/blog/2015/09/13/home-assistant-meets-ifttt/index.html @@ -353,6 +353,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 29eba6cc5d..3c757e2fd9 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 @@ -254,6 +254,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 3bf9bf8d7c..2dd225dcd0 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 @@ -233,6 +233,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 25851bc1f2..a804d46494 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 @@ -209,6 +209,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 f522d122b9..2a738b1b8c 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 @@ -553,6 +553,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 d5f81a78e4..eca8bce999 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 @@ -198,6 +198,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 0a5cde6485..6aef0840e3 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 @@ -220,6 +220,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 a9af41be24..2fbc265280 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 @@ -216,6 +216,12 @@ diff --git a/blog/2015/11/22/survey-november-2015/index.html b/blog/2015/11/22/survey-november-2015/index.html index cd77d53505..be96ba13db 100644 --- a/blog/2015/11/22/survey-november-2015/index.html +++ b/blog/2015/11/22/survey-november-2015/index.html @@ -256,6 +256,12 @@ diff --git a/blog/2015/12/05/community-highlights/index.html b/blog/2015/12/05/community-highlights/index.html index 8495a3c6ad..5d848aec5f 100644 --- a/blog/2015/12/05/community-highlights/index.html +++ b/blog/2015/12/05/community-highlights/index.html @@ -191,6 +191,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 e375ae99db..10db93f71a 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 @@ -198,6 +198,12 @@ diff --git a/blog/2015/12/07/influxdb-and-grafana/index.html b/blog/2015/12/07/influxdb-and-grafana/index.html index 16e58a916c..35ea7a5461 100644 --- a/blog/2015/12/07/influxdb-and-grafana/index.html +++ b/blog/2015/12/07/influxdb-and-grafana/index.html @@ -289,6 +289,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 90d3d46c61..f80a8a2d90 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 @@ -239,6 +239,12 @@ requests.get(' +
  • + Exporting Home Assistant information +
  • + + +
  • 0.24: SQLAlchemy, KNX, Join by Joaoapps, and SimpliSafe.
  • @@ -262,12 +268,6 @@ requests.get(' - 0.22: Pandora, BT Home Hub 5 and local file camera. - - - 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 2c2d291f15..9f08215e4e 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 @@ -211,6 +211,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 5b898bf9d5..4d207302f0 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 @@ -278,6 +278,12 @@ sudo docker run -it --rm -p 80:80 --name certbot \ 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 23fd5d341a..6438529056 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 @@ -232,6 +232,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 81525819fd..4ba1136cdd 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 @@ -212,6 +212,12 @@ diff --git a/blog/2016/01/19/perfect-home-automation/index.html b/blog/2016/01/19/perfect-home-automation/index.html index da3beaabb5..aabfd4d77c 100644 --- a/blog/2016/01/19/perfect-home-automation/index.html +++ b/blog/2016/01/19/perfect-home-automation/index.html @@ -216,6 +216,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 e9ed3666fc..38f0235491 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 @@ -218,6 +218,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 41e635248c..2819ec9d18 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 @@ -405,6 +405,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 39e941f09a..71bb2ff4d8 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 @@ -355,6 +355,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 cb957a7463..e49726cd2c 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 @@ -221,6 +221,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 index 83908bf5b6..38557cacce 100644 --- a/blog/2016/02/18/multi-room-audio-with-snapcast/index.html +++ b/blog/2016/02/18/multi-room-audio-with-snapcast/index.html @@ -323,6 +323,12 @@ output = audioresample ! audio/x-raw,rate=48000,channels=2,format=S16LE ! audioc diff --git a/blog/2016/02/20/community-highlights/index.html b/blog/2016/02/20/community-highlights/index.html index 54910c0121..7d6fc42b44 100644 --- a/blog/2016/02/20/community-highlights/index.html +++ b/blog/2016/02/20/community-highlights/index.html @@ -231,6 +231,12 @@ Hold your NFC tag against the belly of Garfield to unlock the alarm. diff --git a/blog/2016/02/27/steam-d-link-smart-plugs-and-neurio-energy-sensors/index.html b/blog/2016/02/27/steam-d-link-smart-plugs-and-neurio-energy-sensors/index.html index 82430e5f54..3471d71cd5 100644 --- a/blog/2016/02/27/steam-d-link-smart-plugs-and-neurio-energy-sensors/index.html +++ b/blog/2016/02/27/steam-d-link-smart-plugs-and-neurio-energy-sensors/index.html @@ -220,6 +220,12 @@ diff --git a/blog/2016/03/12/z-wave-pep257-templated-service-calls/index.html b/blog/2016/03/12/z-wave-pep257-templated-service-calls/index.html index b12ef10e97..d0fb01ff20 100644 --- a/blog/2016/03/12/z-wave-pep257-templated-service-calls/index.html +++ b/blog/2016/03/12/z-wave-pep257-templated-service-calls/index.html @@ -226,6 +226,12 @@ player state attributes. This change affects automations, scripts and scenes. +
  • + Exporting Home Assistant information +
  • + + +
  • 0.24: SQLAlchemy, KNX, Join by Joaoapps, and SimpliSafe.
  • @@ -249,12 +255,6 @@ player state attributes. This change affects automations, scripts and scenes. - -
  • - 0.22: Pandora, BT Home Hub 5 and local file camera. -
  • - - diff --git a/blog/2016/03/26/embedded-mqtt-broker-uber-yamaha-growl/index.html b/blog/2016/03/26/embedded-mqtt-broker-uber-yamaha-growl/index.html index 8a0ba66f00..ff692ed387 100644 --- a/blog/2016/03/26/embedded-mqtt-broker-uber-yamaha-growl/index.html +++ b/blog/2016/03/26/embedded-mqtt-broker-uber-yamaha-growl/index.html @@ -237,6 +237,12 @@ diff --git a/blog/2016/04/05/your-hub-should-be-local-and-open/index.html b/blog/2016/04/05/your-hub-should-be-local-and-open/index.html index 1d636a9d36..137be17276 100644 --- a/blog/2016/04/05/your-hub-should-be-local-and-open/index.html +++ b/blog/2016/04/05/your-hub-should-be-local-and-open/index.html @@ -189,6 +189,12 @@ diff --git a/blog/2016/04/07/static-website/index.html b/blog/2016/04/07/static-website/index.html index 66c3b6af69..6c5422fc43 100644 --- a/blog/2016/04/07/static-website/index.html +++ b/blog/2016/04/07/static-website/index.html @@ -195,6 +195,12 @@ diff --git a/blog/2016/04/09/onkyo-panasonic-gtfs-and-config-validation/index.html b/blog/2016/04/09/onkyo-panasonic-gtfs-and-config-validation/index.html index b48ad38fb0..b1f1b5d965 100644 --- a/blog/2016/04/09/onkyo-panasonic-gtfs-and-config-validation/index.html +++ b/blog/2016/04/09/onkyo-panasonic-gtfs-and-config-validation/index.html @@ -203,6 +203,12 @@ diff --git a/blog/2016/04/17/updated-documentation/index.html b/blog/2016/04/17/updated-documentation/index.html index 56a9b0d5ed..1478767884 100644 --- a/blog/2016/04/17/updated-documentation/index.html +++ b/blog/2016/04/17/updated-documentation/index.html @@ -187,6 +187,12 @@ diff --git a/blog/2016/04/19/to-infinity-and-beyond/index.html b/blog/2016/04/19/to-infinity-and-beyond/index.html index 62377f85a1..be22afed5d 100644 --- a/blog/2016/04/19/to-infinity-and-beyond/index.html +++ b/blog/2016/04/19/to-infinity-and-beyond/index.html @@ -204,6 +204,12 @@ diff --git a/blog/2016/04/20/bluetooth-lg-webos-tvs-and-roombas/index.html b/blog/2016/04/20/bluetooth-lg-webos-tvs-and-roombas/index.html index a46c8385a4..beda9811cc 100644 --- a/blog/2016/04/20/bluetooth-lg-webos-tvs-and-roombas/index.html +++ b/blog/2016/04/20/bluetooth-lg-webos-tvs-and-roombas/index.html @@ -222,6 +222,12 @@ diff --git a/blog/2016/04/30/ibeacons-part-1-making-presence-detection-work-better/index.html b/blog/2016/04/30/ibeacons-part-1-making-presence-detection-work-better/index.html index bb5d8e2cb4..b569c71d2b 100644 --- a/blog/2016/04/30/ibeacons-part-1-making-presence-detection-work-better/index.html +++ b/blog/2016/04/30/ibeacons-part-1-making-presence-detection-work-better/index.html @@ -313,6 +313,12 @@ For example, my wife works next door - and I couldn’t detect whether she’s a diff --git a/blog/2016/05/06/open-iot-summit-talk/index.html b/blog/2016/05/06/open-iot-summit-talk/index.html index af2abf9cbd..8c7644c585 100644 --- a/blog/2016/05/06/open-iot-summit-talk/index.html +++ b/blog/2016/05/06/open-iot-summit-talk/index.html @@ -185,6 +185,12 @@ diff --git a/blog/2016/05/07/empowering-scripts-and-alexa/index.html b/blog/2016/05/07/empowering-scripts-and-alexa/index.html index bfa1479519..2ee33d53c0 100644 --- a/blog/2016/05/07/empowering-scripts-and-alexa/index.html +++ b/blog/2016/05/07/empowering-scripts-and-alexa/index.html @@ -275,6 +275,12 @@ diff --git a/blog/2016/05/12/video-configuring-home-assistant/index.html b/blog/2016/05/12/video-configuring-home-assistant/index.html index 49cbabda33..9e04e7011b 100644 --- a/blog/2016/05/12/video-configuring-home-assistant/index.html +++ b/blog/2016/05/12/video-configuring-home-assistant/index.html @@ -185,6 +185,12 @@ diff --git a/blog/2016/05/18/why-we-use-polymer/index.html b/blog/2016/05/18/why-we-use-polymer/index.html index 9a4157a66d..63e84796ec 100644 --- a/blog/2016/05/18/why-we-use-polymer/index.html +++ b/blog/2016/05/18/why-we-use-polymer/index.html @@ -199,6 +199,12 @@ diff --git a/blog/2016/05/21/release-020/index.html b/blog/2016/05/21/release-020/index.html index 09598cb511..1ae4bc5aab 100644 --- a/blog/2016/05/21/release-020/index.html +++ b/blog/2016/05/21/release-020/index.html @@ -220,6 +220,12 @@ diff --git a/blog/2016/05/22/get-started-with-all-in-one-installer/index.html b/blog/2016/05/22/get-started-with-all-in-one-installer/index.html index 8213fa1f2b..9589513fcf 100644 --- a/blog/2016/05/22/get-started-with-all-in-one-installer/index.html +++ b/blog/2016/05/22/get-started-with-all-in-one-installer/index.html @@ -191,6 +191,12 @@ diff --git a/blog/2016/05/26/ibeacons-how-to-track-things-that-cant-track-themselves-part-ii/index.html b/blog/2016/05/26/ibeacons-how-to-track-things-that-cant-track-themselves-part-ii/index.html index 8fba3cc7c1..949c15419d 100644 --- a/blog/2016/05/26/ibeacons-how-to-track-things-that-cant-track-themselves-part-ii/index.html +++ b/blog/2016/05/26/ibeacons-how-to-track-things-that-cant-track-themselves-part-ii/index.html @@ -329,6 +329,12 @@ diff --git a/blog/2016/06/01/community-highlights/index.html b/blog/2016/06/01/community-highlights/index.html index e1f09eee2d..8ed8b3c231 100644 --- a/blog/2016/06/01/community-highlights/index.html +++ b/blog/2016/06/01/community-highlights/index.html @@ -205,6 +205,12 @@ diff --git a/blog/2016/06/08/super-fast-web-enocean-lirc/index.html b/blog/2016/06/08/super-fast-web-enocean-lirc/index.html index e9f8463dc0..2825150769 100644 --- a/blog/2016/06/08/super-fast-web-enocean-lirc/index.html +++ b/blog/2016/06/08/super-fast-web-enocean-lirc/index.html @@ -239,6 +239,12 @@ diff --git a/blog/2016/06/13/home-assistant-at-pycon-2016/index.html b/blog/2016/06/13/home-assistant-at-pycon-2016/index.html index f4a6ef9586..2c4f927e96 100644 --- a/blog/2016/06/13/home-assistant-at-pycon-2016/index.html +++ b/blog/2016/06/13/home-assistant-at-pycon-2016/index.html @@ -210,6 +210,12 @@ diff --git a/blog/2016/06/18/pandora-bt-home-hub-5-and-local-file-camera/index.html b/blog/2016/06/18/pandora-bt-home-hub-5-and-local-file-camera/index.html index 1dc06a4a33..72c82b390a 100644 --- a/blog/2016/06/18/pandora-bt-home-hub-5-and-local-file-camera/index.html +++ b/blog/2016/06/18/pandora-bt-home-hub-5-and-local-file-camera/index.html @@ -234,6 +234,12 @@ diff --git a/blog/2016/06/23/usb-webcams-and-home-assistant/index.html b/blog/2016/06/23/usb-webcams-and-home-assistant/index.html index ec34b1cc6d..3f7e9ae408 100644 --- a/blog/2016/06/23/usb-webcams-and-home-assistant/index.html +++ b/blog/2016/06/23/usb-webcams-and-home-assistant/index.html @@ -300,6 +300,12 @@ target_dir /tmp diff --git a/blog/2016/07/01/envisalink-homematic-hdmi-cec-and-sony-bravia-tv/index.html b/blog/2016/07/01/envisalink-homematic-hdmi-cec-and-sony-bravia-tv/index.html index f6457d5261..81235ccbbc 100644 --- a/blog/2016/07/01/envisalink-homematic-hdmi-cec-and-sony-bravia-tv/index.html +++ b/blog/2016/07/01/envisalink-homematic-hdmi-cec-and-sony-bravia-tv/index.html @@ -233,6 +233,12 @@ diff --git a/blog/2016/07/06/pocketchip-running-home-assistant/index.html b/blog/2016/07/06/pocketchip-running-home-assistant/index.html index 272f46948f..ad7199ad3b 100644 --- a/blog/2016/07/06/pocketchip-running-home-assistant/index.html +++ b/blog/2016/07/06/pocketchip-running-home-assistant/index.html @@ -236,6 +236,12 @@ $ hass --open-ui diff --git a/blog/2016/07/16/sqlalchemy-knx-join-simplisafe/index.html b/blog/2016/07/16/sqlalchemy-knx-join-simplisafe/index.html index bdeb6d2d1e..45e64b262c 100644 --- a/blog/2016/07/16/sqlalchemy-knx-join-simplisafe/index.html +++ b/blog/2016/07/16/sqlalchemy-knx-join-simplisafe/index.html @@ -232,6 +232,12 @@ $ hass --script db_migrator --config /path/to/config diff --git a/blog/2016/07/19/exporting-processing-data/index.html b/blog/2016/07/19/exporting-processing-data/index.html new file mode 100644 index 0000000000..ba07dadb68 --- /dev/null +++ b/blog/2016/07/19/exporting-processing-data/index.html @@ -0,0 +1,365 @@ + + + + + + + + + + Exporting Home Assistant information - Home Assistant + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    + +
    +
    + + + +
    +
    + +
    + + +
    + +
    + +

    Exporting Home Assistant information

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

    + +

    The history component is tracking everything that is going on within Home Assistant. This means that you have access to all stored information about your home. Our history is not a full-fledged graphical processing and visualization component as you may know from systems and network monitoring tools. The current limitation is that you only can select a day for a visual output of your information and not a period. Also, there is no possibility to drill down on a specific entity.

    + +

    This blog post will show you ways to export data for reporting, visualization, or further analysis of automation rules.

    + + + +

    In this blog post I use the temperature of the Aare river close to where I live as a show case. The temperatures were recorded with the Swiss Hydrological Data sensor and the name of the sensor is sensor.aare.

    + +

    The database is stored at <path to config dir>/.homeassistant/home-assistant_v2.db as SQLite database. In all examples we are going to use the path: /home/ha/.homeassistant/home-assistant_v2.db

    + +

    If you are just curious what’s stored in your database then you can use the sqlite3 command-line tool or a graphical one like DB Browser for SQLite.

    + +

    The table that is holding the states is called states. The events tables is responsible for storing the events which occurred. So, we will first check how many entries there are in the states table. sqlite3 needs to know where the databases is located. To work with your database make sure that Home Assistant is not running or create a copy of the existing database. It’s recommended to work with a copy.

    + +
    +
    $ sqlite3 /home/ha/.homeassistant/home-assistant_v2.db 
    +SQLite version 3.11.0 2016-02-15 17:29:24
    +sqlite> SELECT count(*) FROM states;
    +24659
    +
    +
    +
    + +

    Let’s have a look at a sample SQL query. This query will show all states in a period for the sensor sensor.aare.

    + +
    +
    SELECT state, last_changed FROM states
    +  WHERE
    +    entity_id = 'sensor.aare'
    +  AND
    +     last_changed BETWEEN
    +    '2016-07-05 00:00:00.000000' AND '2016-07-07 00:00:00.000000';
    +
    +
    +
    + +

    The SQL statement can be formed that it fits exactly what you need. This means that you can process the data in any way you want for further use. Often it makes sense to eliminate certain entries like Unknown or peaks.

    + +

    If the above query is executed in DB Browser for SQLite you would be able to save the sensor’s graph as png.

    + +

    + + Visualization with DB Browser for SQLite +

    + +

    You may ask: Why not do this with LibreOffice Calc or another spreadsheet application? As most spreadsheet applications are not able to work directly with SQLite database we are going to export the data from the database to CSV.

    + +
    +
    $ sqlite3 -header -csv /home/ha/.homeassistant/home-assistant_v2.db "SELECT last_changed, state FROM states WHERE entity_id = 'sensor.aare' AND last_changed BETWEEN '2016-07-05 00:00:00.000000' AND '2016-07-07 00:00:00.000000';" > sensor.csv
    +
    +
    +
    + +

    The ordering for the SELECT was changed to get the time stamps first and then the state. Now we can import the CSV file into the application of your choice, here it’s LibreOffice Calc.

    + +

    + + Import of the CSV file +

    + +

    After the import a graph can be created over the existing data.

    + +

    + + Graph in LibreOffice +

    + +

    You can also use matplotlib to generate graphs as an alternative to a spreadsheet application. This is a powerful Python 2D plotting library. With the built-in support for SQLite in Python it will only take a couple lines of code to visualize your data.

    + +
    +
    import sqlite3
    +from matplotlib import dates
    +import matplotlib.pyplot as plt
    +
    +import homeassistant.util.dt as dt
    +
    +values = []
    +timestamps = []
    +
    +conn = sqlite3.connect('/home/ha/.homeassistant/home-assistant_v2.db')
    +data = conn.execute("SELECT state, last_changed FROM states WHERE "
    +                    "entity_id = 'sensor.aare' AND last_changed BETWEEN "
    +                    "'2016-07-05 00:00:00.000000' AND "
    +                    "'2016-07-07 00:00:00.000000'")
    +
    +for x in data:
    +    timestamps.append(dates.date2num(dt.parse_datetime(x[1])))
    +    values.append(float(x[0]))
    +
    +plt.plot_date(x=timestamps, y=values, fmt="r-")
    +plt.ylabel('Temperature')
    +plt.xlabel('Time line')
    +
    +plt.savefig('sensor.png')
    +
    +
    +
    + +

    Creating a connection to the database and executing a query is similar to the ways already seen. The return values from the query are splitted into two lists. The time stamps must be converted in an value which is accepted by matplotlib and then the graph is generated and saved as image.

    + +

    + + Sensor graph generated by matplotlib +

    + +

    Most of the graphs are pretty ugly. So, further beautification will be needed. If you have created a nice report including some amazing graphs then the Home Assistant community would be grateful for sharing them in our forum.

    +
    + + +
    +

    Comments

    +
    +
    + + +
    + + + + +
    +
    + + + + + + + \ No newline at end of file diff --git a/blog/archives/index.html b/blog/archives/index.html index f5ac2d4a55..6c23cc10a7 100644 --- a/blog/archives/index.html +++ b/blog/archives/index.html @@ -98,6 +98,38 @@

    2016

    + + + +
    @@ -2467,6 +2499,12 @@ diff --git a/blog/categories/community/atom.xml b/blog/categories/community/atom.xml index 1806261131..cd5a3d6185 100644 --- a/blog/categories/community/atom.xml +++ b/blog/categories/community/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Community | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/community/index.html b/blog/categories/community/index.html index fd81ae6819..27928892bb 100644 --- a/blog/categories/community/index.html +++ b/blog/categories/community/index.html @@ -268,6 +268,12 @@ diff --git a/blog/categories/device-tracking/atom.xml b/blog/categories/device-tracking/atom.xml index 5cb14d40bd..5d5d4742c2 100644 --- a/blog/categories/device-tracking/atom.xml +++ b/blog/categories/device-tracking/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Device-Tracking | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/device-tracking/index.html b/blog/categories/device-tracking/index.html index b387f2339e..ff8ac71811 100644 --- a/blog/categories/device-tracking/index.html +++ b/blog/categories/device-tracking/index.html @@ -199,6 +199,12 @@ diff --git a/blog/categories/esp8266/atom.xml b/blog/categories/esp8266/atom.xml index 95ccc2cee7..c7bbff0c60 100644 --- a/blog/categories/esp8266/atom.xml +++ b/blog/categories/esp8266/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: ESP8266 | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/esp8266/index.html b/blog/categories/esp8266/index.html index 44e616acca..c10966e86e 100644 --- a/blog/categories/esp8266/index.html +++ b/blog/categories/esp8266/index.html @@ -199,6 +199,12 @@ diff --git a/blog/categories/how-to/atom.xml b/blog/categories/how-to/atom.xml index 2b48c598d4..1afc1f104a 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-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ @@ -13,6 +13,123 @@ Octopress + + <![CDATA[Exporting Home Assistant information]]> + + 2016-07-19T16:00:00+00:00 + https://home-assistant.io/blog/2016/07/19/exporting-processing-data +

    + +

    The history component is tracking everything that is going on within Home Assistant. This means that you have access to all stored information about your home. Our history is not a full-fledged graphical processing and visualization component as you may know from systems and network monitoring tools. The current limitation is that you only can select a day for a visual output of your information and not a period. Also, there is no possibility to drill down on a specific entity.

    + +

    This blog post will show you ways to export data for reporting, visualization, or further analysis of automation rules.

    + + + +

    In this blog post I use the temperature of the Aare river close to where I live as a show case. The temperatures were recorded with the Swiss Hydrological Data sensor and the name of the sensor is sensor.aare.

    + +

    The database is stored at <path to config dir>/.homeassistant/home-assistant_v2.db as SQLite database. In all examples we are going to use the path: /home/ha/.homeassistant/home-assistant_v2.db

    + +

    If you are just curious what’s stored in your database then you can use the sqlite3 command-line tool or a graphical one like DB Browser for SQLite.

    + +

    The table that is holding the states is called states. The events tables is responsible for storing the events which occurred. So, we will first check how many entries there are in the states table. sqlite3 needs to know where the databases is located. To work with your database make sure that Home Assistant is not running or create a copy of the existing database. It’s recommended to work with a copy.

    + +
    +
    $ sqlite3 /home/ha/.homeassistant/home-assistant_v2.db 
    +SQLite version 3.11.0 2016-02-15 17:29:24
    +sqlite> SELECT count(*) FROM states;
    +24659
    +
    +
    +
    + +

    Let’s have a look at a sample SQL query. This query will show all states in a period for the sensor sensor.aare.

    + +
    +
    SELECT state, last_changed FROM states
    +  WHERE
    +    entity_id = 'sensor.aare'
    +  AND
    +     last_changed BETWEEN
    +    '2016-07-05 00:00:00.000000' AND '2016-07-07 00:00:00.000000';
    +
    +
    +
    + +

    The SQL statement can be formed that it fits exactly what you need. This means that you can process the data in any way you want for further use. Often it makes sense to eliminate certain entries like Unknown or peaks.

    + +

    If the above query is executed in DB Browser for SQLite you would be able to save the sensor’s graph as png.

    + +

    + + Visualization with DB Browser for SQLite +

    + +

    You may ask: Why not do this with LibreOffice Calc or another spreadsheet application? As most spreadsheet applications are not able to work directly with SQLite database we are going to export the data from the database to CSV.

    + +
    +
    $ sqlite3 -header -csv /home/ha/.homeassistant/home-assistant_v2.db "SELECT last_changed, state FROM states WHERE entity_id = 'sensor.aare' AND last_changed BETWEEN '2016-07-05 00:00:00.000000' AND '2016-07-07 00:00:00.000000';" > sensor.csv
    +
    +
    +
    + +

    The ordering for the SELECT was changed to get the time stamps first and then the state. Now we can import the CSV file into the application of your choice, here it’s LibreOffice Calc.

    + +

    + + Import of the CSV file +

    + +

    After the import a graph can be created over the existing data.

    + +

    + + Graph in LibreOffice +

    + +

    You can also use matplotlib to generate graphs as an alternative to a spreadsheet application. This is a powerful Python 2D plotting library. With the built-in support for SQLite in Python it will only take a couple lines of code to visualize your data.

    + +
    +
    import sqlite3
    +from matplotlib import dates
    +import matplotlib.pyplot as plt
    +
    +import homeassistant.util.dt as dt
    +
    +values = []
    +timestamps = []
    +
    +conn = sqlite3.connect('/home/ha/.homeassistant/home-assistant_v2.db')
    +data = conn.execute("SELECT state, last_changed FROM states WHERE "
    +                    "entity_id = 'sensor.aare' AND last_changed BETWEEN "
    +                    "'2016-07-05 00:00:00.000000' AND "
    +                    "'2016-07-07 00:00:00.000000'")
    +
    +for x in data:
    +    timestamps.append(dates.date2num(dt.parse_datetime(x[1])))
    +    values.append(float(x[0]))
    +
    +plt.plot_date(x=timestamps, y=values, fmt="r-")
    +plt.ylabel('Temperature')
    +plt.xlabel('Time line')
    +
    +plt.savefig('sensor.png')
    +
    +
    +
    + +

    Creating a connection to the database and executing a query is similar to the ways already seen. The return values from the query are splitted into two lists. The time stamps must be converted in an value which is accepted by matplotlib and then the graph is generated and saved as image.

    + +

    + + Sensor graph generated by matplotlib +

    + +

    Most of the graphs are pretty ugly. So, further beautification will be needed. If you have created a nice report including some amazing graphs then the Home Assistant community would be grateful for sharing them in our forum.

    + +]]>
    +
    + <![CDATA[PocketCHIP running Home Assistant]]> @@ -388,240 +505,6 @@ output = audioresample ! audio/x-raw,rate=48000,channels=2,format=S16LE ! audioc
    -]]> - - - - <![CDATA[Smarter SmartThings with MQTT and Home Assistant]]> - - 2016-02-09T07:44:00+00:00 - https://home-assistant.io/blog/2016/02/09/Smarter-Smart-Things-with-MQTT-and-Home-Assistant - This is a guest post by Home Assistant users Jeremiah Wuenschel and St. John Johnson.

    - -

    So you own a SmartThings Hub. You probably bought it when you were looking to get into the whole Home Automation hobby because it worked with pretty much everything and offered you the ability to automate anything. After a week of ownership, you realized that building dashboards and automating required writing way more Groovy then you expected. Then one day you were browsing reddit and discovered the amazingness that is Home Assistant! A solution that offered dashboards, graphs, working support for Nest, and REAL EASY automation!

    - -

    You spent your weekend getting everything set up, showing it off to your significant other, but in the end you got stumped when it came to integrating with all your existing SmartThings toys. What do I do now? Should I buy another hub? Should I just buy a Z-Wave stick?

    - -

    That’s where we came in. We wanted a solution that can bridge the awesomeness of Home Assistant with the SmartThings hub that works with almost everything.

    - -

    - -

    - - - -

    Glossary

    - -

    This is going to be a pretty detailed tutorial on setting up our SmartThings bridge. However, there are a couple key terms that might be new to you:

    - -
      -
    • MQTT: A lightweight message protocol for listening and publishing events that happen. Many home automation platforms have built in support for this (especially Home Assistant).
    • -
    • Docker: A tool for running applications that are self-contained. No need for installing any dependencies or worrying about conflicts. Installs easily on Linux and OSX.
    • -
    - -

    Setting up the Bridge

    - -

    MQTT

    - -

    Assuming that you already have Home Assistant and Smart Things running, you will first want to get an MQTT broker running. There are a handful of MQTT brokers available in Open Source land. We chose Mosca for its simplicity.

    - -

    There is very little you need to do to get Mosca running. The easiest approach is to use Docker, and run a command like the following:

    - -
    -
    $ docker run \
    -    -d \
    -    --name="mqtt" \
    -    -v /opt/mosca:/db \
    -    -p 1883:1883 \
    -    matteocollina/mosca
    -
    -
    -
    - -

    This will start Mosca up inside of a docker container, while keeping persistent storage for Mosca in /opt/mosca. The default configuration is the only thing we need to get things up and running.

    - -

    If you don’t want to mess with Docker and can get node.js installed without trouble, the standalone instructions are all you need.

    - -

    MQTT Bridge

    - -

    This is the small piece of magic that bridges the gap between MQTT and SmartThings. It is a node.js app, and like Mosca it is probably easiest to install with Docker:

    - -
    -
    $ docker run \
    -    -d \
    -    --name="mqtt-bridge" \
    -    -v /opt/mqtt-bridge:/config \
    -    -p 8080:8080 \
    -    stjohnjohnson/smartthings-mqtt-bridge
    -
    -
    -
    - -

    The code for this bridge is on Github if you want to start it up independently.

    - -

    The MQTT Bridge only needs to know where your MQTT broker lives. If you are using these docker commands as-is, edit /opt/mqtt-bridge/config.yml to look like this:

    - -
    -
    ---
    -mqtt:
    -    host: <IP of the host>
    -
    -
    -
    - -

    Restart the bridge, and you are ready to go:

    - -
    -
    $ docker restart mqtt-bridge
    -
    -
    -
    - -

    SmartThings Device

    - -

    The next step (and possibly the most confusing) is the device type. Go to the Smart Things Device IDE and Create New Device Handler. Choose From Code and paste in the MQTT Bridge Device Code. Click Save, Publish, and then For Me.

    - -

    Now to install your new Device Handler. Go back to My Devices in the IDE, and click New Device. Enter a name, and pick any random set of characters for the Device Network Id (this will automatically update later). For Type, scroll to the bottom of the list and find your newly created MQTT Bridge. Fill in the other boxes however you like.

    - -

    Go back to My Devices, and click on your new device in the list. This will bring up a page that allows you to edit your device’s Preferences. Click edit and fill in the 3 pieces of information it asks for.

    - -
      -
    • MQTT Bridge IP Address: <IP address of the MQTT Bridge from the previous step>
    • -
    • MQTT Bridge Port: <8080 if you have changed nothing in the previous commands>
    • -
    • MQTT Bridge MAC Address: <Mac address of machine running the Bridge code>
    • -
    - -

    This will create the link between SmartThings and the MQTT Bridge.

    - -

    SmartThings App

    - -

    The last step is to setup the SmartApp. After this, any registered devices will start sending their events to MQTT.

    - -

    Go to the Smart App IDE. Click New SmartApp, followed by From Code. Paste in the MQTT Bridge SmartApp code and click Save. Click Publish and then For Me. In the SmartThings mobile app, add the new SmartApp and configure it with your devices and MQTT Bridge device. Clicking done will subscribe SmartThings to your MQTT broker and begin 2-way propagation of events.

    - -

    Configure Home Assistant

    - -

    To add SmartThings devices to Home Assistant over MQTT, first enable MQTT in Home Assistant:

    - -
    -
    mqtt:
    -  broker: localhost
    -
    -
    -
    - -

    Replace localhost with the location of the running MQTT Broker. Devices from the MQTT Bridge are published to the path smartthings/<Device Name>/<Atribute>

    - -

    For example, my Dimmer Z-Wave Lamp is called “Fireplace Lights” in SmartThings. The following topics are published:

    - - - - - - - - - - - - - - - - - - -
    TopicDescription
    smartthings/Fireplace Lights/levelBrightness (0-99)
    smartthings/Fireplace Lights/switchSwitch State (on/off)
    - -

    Here is an example Home Assistant config:

    - -
    -
    switch:
    -  platform: mqtt
    -  name: "Fireplace Lights"
    -  state_topic: "smartthings/Fireplace Lights/switch"
    -  command_topic: "smartthings/Fireplace Lights/switch"
    -  brightness_state_topic: "smartthings/Fireplace Lights/level"
    -  brightness_command_topic: "smartthings/Fireplace Lights/level"
    -  payload_on: "on"
    -  payload_off: "off"
    -  retain: true
    -
    -
    -
    - -

    We recommend retain: true for every MQTT device in order to keep states in sync when things become disconnected.

    - -

    Start digging through the MQTT Components in Home Assistant to find which components map to the new events being published to MQTT.

    - -

    Configuring with Docker-Compose

    - -

    Our personal preference for starting the whole suite of software is to use a single Docker-Compose file. Just create a file called docker-compose.yml like this:

    - -
    -
    mqtt:
    -    image: matteocollina/mosca
    -    ports:
    -        - 1883:1883
    -
    -mqttbridge:
    -    image: stjohnjohnson/smartthings-mqtt-bridge
    -    volumes:
    -        - ./mqtt-bridge:/config
    -    ports:
    -        - 8080:8080
    -    links:
    -        - mqtt
    -
    -homeassistant:
    -    image: homeassistant/home-assistant:latest
    -    ports:
    -        - 80:80
    -    volumes:
    -        - ./home-assistant:/config
    -        - /etc/localtime:/etc/localtime:ro
    -    links:
    -        - mqtt
    -
    -
    -
    - -

    This will start home-assistant, MQTT, and the Bridge, in dependency order. All config can reference the name of the docker container instead of using IP addresses (e.g. mqtt for the broker host in Home Assistant).

    - -

    How it works

    - -

    HTTP Endpoint: There are really only 2 ways to communicate with the SmartThings hub that we could find. The easiest approach is to create a RESTful SmartApp authenticated with OAuth that provides state changes via HTTP directly. This approach is pretty straightforward to implement, but it requires communication with the SmartThings cloud service, and can’t be done entirely on your LAN. We hoped to keep all communication internal, and came up with a second approach.

    - -

    Custom Device Type: SmartThings custom device types allow developers to define handlers for HTTP events received directly over the local network by the SmartThings hub. Messages received are authenticated by MAC address, and can contain arbitrary strings in their payload. Since a Device Type is only ever tied to a single device, we need to add a SmartApp to the mix in order to translate events between individual devices and our special Home Assistant Bridge device. Here is what we have so far:

    - -
    -
    Z-Wave Switch        |
    -Zigbee motion sensor |<---> Bridge App <---> Bridge Device Type <---> <Local network>
    -Z-Wave light bulb    |
    -
    -
    -
    - -

    On the Home Assistant side, there is a powerful platform available based on the MQTT lightweight message bus protocol. Everything from lights to switches to temperature sensors can be defined in Home Assistant as an MQTT component, so it makes for a convenient integration point. This requires an MQTT broker for handling the message bus, and one last piece to translate between the HTTP that SmartThings supports and MQTT.

    - -

    Here is the final sequence of events:

    - -

    - - SmartThings Bridge Sequence - - SmartThings Bridge Sequence -

    - -

    There are a lot of stops along the way for these events, but each piece is a simple translation layer to shuttle the events between systems.

    - -

    Future Improvements

    -
      -
    • Raspberry pi: There is a lot of interest in getting this running on the Raspberry Pi. It only requires binaries compiled for ARM, so we plan to get ARM-compatible versions of the containers going at some point.
    • -
    • Authentication for MQTT: At the moment, the MQTT bridge doesn’t understand how to authenticate to MQTT, so only unauthenticated MQTT is supported. This is mitigated to some degree if you use our Docker Compose config, because MQTT’s port is not actually shared publicly.
    • -
    • Authentication for MQTT Bridge: Right now the bridge expects that anyone subscribing is the SmartThings hub. This could use proper authentication.
    • -
    - ]]>
    diff --git a/blog/categories/how-to/index.html b/blog/categories/how-to/index.html index 4178bda032..b29ec3257f 100644 --- a/blog/categories/how-to/index.html +++ b/blog/categories/how-to/index.html @@ -98,6 +98,38 @@

    2016

    + + + +
    @@ -560,6 +592,12 @@ diff --git a/blog/categories/ibeacons/atom.xml b/blog/categories/ibeacons/atom.xml index da965ed0e9..9cbacdd0e8 100644 --- a/blog/categories/ibeacons/atom.xml +++ b/blog/categories/ibeacons/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: iBeacons | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/ibeacons/index.html b/blog/categories/ibeacons/index.html index def0704810..52868bba2a 100644 --- a/blog/categories/ibeacons/index.html +++ b/blog/categories/ibeacons/index.html @@ -235,6 +235,12 @@ diff --git a/blog/categories/internet-of-things/atom.xml b/blog/categories/internet-of-things/atom.xml index 9faab3640b..36cbfae31e 100644 --- a/blog/categories/internet-of-things/atom.xml +++ b/blog/categories/internet-of-things/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Internet-of-Things | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/internet-of-things/index.html b/blog/categories/internet-of-things/index.html index 068bb6e1f4..30037675dd 100644 --- a/blog/categories/internet-of-things/index.html +++ b/blog/categories/internet-of-things/index.html @@ -294,6 +294,12 @@ diff --git a/blog/categories/mqtt/atom.xml b/blog/categories/mqtt/atom.xml index 0cb7e31320..d613fe31e9 100644 --- a/blog/categories/mqtt/atom.xml +++ b/blog/categories/mqtt/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: MQTT | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/mqtt/index.html b/blog/categories/mqtt/index.html index 7d4de24b65..fc749935b5 100644 --- a/blog/categories/mqtt/index.html +++ b/blog/categories/mqtt/index.html @@ -270,6 +270,12 @@ diff --git a/blog/categories/organisation/atom.xml b/blog/categories/organisation/atom.xml index 3fc33e62f8..1ad5e7c14c 100644 --- a/blog/categories/organisation/atom.xml +++ b/blog/categories/organisation/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Organisation | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/organisation/index.html b/blog/categories/organisation/index.html index ae33a9e097..708d273fe0 100644 --- a/blog/categories/organisation/index.html +++ b/blog/categories/organisation/index.html @@ -230,6 +230,12 @@ diff --git a/blog/categories/owntracks/atom.xml b/blog/categories/owntracks/atom.xml index 34603e3e74..3a11fe0082 100644 --- a/blog/categories/owntracks/atom.xml +++ b/blog/categories/owntracks/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: OwnTracks | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/owntracks/index.html b/blog/categories/owntracks/index.html index 9b9f56381d..8741f16c0a 100644 --- a/blog/categories/owntracks/index.html +++ b/blog/categories/owntracks/index.html @@ -235,6 +235,12 @@ diff --git a/blog/categories/presence-detection/atom.xml b/blog/categories/presence-detection/atom.xml index 7a711958d4..7e276f5d3b 100644 --- a/blog/categories/presence-detection/atom.xml +++ b/blog/categories/presence-detection/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Presence-Detection | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/presence-detection/index.html b/blog/categories/presence-detection/index.html index b99b566c95..fbe6639fa6 100644 --- a/blog/categories/presence-detection/index.html +++ b/blog/categories/presence-detection/index.html @@ -199,6 +199,12 @@ diff --git a/blog/categories/public-service-announcement/atom.xml b/blog/categories/public-service-announcement/atom.xml index fe23c8f9bf..b075625fcf 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-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+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 39b4a9d8f9..3cef42fc5b 100644 --- a/blog/categories/public-service-announcement/index.html +++ b/blog/categories/public-service-announcement/index.html @@ -195,6 +195,12 @@ diff --git a/blog/categories/release-notes/atom.xml b/blog/categories/release-notes/atom.xml index 1a2aea077d..2c2a501e8d 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-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/release-notes/index.html b/blog/categories/release-notes/index.html index 578d0f2b25..45683870e7 100644 --- a/blog/categories/release-notes/index.html +++ b/blog/categories/release-notes/index.html @@ -1416,6 +1416,12 @@ diff --git a/blog/categories/survey/atom.xml b/blog/categories/survey/atom.xml index 03732023fe..780e717bb0 100644 --- a/blog/categories/survey/atom.xml +++ b/blog/categories/survey/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Survey | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/survey/index.html b/blog/categories/survey/index.html index 9849c8b9b9..74b7228f06 100644 --- a/blog/categories/survey/index.html +++ b/blog/categories/survey/index.html @@ -195,6 +195,12 @@ diff --git a/blog/categories/talks/atom.xml b/blog/categories/talks/atom.xml index 5580ca0735..cc1ecae77e 100644 --- a/blog/categories/talks/atom.xml +++ b/blog/categories/talks/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Talks | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/talks/index.html b/blog/categories/talks/index.html index ff624d98cb..5cea45a095 100644 --- a/blog/categories/talks/index.html +++ b/blog/categories/talks/index.html @@ -197,6 +197,12 @@ diff --git a/blog/categories/technology/atom.xml b/blog/categories/technology/atom.xml index 53db1cfbec..8a5a3add55 100644 --- a/blog/categories/technology/atom.xml +++ b/blog/categories/technology/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Technology | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/technology/index.html b/blog/categories/technology/index.html index b1adbbd8bd..9e3f466cda 100644 --- a/blog/categories/technology/index.html +++ b/blog/categories/technology/index.html @@ -195,6 +195,12 @@ diff --git a/blog/categories/user-stories/atom.xml b/blog/categories/user-stories/atom.xml index d49a006f0f..f3c913fcbd 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-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/user-stories/index.html b/blog/categories/user-stories/index.html index bd9753cc11..bcd27459a0 100644 --- a/blog/categories/user-stories/index.html +++ b/blog/categories/user-stories/index.html @@ -195,6 +195,12 @@ diff --git a/blog/categories/video/atom.xml b/blog/categories/video/atom.xml index f577af2229..ce11762c64 100644 --- a/blog/categories/video/atom.xml +++ b/blog/categories/video/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Video | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/video/index.html b/blog/categories/video/index.html index 070e70e7c6..a43daa2e17 100644 --- a/blog/categories/video/index.html +++ b/blog/categories/video/index.html @@ -398,6 +398,12 @@ diff --git a/blog/categories/website/atom.xml b/blog/categories/website/atom.xml index d756b4b065..eb463b8d34 100644 --- a/blog/categories/website/atom.xml +++ b/blog/categories/website/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Website | Home Assistant]]> - 2016-07-19T13:52:21+00:00 + 2016-07-19T19:43:12+00:00 https://home-assistant.io/ diff --git a/blog/categories/website/index.html b/blog/categories/website/index.html index 5acb6cab0a..e3512ac126 100644 --- a/blog/categories/website/index.html +++ b/blog/categories/website/index.html @@ -230,6 +230,12 @@ diff --git a/blog/index.html b/blog/index.html index d79a4bc0d3..4bad7dfd04 100644 --- a/blog/index.html +++ b/blog/index.html @@ -78,6 +78,54 @@ +
    +
    + +

    + Exporting Home Assistant information +

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

    + +

    The history component is tracking everything that is going on within Home Assistant. This means that you have access to all stored information about your home. Our history is not a full-fledged graphical processing and visualization component as you may know from systems and network monitoring tools. The current limitation is that you only can select a day for a visual output of your information and not a period. Also, there is no possibility to drill down on a specific entity.

    + +

    This blog post will show you ways to export data for reporting, visualization, or further analysis of automation rules.

    + + + + Read on → + +
    +
    +
    +
    @@ -747,60 +795,6 @@ In the past month I was thinking about ways to integrate USB webcams into Home A Read on → -
    -
    -
    - -
    -
    - -

    - Raspberry Pi all-in-one installer -

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

    We are always hard at work at the virtual Home Assistant headquarters to make it easier for you to get started with Home Assistant. That’s why @jbags81 recently introduced the all-in-one installer. It allows you to get up and running with a complete Home Assistant setup by entering one line of code into your Raspberry Pi running Raspbian Jessie:

    - -
    -
    wget -Nnv https://raw.githubusercontent.com/home-assistant/fabric-home-assistant/master/hass_rpi_installer.sh && bash hass_rpi_installer.sh;
    -
    -
    -
    - -

    This feature wouldn’t be complete if it wasn’t accompanied by a new video by Ben from BRUH Automation. The video shows how to install Raspbian Jessie on your Raspberry Pi and use the new installation script to get a full Home Assistant system up and running.

    - -
    - -
    - - -

    diff --git a/blog/posts/2/index.html b/blog/posts/2/index.html index b35869cf59..0c219c18e8 100644 --- a/blog/posts/2/index.html +++ b/blog/posts/2/index.html @@ -78,6 +78,60 @@ +
    +
    + +

    + Raspberry Pi all-in-one installer +

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

    We are always hard at work at the virtual Home Assistant headquarters to make it easier for you to get started with Home Assistant. That’s why @jbags81 recently introduced the all-in-one installer. It allows you to get up and running with a complete Home Assistant setup by entering one line of code into your Raspberry Pi running Raspbian Jessie:

    + +
    +
    wget -Nnv https://raw.githubusercontent.com/home-assistant/fabric-home-assistant/master/hass_rpi_installer.sh && bash hass_rpi_installer.sh;
    +
    +
    +
    + +

    This feature wouldn’t be complete if it wasn’t accompanied by a new video by Ben from BRUH Automation. The video shows how to install Raspbian Jessie on your Raspberry Pi and use the new installation script to get a full Home Assistant system up and running.

    + +
    + +
    + + + +
    +
    +
    +
    @@ -697,71 +751,6 @@

    Finally, if you see some content that could use more clarifcation or is outdated, don’t hesitate to use the ‘Edit in GitHub’ link that is present on each page.

    - -
    -
    - -
    -
    - -

    - 0.17: Onkyo, Panasonic, GTFS and config validation -

    - - - -
    - - - 1 minute reading time - - - - - - Comments - -
    - -
    - - -
    -

    Another awesome release ready to hit your homes. YAML can be hard for beginners and more experienced automators. So to help catch those pesky errors that sneak into your files we’ve been hard at work to introduce config validation! Especially huge thanks to @jaharkes for his hard work on this. Config validation is still in it’s early stages. More common platforms and components have been added but we didn’t do everything yet.

    - -

    When we encounter an invalid config we will now write a warning to your logs. You can see those in the frontend by clicking on the last developer tool. We’re looking into options to make it more clear - it is a work in progress.

    - -

    Another big thing is the addition of GTFS support. You probably don’t know it, but GTFS is the standard that public transit companies all over the world use to distribute their schedule. This means that you can now have the time of the next bus/train/etc right in your frontend.

    - -

    - - - -

    Breaking changes

    - -

    As of now we are not aware of any breaking changes. However, it might be that Home Assistant will not start for you because of an invalid configuration. A common mistake that people are making is that they are still referring to execute_service in their script configs. This should be service.

    - -

    diff --git a/blog/posts/3/index.html b/blog/posts/3/index.html index e7e225ac0f..1c7164365c 100644 --- a/blog/posts/3/index.html +++ b/blog/posts/3/index.html @@ -78,6 +78,71 @@ +
    +
    + +

    + 0.17: Onkyo, Panasonic, GTFS and config validation +

    + + + +
    + + + 1 minute reading time + + + + + + Comments + +
    + +
    + + +
    +

    Another awesome release ready to hit your homes. YAML can be hard for beginners and more experienced automators. So to help catch those pesky errors that sneak into your files we’ve been hard at work to introduce config validation! Especially huge thanks to @jaharkes for his hard work on this. Config validation is still in it’s early stages. More common platforms and components have been added but we didn’t do everything yet.

    + +

    When we encounter an invalid config we will now write a warning to your logs. You can see those in the frontend by clicking on the last developer tool. We’re looking into options to make it more clear - it is a work in progress.

    + +

    Another big thing is the addition of GTFS support. You probably don’t know it, but GTFS is the standard that public transit companies all over the world use to distribute their schedule. This means that you can now have the time of the next bus/train/etc right in your frontend.

    + +

    + + + +

    Breaking changes

    + +

    As of now we are not aware of any breaking changes. However, it might be that Home Assistant will not start for you because of an invalid configuration. A common mistake that people are making is that they are still referring to execute_service in their script configs. This should be service.

    + + +
    +
    +
    +
    @@ -787,62 +852,6 @@ Hold your NFC tag against the belly of Garfield to unlock the alarm.

    -
    -
    - -

    - Smarter SmartThings with MQTT and Home Assistant -

    - - - -
    - - - eight minutes reading time - - - - - - Comments - -
    - -
    - - -
    -

    This is a guest post by Home Assistant users Jeremiah Wuenschel and St. John Johnson.

    - -

    So you own a SmartThings Hub. You probably bought it when you were looking to get into the whole Home Automation hobby because it worked with pretty much everything and offered you the ability to automate anything. After a week of ownership, you realized that building dashboards and automating required writing way more Groovy then you expected. Then one day you were browsing reddit and discovered the amazingness that is Home Assistant! A solution that offered dashboards, graphs, working support for Nest, and REAL EASY automation!

    - -

    You spent your weekend getting everything set up, showing it off to your significant other, but in the end you got stumped when it came to integrating with all your existing SmartThings toys. What do I do now? Should I buy another hub? Should I just buy a Z-Wave stick?

    - -

    That’s where we came in. We wanted a solution that can bridge the awesomeness of Home Assistant with the SmartThings hub that works with almost everything.

    - -

    - -

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

    - Community Highlights -

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

    From time to time we come along things that are worth sharing with fellow Home Assisters. Here a list of some cool stuff from last week:

    - -

    First is the public beta of Let’s Encrypt. Let’s Encrypt is a new certificate authority that is free, automated and open. This means that it will now be very easy to secure your connection to Home Assistant while you are away from home. W1ll1am23 has written up a guide how to get started.

    - -

    The next thing is a show-off of some of the cool stuff people do with Home Assistant. This is miniconfig talking to Home Assistant using the Amazon Echo!

    - -
    - -
    - -

    And last but not least, Midwestern Mac did a microSD card performance comparison for the Raspberry Pi. If you’re using a Pi, make sure to check it out!

    - -

    diff --git a/blog/posts/5/index.html b/blog/posts/5/index.html index 8dbc426928..4733019812 100644 --- a/blog/posts/5/index.html +++ b/blog/posts/5/index.html @@ -78,6 +78,59 @@ +
    +
    + +

    + Community Highlights +

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

    From time to time we come along things that are worth sharing with fellow Home Assisters. Here a list of some cool stuff from last week:

    + +

    First is the public beta of Let’s Encrypt. Let’s Encrypt is a new certificate authority that is free, automated and open. This means that it will now be very easy to secure your connection to Home Assistant while you are away from home. W1ll1am23 has written up a guide how to get started.

    + +

    The next thing is a show-off of some of the cool stuff people do with Home Assistant. This is miniconfig talking to Home Assistant using the Amazon Echo!

    + +
    + +
    + +

    And last but not least, Midwestern Mac did a microSD card performance comparison for the Raspberry Pi. If you’re using a Pi, make sure to check it out!

    + + +
    +
    +
    +
    @@ -626,57 +679,6 @@ Inspried by a -
    - -

    - Using MQTT with Home Assistant -

    - - - -
    - - - nine minutes reading time - - - - - - Comments - -
    - -
    - - -
    - -

    MQTT support was added to Home Assistant recently. The MQTT component will enable you to do all sort of things. Most likely you will use it to communicate with your devices. But Home Assistant doesn’t care where the data is coming from or is limited to real hardware as long as there is MQTT support. This means that it doesn’t matter if the data is coming from a human, a web service, or a device.

    - -

    A great example is shown in a Laundry Automation post in this blog.

    - -

    This post will give you a small overview of some other possibilities on how to use MQTT with Home Assistant.

    - - - - Read on → - -
    -
    -
    - diff --git a/sitemap.xml b/sitemap.xml index c3fb0cd1f8..28c9ff38e5 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1,5 +1,9 @@ + + https://home-assistant.io/blog/2016/07/19/exporting-processing-data/ + 2016-07-19T16:00:00+00:00 + https://home-assistant.io/blog/2016/07/16/sqlalchemy-knx-join-simplisafe/ 2016-07-16T12:00:00+00:00 @@ -1955,36 +1959,39 @@ https://home-assistant.io/blog/2016/07/16/sqlalchemy-knx-join-simplisafe/ + + https://home-assistant.io/blog/2016/07/19/exporting-processing-data/ + https://home-assistant.io/demo/dev-tools.html - 2016-07-19T13:51:38+00:00 + 2016-07-19T19:42:30+00:00 https://home-assistant.io/demo/frontend.html - 2016-07-19T13:51:38+00:00 + 2016-07-19T19:42:30+00:00 https://home-assistant.io/demo/index.html - 2016-07-19T13:51:38+00:00 + 2016-07-19T19:42:30+00:00 https://home-assistant.io/demo/partial-map.html - 2016-07-19T13:51:38+00:00 + 2016-07-19T19:42:30+00:00 https://home-assistant.io/googlef4f3693c209fe788.html - 2016-07-19T13:51:38+00:00 + 2016-07-19T19:42:30+00:00 https://home-assistant.io/static/fonts/roboto/DESCRIPTION.en_us.html - 2016-07-19T13:51:38+00:00 + 2016-07-19T19:42:30+00:00 https://home-assistant.io/static/fonts/robotomono/DESCRIPTION.en_us.html - 2016-07-19T13:51:38+00:00 + 2016-07-19T19:42:30+00:00 https://home-assistant.io/static/mdi-demo.html - 2016-07-19T13:51:38+00:00 + 2016-07-19T19:42:30+00:00 diff --git a/topics/platform_options/index.html b/topics/platform_options/index.html index 2e7a02b69f..470918ddd4 100644 --- a/topics/platform_options/index.html +++ b/topics/platform_options/index.html @@ -184,6 +184,12 @@