Today i’d like to introduce to you my home-assistant setup. In the future, there will be blog posts teaching you how to set up everything like i did and how to get a great setup for your home automation.
What is included
My home-assistant setup consists of several components which are sticthed together with traefik and docker Here, you already see two components in action which basically run in the background and will make your live much easier in regards to SSL configuration and home-assistant updates.
To easily manage home assistant updates and to separate different appications from each other, i am using docker.
Docker is used to run software packages called “containers”. Containers are isolated from each other and bundle their own application, tools, libraries and configuration files wikipedia.org
Using docker also enables me to test new versions and if anything breaks or does not behave like i intended, i can just rollback to an older version. While this saved me countless hours, there is also a pitfall. Do not blindly and automatically update to the latest version. It will break something and you will wonder what happend if you do not think about the automatic updates.
To make my life easier and to not care about any SSL setup i am using traefik. Traefik automatically gets running containers from our docker daemon and sets up the URL and the needed Let’s encrypt certificates. Traefik could do much more, but for this setup, we are only using it’s SSL and loadbalancing features.
Of course, my setup includes home-assistant. At the time of writing i am using version 0.87.1 and version 0.88.1 is current.
- google chromecast
- generic shell commands
- Zigbee (ZHA)
- logitech harmony
- google assistant
- tp link smart switches
- travis CI
Here you see a good overview of my components. The graphs on the right side are made with grafana and the data for this is stored via the influxdb component. I am using a custom lovelace card for the thermostats as i find the originals are way to bulky.
My complete config can be found on github.
Using github here made it easy to have some kind of continuous integration testing and therefore not breaking my running setup with some configuration errors. I will explain this in detail later.
To visualize my collected data, i use grafana. Grafana makes it easy to design the graphs with their web ui and also enables me to include them into home-assistant’s webui
This is an example of what my dashboard looks like. Some data is currently missing as i had issues with the last home assistant update and lost some zigbee sensors.
Thats all for now. I will update this post with more details about all the components and link them in separate posts.