Home Assistant YAML configuratie beginnersgids
Je hebt een Home Assistant hub staan en je kijkt naar een scherm vol vreemde code. YAML. Het voelt alsof je net doet alsof je een programmeur bent, maar eigenlijk ben je gewoon iemand die zijn lampen aan wil zetten. Geen zorgen, dit is het moment waarop veel mensen afhaken, maar het is ook het moment waarop het écht leuk wordt.
Home Assistant is een krachtige smart home hub, maar het is niet zo eenvoudig als de Homey Pro waar je misschien aan hebt gedacht. Bij Homey draait alles om een mooie interface, maar bij Home Assistant draait het om controle. En die controle krijg je door YAML te begrijpen. Dit is jouw gids om de drempel over te stappen zonder je hoofd te breken.
Wat is YAML eigenlijk?
Stel je YAML voor als de handleiding voor jouw huis. Het is een tekstbestand dat vertelt aan Home Assistant wat het moet doen. Het is geen programmeertaal zoals Python of Java; het is gewoon een manier om informatie te ordenen. Het is net als boodschappenlijstjes schrijven, maar dan met een specifieke structuur die de computer begrijpt.
Thuis zit je waarschijnlijk met een Home Assistant Green of een Raspberry Pi. Op dat apparaat draait de software. Als je in de File Editor of de Studio Code Server kijkt, zie je mappen en bestanden. Het belangrijkste bestand is configuration.yaml. Dit is het hart van je domotica hub. Als je hier iets verkeerd schrijft, doet je huis niets meer. Dat klinkt eng, maar het is makkelijk te herstellen.
Waarom doen we dit? Omdat je met YAML dingen kunt bouwen die in een app niet kunnen. Je kunt complexe automatiseringen maken die reageren op tientallen sensoren. Terwijl een Homey Pro je beperkt tot wat de app-maker bedacht heeft, bepaal jij alles. Je betaalt geen extra kosten voor een "slimme" functie; je schrijft hem zelf.
De basis: hoe ziet een YAML bestand eruit?
YAML draait om drie dingen: sleutels (keys), waarden (values) en lijsten (lists). Een sleutel is de naam van iets, de waarde is wat het doet. Het meest basic voorbeeld is een lamp. Je wilt de lamp in de woonkamer besturen. Je opent je configuration.yaml en typt:
light:
- platform: demo
Dit vertelt Home Assistant: "Hey, ik wil lampen gebruiken en ze komen uit de demo-modus." Maar in het echt wil je natuurlijk echte lampen. Stel je hebt een Philips Hue lamp. Dan ziet het er zo uit:
hue:username: jouw_gebruikersnaam
- host: 192.168.1.50
Hier geef je het IP-adres van je Hue Bridge door. Let even op de witruimte (indentatie). Alles wat onder hue: staat, moet inspringen met spaties. Geen tabs, alleen spaties. Als je dit verkeerd doet, crasht Home Assistant. Het is even oefenen, maar na tien minuten heb je het door.
Je kunt ook sensoren toevoegen. Stel je hebt een simpele temperatuursensor. Je typt:
sensor:name: "Woonkamer Temperatuur" state: "21" unit_of_measurement: "°C"
- platform: template
Je ziet hier hoe je een naam geeft aan je sensor en hoe je een vaste waarde instelt (handig voor testen). Als je dit opslaat en Home Assistant herstart, verschijnt deze sensor in je dashboard. Simpel, toch?
De kracht van automatiseringen
YAML wordt pas écht interessant bij automatiseringen. Dit is wat Home Assistant tot een superieure smart home hub maakt vergeleken met veel andere systemen. Een automatisering heeft drie delen: trigger, voorwaarde en actie. De trigger is het startmoment, de voorwaarde controleert of het mag, en de actie is wat er gebeurt.
Laten we een voorbeeld nemen dat iedereen wil: de lampen aan als het donker wordt. Je kunt dit via de UI klikken, maar in YAML ziet het er zo uit:
automation:trigger: platform: sun event: sunset action: service: light.turn_on target: entity_id: light.woonkamer
- alias: "Lampen aan bij donker"
Je ziet precies wat er gebeurt. Als de zon ondergaat (trigger), gaat de lamp in de woonkamer aan (actie). Het mooie is dat je dit oneindig kunt uitbreiden. Wil je dat de lamp alleen aan gaat als je thuis bent? Dan voeg je een voorwaarde (condition) toe:
condition: state: "home" entity_id: person.jouw_naam
Met YAML kun je spelen met tijd. Wil je dat de verwarming een uur voordat je thuiskomt aangaat? Geen probleem. Je kunt een template gebruiken om je telefoon te checken via GPS. Dit is iets wat een Homey Pro soms moeilijk maakt, maar in Home Assistant is het standaard.
YAML vs UI: de strijd om configuratie
Er is veel discussie in de Home Assistant community. Moet je alles in YAML schrijven of gebruik je de gebruikersinterface (UI)? Sinds de komst van de "UI Editor" is het makkelijker geworden. Je kunt automatiseringen klikken en slepen. Toch blijft YAML belangrijk.
Waarom zou je nog typen als je kunt klikken? Omdat YAML overal hetzelfde werkt. Als je een backup maakt en die op een andere Raspberry Pi zet, werkt alles direct. Je hoeft niet opnieuw te klikken. Bovendien zijn sommige integraties alleen via YAML in te stellen. Denk aan complexe YAML-only integraties of specifieke thema's.
Veel gebruikers van een Home Assistant Green kiezen ervoor om hun automatiseringen in de UI te bouwen, maar hun sensors en scripts in YAML te houden. Dit is een hybride aanpak. Je kunt beide. Je hoeft niet te kiezen. Het gaat erom wat voor jou werkt.
Een voordeel van de UI is dat je geen fouten maakt in de opmaak. Een voordeel van YAML is dat je het makkelijk kunt delen. Als je een fout maakt in de UI, is het soms moeilijk terug te vinden. In YAML staat het gewoon in een regel tekst.
Praktische tips om te beginnen
Begin klein. Probeer niet je hele huis in één dag te migreren. Begin met één lamp, één schakelaar en één automatisering. Gebruik de "Developer Tools" in Home Assistant om te kijken hoe entities heten. Als je een nieuwe lamp toevoegt, krijgt die een naam zoals light.nieuwe_lamp_2. Die naam moet je gebruiken in je YAML code.
Gebruik een goede code editor. De ingebouwde Studio Code Server in Home Assistant is fantastisch. Hij geeft je direct foutmeldingen als je een spatie mist. Als je een fout maakt en Home Assistant start niet op, paniek niet. De meeste problemen zijn simpel op te lossen door terug te gaan naar het vorige bestand.
Check altijd de officiële documentatie. Home Assistant verandert snel. Een integratie die vandaag werkt, is morgen misschien anders. De documentatie is je beste vriend. Zoek op "Hue integration" of "Zigbee2MQTT" en je krijgt de exacte YAML voorbeelden.
Maak backups. Voordat je grote wijzigingen doet, download je de yaml bestanden of maak je een snapshot via de Supervisor. Als je een Homey Pro gewend bent, ben je misschien lui geworden met backups. Bij Home Assistant is het essentieel, maar het is zo gebeurd.
YAML leren voelt in het begin als een berg beklimmen, maar eenmaal boven heb je een uitzicht dat je nergens anders krijgt. Je huis luistert precies zoals jij wilt, niet zoals een app het bedacht heeft. Veel succes met het bouwen van jouw slimme huis!
