Hoofdstuk 13 van 17

De meest voorkomende fouten

Je hebt inmiddels een apparaat aan Home Assistant toegevoegd. In De Werkplaats hebben we daarvoor een slimme stekker gebruikt. Je hebt gezien dat Home…

Je hebt inmiddels een apparaat aan Home Assistant toegevoegd. In De Werkplaats hebben we daarvoor een slimme stekker gebruikt. Je hebt gezien dat Home Assistant het apparaat kan herkennen, dat er entiteiten verschijnen en dat je die vanuit een dashboard kunt bedienen.

Als alles meteen werkt, lijkt Home Assistant eenvoudig. Maar vroeg of laat gebeurt er iets onverwachts.

Een apparaat verschijnt niet.
Een schakelaar reageert niet.
Een sensor blijft op dezelfde waarde staan.
Een automatisering doet niets.
Of iets werkte gisteren nog wel en vandaag ineens niet meer.

Dat hoort erbij.

Het belangrijkste is dan niet dat je iedere foutmelding uit je hoofd kent. Veel belangrijker is dat je leert herkennen wat voor soort probleem je voor je hebt.

In dit hoofdstuk bekijken we daarom een aantal fouten die je als beginner waarschijnlijk tegenkomt. We gaan ze nog niet uitgebreid analyseren. Dat doen we in het volgende hoofdstuk, waarin je leert hoe je systematisch naar een probleem zoekt.

Voor nu gaat het vooral om herkennen.

Eerst kijken, dan veranderen

Wanneer iets niet werkt, is de verleiding groot om meteen van alles te proberen.

Home Assistant opnieuw starten.
De stekker uit het stopcontact halen.
De integratie verwijderen.
Het apparaat opnieuw toevoegen.
Een instelling veranderen.
Daarna nog een andere instelling veranderen.

Soms werkt het daarna weer.

Maar je weet dan niet waarom.

Dat maakt het lastig wanneer hetzelfde probleem later terugkomt.

Probeer daarom een andere gewoonte aan te leren:

kijk eerst wat er gebeurt voordat je iets verandert.

Vraag jezelf bijvoorbeeld af:

  • Wat verwachtte ik dat er zou gebeuren?
  • Wat gebeurt er werkelijk?
  • Werkt het apparaat zelf nog?
  • Is Home Assistant bereikbaar?
  • Is alleen deze functie kapot, of werkt er meer niet?
  • Wanneer werkte het voor het laatst?

Dat zijn eenvoudige vragen, maar ze geven vaak al verrassend veel informatie.

Een apparaat verschijnt niet

Een veelvoorkomend probleem ontstaat direct bij het toevoegen van een apparaat.

Je verwacht bijvoorbeeld dat Home Assistant jouw slimme stekker automatisch vindt, maar er verschijnt helemaal niets.

Dat betekent niet meteen dat Home Assistant defect is.

Automatische herkenning is afhankelijk van verschillende onderdelen. Home Assistant en het apparaat moeten elkaar bijvoorbeeld via het netwerk kunnen bereiken. Daarnaast moet Home Assistant weten welk protocol of welke integratie bij het apparaat hoort.

Stel dat de slimme stekker in De Werkplaats niet verschijnt.

Controleer dan eerst iets eenvoudigs:

werkt de stekker zelf?

Kun je hem bijvoorbeeld nog bedienen via de oorspronkelijke app van de fabrikant?

Als dat ook niet lukt, ligt het probleem waarschijnlijk niet bij Home Assistant.

Werkt de stekker via de app wel, maar ziet Home Assistant hem niet, dan weet je al iets meer. Het apparaat zelf functioneert blijkbaar en je kunt je onderzoek beperken tot de communicatie tussen Home Assistant en het apparaat.

Die manier van denken gaan we later vaker gebruiken.

Het apparaat is toegevoegd, maar er ontbreken functies

Een apparaat en een entiteit zijn niet hetzelfde.

Dat verschil zagen we eerder al.

Een slimme stekker kan bijvoorbeeld één apparaat zijn, maar verschillende entiteiten leveren:

  • een schakelaar;
  • het actuele energieverbruik;
  • het totale energiegebruik;
  • spanning;
  • stroomsterkte.

Het kan gebeuren dat Home Assistant de stekker netjes toevoegt, maar dat je slechts een deel van deze entiteiten ziet.

Dat hoeft geen fout te zijn.

Sommige entiteiten zijn standaard uitgeschakeld. Andere functies worden misschien niet door de gebruikte integratie ondersteund. Ook kan een bepaald model stekker minder informatie aanbieden dan een vergelijkbaar model.

Kijk daarom eerst bij:

Instellingen → Apparaten & diensten → Apparaten

Open daar het betreffende apparaat.

Je ziet dan welke entiteiten Home Assistant daadwerkelijk aan het apparaat heeft gekoppeld.

Een ontbrekende kaart op je dashboard betekent dus niet automatisch dat de bijbehorende entiteit ontbreekt.

Misschien bestaat de entiteit wel, maar heb je hem simpelweg nog niet op het dashboard geplaatst.

Een entiteit is ‘niet beschikbaar’

Een melding die je regelmatig zult tegenkomen is:

Niet beschikbaar

of in sommige delen van Home Assistant:

Unavailable

Dat betekent dat Home Assistant de entiteit kent, maar op dat moment geen bruikbare informatie van die entiteit ontvangt.

Dat is een belangrijk verschil.

Home Assistant is de slimme stekker dus niet vergeten. De verbinding of communicatie is waarschijnlijk tijdelijk weggevallen.

Bij onze slimme stekker zou je bijvoorbeeld kunnen zien:

switch.werkplaats_stekker
Niet beschikbaar

Je kunt dan eerst controleren of de stekker stroom heeft.

Dat klinkt misschien te eenvoudig, maar juist eenvoudige oorzaken komen vaak voor.

Daarna kun je kijken of het apparaat nog op het netwerk aanwezig is.

Wanneer een wifi-apparaat zijn netwerkverbinding kwijt is, kan Home Assistant de entiteit nog steeds tonen terwijl de status niet beschikbaar is.

De fout zit dan niet in het dashboard.

Het dashboard laat alleen zien wat Home Assistant weet.

De status klopt niet

Een ander soort probleem is subtieler.

Je schakelt de slimme stekker bijvoorbeeld fysiek uit, maar Home Assistant blijft nog even melden dat hij aan staat.

Of een temperatuursensor laat een waarde zien waarvan je zeker weet dat die niet kan kloppen.

Nu is het apparaat wel beschikbaar, maar de informatie lijkt niet overeen te komen met de werkelijkheid.

Dat kan verschillende oorzaken hebben.

Sommige apparaten sturen iedere wijziging onmiddellijk naar Home Assistant. Andere apparaten worden periodiek uitgelezen. Daardoor kan een kleine vertraging ontstaan.

Ook kan een apparaat zelf een verkeerde waarde doorgeven.

Het is daarom nuttig om onderscheid te maken tussen:

wat er werkelijk gebeurt

en

wat Home Assistant denkt dat er gebeurt.

Dat verschil lijkt klein, maar het is bij foutzoeken heel belangrijk.

Maak daar eventueel een klein experiment van.

Schakel de stekker handmatig.

Voorspel eerst wat Home Assistant zou moeten laten zien.

Bekijk vervolgens de status.

Hoe lang duurt het voordat deze verandert?

Je bent dan niet alleen aan het bedienen. Je onderzoekt hoe het systeem zich gedraagt.

De knop werkt, maar het apparaat reageert niet

Stel dat je op het dashboard op de schakelaar van de slimme stekker drukt.

De knop verandert van kleur, maar de lamp die op de stekker is aangesloten blijft uit.

Dan zijn er eigenlijk meerdere mogelijkheden.

Home Assistant kan bijvoorbeeld denken dat het commando succesvol is uitgevoerd, terwijl het apparaat het commando niet werkelijk heeft ontvangen.

Maar er kan ook iets veel eenvoudigers aan de hand zijn.

Misschien staat de lamp zelf uit.

Dat lijkt vanzelfsprekend, maar bij foutzoeken is het nuttig om iedere schakel in de keten apart te bekijken.

Bijvoorbeeld:

Home Assistant → slimme stekker → aangesloten lamp

Als de slimme stekker correct schakelt maar de lamp zelf uitgeschakeld is, werkt Home Assistant precies zoals bedoeld.

Alleen het uiteindelijke resultaat is niet wat je verwachtte.

Controleer daarom niet alleen de software.

Kijk ook naar het fysieke apparaat.

Dat is bij domotica belangrijker dan bij veel andere computersystemen. Home Assistant bestuurt uiteindelijk echte apparaten in de echte wereld.

Een apparaat werkt soms wel en soms niet

Dit zijn vaak de lastigste storingen.

Als iets helemaal niet werkt, kun je meestal vrij gericht zoeken.

Maar een apparaat dat meestal goed werkt en af en toe niet reageert, geeft minder duidelijke aanwijzingen.

Bij wifi-apparaten kan bijvoorbeeld de draadloze verbinding een rol spelen.

Een slimme stekker achter een metalen kast of helemaal aan de rand van het wifi-bereik kan soms goed bereikbaar zijn en soms niet.

Ook kunnen apparaten opnieuw verbinding maken nadat de router of het access point is herstart.

Wanneer iets af en toe uitvalt, noteer dan vooral wanneer het gebeurt.

Bijvoorbeeld:

  • altijd rond hetzelfde tijdstip;
  • na een herstart van Home Assistant;
  • nadat de router opnieuw is gestart;
  • wanneer veel andere apparaten actief zijn;
  • zonder herkenbaar patroon.

Je hoeft het probleem nog niet meteen op te lossen.

Door eerst naar het patroon te kijken, voorkom je dat je willekeurige instellingen gaat veranderen.

Een apparaat heeft ineens een ander IP-adres

Veel apparaten in je netwerk krijgen automatisch een IP-adres van de router.

Dat gebeurt via DHCP.

DHCP is een systeem waarmee een router automatisch netwerkadressen uitdeelt.

Een apparaat kan daardoor na verloop van tijd een ander IP-adres krijgen.

Bij moderne Home Assistant-integraties is dat vaak geen probleem. Ze kunnen het apparaat op een andere manier terugvinden.

Maar sommige integraties, zelfgebouwde apparaten of handmatig ingestelde verbindingen gebruiken rechtstreeks een IP-adres.

Stel dat je een apparaat hebt toegevoegd op:

192.168.1.55

en het krijgt later:

192.168.1.83

dan kan Home Assistant nog steeds proberen verbinding te maken met het oude adres.

Het apparaat lijkt dan ineens verdwenen, terwijl het gewoon op het netwerk aanwezig is.

Later, wanneer je meer netwerkapparaten toevoegt, kun je daarom overwegen om belangrijke apparaten een vast DHCP-adres te geven.

Maar verander dat niet zomaar tijdens het zoeken naar een andere fout.

Onthoud onze regel:

verander één ding tegelijk.

Na een herstart werkt iets tijdelijk niet

Home Assistant bestaat uit verschillende onderdelen die na een herstart opnieuw verbinding met elkaar moeten maken.

Home Assistant zelf kan bijvoorbeeld al bereikbaar zijn terwijl sommige apparaten nog bezig zijn verbinding te maken.

Een wifi-apparaat kan enkele seconden later reageren.

Een externe dienst kan wat langer nodig hebben.

Ook integraties kunnen eerst opnieuw gegevens ophalen voordat alle entiteiten hun normale status krijgen.

Wanneer je Home Assistant net hebt herstart, hoeft een entiteit die kort Niet beschikbaar toont daarom niet direct een probleem te betekenen.

Geef het systeem eerst de kans om stabiel te worden.

Maar kijk wel wat er gebeurt.

Wordt de entiteit na enkele seconden of minuten vanzelf weer beschikbaar?

Dan weet je dat het waarschijnlijk onderdeel van het opstartproces was.

Blijft hij onbeschikbaar?

Dan is er wel reden om verder te kijken.

Een naam is verwarrend geworden

Tijdens het toevoegen van de eerste apparaten lijkt naamgeving niet zo belangrijk.

Je hebt misschien maar één slimme stekker en noemt hem:

Slimme stekker

Dat werkt prima.

Totdat je er vijf hebt.

Dan verschijnen bijvoorbeeld:

  • Slimme stekker
  • Slimme stekker 2
  • Slimme stekker 3
  • Plug
  • Switch woonkamer

Technisch kan alles perfect functioneren, maar voor jou wordt het steeds moeilijker om te bepalen welk apparaat je voor je hebt.

Dat zorgt later gemakkelijk voor fouten in dashboards en automatiseringen.

Gebruik daarom namen die iets zeggen over de functie of plaats.

Bijvoorbeeld:

Werkplaats – bureaulamp

of:

Woonkamer – staande lamp

De naam hoeft niet alle technische informatie te bevatten.

Het belangrijkste is dat jij over een jaar nog begrijpt welk apparaat ermee bedoeld wordt.

Verkeerde entiteit gekozen

Een apparaat kan meerdere entiteiten hebben die sterk op elkaar lijken.

Bij een slimme stekker zie je bijvoorbeeld misschien:

  • Schakelaar
  • Vermogen
  • Energie
  • Spanning
  • Stroom

Bij complexere apparaten kunnen er tientallen entiteiten zijn.

Het is daardoor mogelijk dat je bij het maken van een dashboard of automatisering per ongeluk de verkeerde entiteit kiest.

Stel dat je later een automatisering maakt die moet reageren op het vermogen van een stekker.

Dan is:

vermogen

iets anders dan:

energie

Vermogen wordt meestal uitgedrukt in watt en vertelt hoeveel energie er op dat moment wordt gebruikt.

Energie wordt meestal uitgedrukt in kilowattuur en vertelt hoeveel energie er over een periode is verbruikt.

Een automatisering die naar de verkeerde waarde kijkt, kan technisch volledig correct zijn en toch niet doen wat jij verwacht.

Controleer daarom altijd:

welke entiteit gebruik ik eigenlijk?

Een automatisering doet niets

In een eerder hoofdstuk heb je kennisgemaakt met je eerste eenvoudige automatisering.

Automatiseringen lijken in het begin soms onvoorspelbaar.

Je verwacht dat een lamp wordt ingeschakeld, maar er gebeurt niets.

Het eerste wat veel mensen dan doen is de hele automatisering aanpassen.

Maar een automatisering bestaat uit verschillende onderdelen.

Heel eenvoudig gezegd:

trigger → voorwaarden → actie

De trigger bepaalt wanneer Home Assistant naar de automatisering moet kijken.

Voorwaarden bepalen of de automatisering op dat moment mag doorgaan.

De actie bepaalt wat Home Assistant vervolgens moet uitvoeren.

Wanneer de lamp niet wordt ingeschakeld, weet je dus nog niet welk onderdeel het probleem veroorzaakt.

Misschien is de trigger nooit actief geworden.

Misschien blokkeert een voorwaarde de uitvoering.

Misschien is de actie wel uitgevoerd, maar reageert het apparaat niet.

Dat onderscheid wordt belangrijk zodra automatiseringen uitgebreider worden.

De automatisering werkt handmatig wel

Home Assistant biedt bij automatiseringen de mogelijkheid om een actie handmatig uit te voeren.

Dat is erg handig bij het testen.

Stel dat jouw automatisering de slimme stekker moet inschakelen.

Wanneer je de actie handmatig uitvoert en de stekker schakelt netjes in, heb je iets belangrijks ontdekt.

De stekker werkt.

De actie werkt waarschijnlijk ook.

Je hoeft dan niet meer bij het apparaat te beginnen zoeken.

Het probleem zit waarschijnlijk eerder in de automatisering, bijvoorbeeld bij de trigger of een voorwaarde.

Dat is precies waarom testen zo nuttig is.

Je probeert niet meteen alles te repareren.

Je probeert eerst delen van het systeem uit te sluiten.

Een dashboard is niet hetzelfde als de werkelijkheid

Een dashboard is vooral een manier om informatie te tonen en apparaten te bedienen.

Het dashboard zelf is meestal niet de bron van de informatie.

Wanneer een kaart op het dashboard een verkeerde status laat zien, is het daarom nuttig om ook direct naar de entiteit te kijken.

Ga bijvoorbeeld naar:

Instellingen → Apparaten & diensten → Entiteiten

of open het apparaat waartoe de entiteit behoort.

Daar kun je controleren welke status Home Assistant werkelijk heeft opgeslagen.

Als de entiteit daar correct staat maar de dashboardkaart niet, ligt het probleem waarschijnlijk bij de kaart of de configuratie daarvan.

Als de entiteit daar ook verkeerd staat, hoef je het dashboard voorlopig niet verder te onderzoeken.

Zo verklein je het probleem stap voor stap.

Oude of dubbele apparaten

Wanneer je tijdens het experimenteren apparaten meerdere keren toevoegt en verwijdert, kunnen er soms oude vermeldingen achterblijven.

Je ziet dan bijvoorbeeld twee apparaten met bijna dezelfde naam.

Of je hebt twee entiteiten waarvan je niet meer weet welke de juiste is.

Verwijder dan niet meteen alles.

Open beide apparaten en kijk welke informatie ze bevatten.

Controleer bijvoorbeeld:

  • wanneer ze voor het laatst zijn bijgewerkt;
  • welke integratie ze gebruikt;
  • welke entiteiten erbij horen;
  • welke entiteit daadwerkelijk reageert wanneer je het apparaat bedient.

Pas wanneer je zeker weet welk apparaat oud is, kun je het verwijderen.

Ook hier geldt:

eerst vaststellen, daarna veranderen.

Een update verandert gedrag

Home Assistant wordt actief ontwikkeld.

Dat betekent dat er regelmatig updates verschijnen.

Updates lossen fouten op, voegen functies toe en verbeteren de beveiliging. Maar soms verandert ook gedrag.

Wanneer iets direct na een update anders werkt, is dat waardevolle informatie.

Dat betekent niet automatisch dat de update de oorzaak is.

Maar het moment waarop het probleem ontstond helpt wel bij het zoeken.

Noteer daarom bij een onverwacht probleem bijvoorbeeld:

Werkte gisteren nog.
Home Assistant vanochtend bijgewerkt.
Sindsdien is de slimme stekker niet beschikbaar.

Dat is veel bruikbaarder dan:

De stekker doet het niet.

Je begint langzaam te zien dat foutzoeken voor een belangrijk deel neerkomt op goede waarnemingen doen.

Een foutmelding is informatie

Een rode melding ziet er vervelend uit.

Toch is een foutmelding meestal juist behulpzaam.

Home Assistant probeert je ermee te vertellen waar iets misgaat.

Probeer een foutmelding daarom niet zo snel mogelijk weg te krijgen.

Lees eerst wat er werkelijk staat.

Let vooral op:

  • de naam van het apparaat;
  • de naam van de integratie;
  • een IP-adres;
  • een entiteitsnaam;
  • een tijdstip;
  • woorden als timeout, unavailable, authentication of connection.

Je hoeft niet ieder technisch woord meteen te begrijpen.

Zelfs één herkenbaar onderdeel kan al helpen om het probleem af te bakenen.

Een melding met het IP-adres van je slimme stekker vertelt bijvoorbeeld al dat het probleem waarschijnlijk iets met de communicatie met die stekker te maken heeft.

Niet meteen opnieuw installeren

Wanneer iets niet werkt, lijkt opnieuw installeren soms de snelste oplossing.

Soms helpt dat inderdaad.

Maar je verliest daarmee ook informatie.

Stel dat je de integratie van de slimme stekker verwijdert en opnieuw toevoegt.

Daarna werkt alles weer.

Dan weet je nog steeds niet:

  • waarom de verbinding wegviel;
  • of het probleem opnieuw kan ontstaan;
  • of er iets mis was met het netwerk;
  • of alleen Home Assistant het apparaat niet meer kon bereiken.

Daarnaast kun je bij verwijderen en opnieuw toevoegen namen, instellingen of koppelingen met automatiseringen kwijtraken.

Gebruik opnieuw installeren daarom liever niet als eerste stap.

Probeer eerst te begrijpen wat er gebeurt.

Niet alles tegelijk veranderen

Dit is misschien wel de belangrijkste fout die je zelf kunt voorkomen.

Stel dat de slimme stekker niet reageert.

Je verandert het IP-adres.

Je herstart Home Assistant.

Je herstart de router.

Je verwijdert de integratie.

Je reset daarna de slimme stekker.

Vervolgens werkt alles weer.

Welke verandering heeft geholpen?

Dat weet je niet.

Sterker nog: misschien heb je onderweg een tweede probleem veroorzaakt dat pas later zichtbaar wordt.

Verander daarom steeds één onderdeel.

Controleer daarna het resultaat.

Bijvoorbeeld:

  • controleer of de stekker stroom heeft;
  • verander nog niets;
  • controleer of hij via zijn eigen app bereikbaar is;
  • verander nog niets;
  • controleer de status in Home Assistant;
  • pas daarna eventueel iets aan.

Dat voelt soms langzamer.

In de praktijk wordt foutzoeken er meestal juist sneller door.

Je voorkomt dat je steeds opnieuw vanaf nul moet beginnen.

Denk in een keten

De slimme stekker uit De Werkplaats is een mooi voorbeeld omdat er meerdere onderdelen samenwerken.

Je kunt de hele route eenvoudig voorstellen als:

jij → dashboard → Home Assistant → netwerk → slimme stekker → lamp

Wanneer de lamp niet aangaat, kan het probleem op ieder punt in die keten zitten.

Misschien werkt de dashboardknop niet.

Misschien voert Home Assistant het commando niet uit.

Misschien is het netwerk weg.

Misschien is de slimme stekker offline.

Misschien werkt de stekker wel maar staat de lamp zelf uit.

Door het systeem als een keten te bekijken, wordt een probleem minder mysterieus.

Je hoeft niet meteen te weten wat er kapot is.

Je hoeft alleen te ontdekken:

tot waar werkt het nog wel?

Daarmee kom je vanzelf dichter bij de oorzaak.

Eerst begrijpen, daarna oplossen

Wanneer je met Home Assistant werkt, zul je fouten blijven tegenkomen.

Dat geldt niet alleen voor beginners.

Een groter Home Assistant-systeem bevat nu eenmaal veel onderdelen: netwerkapparatuur, integraties, sensoren, automatiseringen en fysieke apparaten.

Het doel is daarom niet om een systeem te bouwen waarin nooit iets fout gaat.

Het doel is dat je begrijpt hoe je kunt ontdekken waar het fout gaat.

Dat begint met een paar eenvoudige gewoontes:

  • voorspellen wat er zou moeten gebeuren;
  • waarnemen wat er werkelijk gebeurt;
  • controleren welke onderdelen nog werken;
  • foutmeldingen lezen;
  • één verandering tegelijk uitvoeren.

Als je die aanpak gebruikt, verandert een storing van:

Het werkt niet.

langzaam in iets veel concreters, zoals:

Home Assistant werkt en de stekker heeft stroom, maar Home Assistant kan de stekker sinds de herstart van het netwerk niet meer bereiken.

En met zo'n beschrijving kun je gericht verder zoeken.

Dat is precies wat we in het volgende hoofdstuk gaan doen.

Daar gaan we van losse controles naar een vaste aanpak:

Zo zoek je systematisch naar een probleem.