7 min read

Home Assistant, de smart home lijm in huis

Home Assistant, de smart home lijm in huis

Onlangs schreef ik al over een hoop leds aansturen, ESPHome en hoe ons thuisnetwerk in elkaar zit. In elk van die posts kwam ergens wel een vermelding van Home Assistant. Maar wat is die Home Assistant nu juist?

Open source home automation software

Eens je intelligente dingen in huis hebt kan je er niet rond: het is een kluwen van verschillende standaarden en platformen. Apple zet hard in op HomeKit, Google heeft “works with Google”, huishoudapparaten van Siemmens en Bosch zitten op HomeConnect en dan heb je nog zaken zoals Philips Hue die ook nog eens hun eigen platform hebben.

Home Assistant brengt al die zaken samen op een uniforme manier en zorgt voor de nodige abstractie. Wanneer je automatisaties schrijft voor Home Assistant maakt het bijvoorbeeld niet uit of de lamp die je aansluit nu verbonden is via Philips Hue, HomeKit of WLED.

Daarnaast biedt het de mogelijkheid om mooie dashboards te maken, zodat je ten alle tijden kan kijken hoe het in jouw huis gesteld is.

Of kort samengevat: Home Assistant is software die zorgt dat alles in huis met alles in huis kan praten, ongeacht de fabrikant, en zo van je huis een smart home maakt.

Stuur geld voor een tekencursus

Dit artikel gaat redelijk diep, maar ik heb geprobeerd om ook af en toe wat plaatjes te zetten.

Installatie

Er zijn verschillende manieren om Home Assistant te installeren, maar de twee meest aanbevolen zijn:

Ik ben begonnen met een Dockercontainer, maar zag al snel dat je dan enkele features (zoals het draaien van addons) mist, en aangezien ik altijd wel een Raspberry Pi op overschot heb liggen ben ik snel overgestapt.

Op dat klein bakje draait Home Assistant hier

SD-kaarten

Zoals Herman opmerkt op DailyBits: Raspberry Pi’s en SD-kaarten zijn niet zo’n goede vrienden. De vele kleine schrijfacties die het besturingssysteem doet verkorten de levensduur van SD-kaarten behoorlijk. Het is daarom aan te raden om geheugenkaarten met een uit de A-klasse te kopen, die zijn geoptimaliseerd voor applicaties (vandaar de A) en kunnen hier beter mee overweg. Zorg daarnaast ook steeds voor een goeie backup van je configuratie.

Lingo

Eens geïnstalleerd is het tijd om jezelf verwant te maken met enkele begrippen die je vaak gaat zien terugkomen:

  • Integrations: de link tussen Home Assistant (HA) en een bepaald platform. Er zijn er momenteel een 1700-tal die bijgeleverd worden, en je kan er nog veel meer installeren. Dit gaat van voor de hand liggende zaken zoals Philips Hue of Sonos tot Domino’s Pizza (om automatisch te bestellen).
  • Devices: al je toestellen behoren tot een integratie.
  • Entities: elk toestel heeft vervolgens één of meer entiteiten. Wij hebben bijvoorbeeld enkele bewegingsmelders van Philips hangen die drie entiteiten elks hebben: beweging, temperatuur en lichtsterkte.
  • Areas: ruimtes in je huis
  • Scenes: je kan de staat van bepaalde devices opslaan in een scene. Dat is vooral handig voor lampen.
  • Automatisations: een automatisatie is een handeling die wordt uitgevoerd wanneer er iets bepaald gebeurt.
  • Lovelace: de user interface waarin je dashboards maakt.

Instellen

De installatie van Home Assistant is heel eenvoudig. Op een Raspberry Pi is het niet meer dan de image downloaden en op een SD-kaart branden. Na ongeveer 20 minuten kan je dan surfen naar http://homeassistant.local en je Home Assistant beginnen te configureren.

Een makkelijke wizard helpt je vervolgens aardig op weg om alle integraties in te stellen.

Dit zijn de integraties die ik heb draaien:

  • Denon: onze versterker.
  • ESPHome: voor alle sensors in huis.
  • Google Cast: om tegen Chromecasts te spreken.
  • Home Connect: voor onze wasmachine.
  • Internet Printing Protocol (IPP): zodat ‘k in HA kan zien hoeveel inkt onze printer nog heeft.
  • Logitech Harmony Hub: onze universele afstandsbediening.
  • Meteorologisk institutt: een betrouwbare weerprovider.
  • Philips Hue: laat me toe onze lampen te bedienen, en alle sensors/schakelaars die verbonden zijn via de Hue bridge.
  • Sonos: voor onze oude Sonos beneden.
  • Synology DSM: stats van mijn Synology NAS.
  • Ubiquiti Unifi: wat gegevens over ons netwerk.
  • WLED: om mijn ESP’s met WLED te bedienen.

Home Assistant Community Store (HACS)

Out of the box is Home Assistant al top. De eerste uren kan je je bezig houden met al je apparaten toe te voegen en je dashboard te configureren. Maar dan komt onvermijdelijk het moment dat je je afvraagt: “hmmm, zou ik mijn fiets/auto/koffiemachine niet kunnen toevoegen?”. Of dat je dat standaardthema toch gatlelijk vindt.

Al een geluk is er de Home Assistant Community Store. Dit is een soort van alternatieve app store voor integraties en Lovelace componenten die niet standaard bij HA geleverd worden. Die zijn meestal ook iets minder goed getest, dus je kan al wel eens tegen problemen lopen, maar het is altijd het proberen waard.

Zelf gebruik ik volgende zaken uit HACS:

  • Volkswagen We Connect: zo kan ik in HA zien waar m’n wagen zich bevindt, en of de deuren op slot zijn
  • Eufy Security: een integratie voor onze doorbel (momenteel wel kapot)
  • SpaceX: een paar entities die bijhouden waar de SpaceX karavaan zich bevindt en wanneer de volgende lancering is.
  • Light entity card: een Lovelace-component om de lampen te bedienen, ondersteunt de effecten van WLED.
  • Kibibit theme: na een hele hoop themes te hebben geprobeerd is dit mijn favoriet.
  • Mini graph card: mooie grafieken voor Lovelace.
  • Layout card: een containerkaart die complexere layouts mogelijk maakt.

Dashboards

Dit zijn mijn Lovelace dashboards op dit moment (een eeuwigdurende work-in-progress):

Het weer en de temperaturen in huis
Alle lampen
Systeemstats
Synology
De auto
Mijn fiets
De wasmachine en de printer

Het goed krijgen van die dashboards is echt een serieus geteen. Die van mij zijn nog steeds niet 100% hoe ik het wil, en de YAML-bestanden die je moet schrijven om iets geavanceerdere layouts te maken worden heel snel een boeltje.

Maar het blijft een work-in-progress. En om de zoveel tijd steek ik er eens een uur in om het te verbeteren.

Automatisatie

Op zich zijn die dashboards tof, maar het is nog leuker om er niet naar te moeten kijken. Daarom heb ik ook nog deze automatisaties draaien:

  • Als de was klaar is dan wordt dit door elke speaker in huis aangekondigd met text-to-speech
  • Als m’n fiets opgeladen is of bijna leeg is ook
  • Als m’n wagen thuis is, maar de deur niet op slot krijg ik een pushbericht op m’n telefoon
  • Ook als de auto ergens op een nieuwe locatie aankomt stuurt hij een pushbericht (met mooi kaartje bij)
  • Op zolder hangt sinds kort ook een ESPHome met bewegingssensor zodat die leds automatisch aangaan als iemand de trap opkomt.

InfluxDB

Eén van de voordelen van HA te draaien via Hassio (het Home Assistant Operating System) is dat je addons kan installeren. Addons draaien in aparte containers< /strong> en hebben weinig invloed op de rest van je systeem.

Mijn meest gebruikte addon is InfluxDB. Dit is een database geoptimaliseerd voor tijdsgebonden metingen. Standaard maakt HA al wel grafiekjes van de waarden van je sensoren over tijd, maar met InfluxDB kan je daar veel verder in gaan. En da’s echt iets voor datanerds zoals ik.

Dit is bijvoorbeeld de evolutie van de brandstoftank van mijn Touran het afgelopen half jaar:

Corona: 7x getankt ipv de gebruikelijke 28x

Of het licht in huis de afgelopen maanden:

Ja, de winter is wel echter donkerder.

Of de temperatuur van verschillende sensoren (waarop je kan zien dat het uitvallen van de chauffage zelfs in de serverkast -die altijd lekker warm is- effect had):

Als je hier nog verder in wil gaan is er ook nog de Grafana addon, hierin kan je de data uit Influx nog verder gaan visualiseren en deze voorziet ook in deelbare afbeeldingen, die je dan weer in je Lovelace dashboards kan gaan gebruiken.

Onderweg

Home Assistant heeft ook apps voor iOS en Android. Die geven toegang tot alle aspecten van het systeem, maar voegen ook een aantal sensors toe, die je dan ook kan gaan gebruiken in HA, zoals je stappenteller, batterijniveau en locatie (indien gewenst). En vanuit HA kan je zonder gedoe push notifications sturen naar je GSM

Omdat Home Assistant op je eigen netwerk draait ga je wel extra moeite moeten doen om er van buitenaf aan te kunnen:

  • Ofwel stel je op je router port forwarding in
  • Ofwel draai je een VPN met DDNS
  • Ofwel neem je aan abonnement op Home Assistant Cloud

Met dat laatste steun je de makers van HA en ‘t kost maar 5 euro per maand. Een abonnement geeft nog wat extra voordelen zoals makkelijkere Google Home en Alexa integratie, en ze sturen je ook een mail mocht er een veiligheidslek gevonden worden in jouw installatie.

Nog meer

Home Assistant is ontzettend uitgebreid en je kan er echt zotte shit mee doen. Frenck, die ook een hele hoop addons op zijn naam heeft staan, houdt op Awesome Home Assistant een gecureerde lijst bij van zotte Home Assistant zaken. Zeker een aanrader om in te duiken.