Voor een gezond woonklimaat is het belangrijk om een goede indicatie te hebben van de luchtkwaliteit in verschillende ruimtes. Met luchtkwaliteit bedoel ik de volgende parameters: Fijnstof, CO2, TVOCs, NOx, Temperatuur en Luchtvochtigheid. Voor dit doel zijn er verschillende apparaten in de handel waarmee je dit kunt meten en weergeven in Home Assistant. De meeste Home Assistant gebruikers willen graag veel sensoren hebben, maar er weinig voor betalen. Dit geldt ook voor mij. Degenen die mijn blog volgen weten dat ik al enkele jaren een luchtkwaliteitssensor heb. Zie deze blog. Voor deze sensor is helaas geen koppeling met Home Assistant beschikbaar. Daarom ben ik gaan zoeken naar apparaten die wel aan Home Assistant gekoppeld kunnen worden. Zo kwam ik bij Airgradient uit. Zij bieden zowel een Outdoor Monitor als een Indoor Monitor aan, precies wat ik zoek! Dan zul je denken: zo’n apparaat bestellen, aan HA koppelen en klaar? Dat zou kunnen, maar is wel een hele dure optie. Er blijkt veel meer achter te zitten en mogelijk te zijn dan ik dacht. Fabrikanten, ontwikkelaars en platformen die samenwerken om op een uiterst krachtige manier hele mooie en goede producten te maken tegen hele scherpe prijzen. Ik ben uit gaan zoeken hoe deze wereld in elkaar zit omdat ik tegen heel veel aspecten al aangelopen was, maar het verband niet zag. Wat is de relatie tussen Airgradient, ESPhome en Homeassistant? Hoe kun je zo makkelijk allerlei apparaten zelf maken met microcontrollers? En deze koppelen aan je eigen Home Assistant? Waar begin je, en waar eindigt het? Als je dit artikel hebt gelezen, zul je beter begrijpen waarom dit mij zo fascineert en waarom Home Assistant mede zo populair geworden is. Omdat hier vele aspecten aan de orde komen heb ik het artikel als volgt opgebouwd:
- Ik begin met het beschrijven van de opbouw van een luchtkwaliteitssensor.
- Vervolgens beschrijf ik 3 manieren hoe je aan zo’n sensor kunt komen.
- Tenslotte beschrijf ik wat je softwarematig moet doen om een en ander werkend te krijgen.
De opbouw van een luchtkwaliteitssensor
Als je op de Airgradient Outdoor Monitor pagina naar beneden gaat scrollen, kom je al meteen een heel technisch plaatje tegen. Voor het gemak heb ik deze gecopieerd. Zie hieronder.
In deze afbeelding zie je diverse sensoren. Hiermee hebben we de eerste verwarring te pakken: dit worden ook sensoren genoemd. Een sensor in de context van Home Assistant meet dus 1 of meerdere (luchtkwaliteit) parameters.
De fijnstof sensor
In dit apparaat is de PMS5003T van Plantower gebruikt. Als je op fijnstofsensoren gaat zoeken, kom je enkele fabrikanten hiervan tegen. In de coronatijd zijn er veel fijnstofsensoren met elkaar vergeleken. De Plantower kwam er best goed uit. En wat nog interessanter is: deze is goed betaalbaar. Op Aliexpress kost deze zo’n 20 euro. Wat belangrijk om te realiseren is bij een fijnstof sensor is dat de levensduur beperkt is tot zo’n 10.000 uur, oftewel 415 dagen. Verder zit er een ventilator in om de lucht er doorheen te blazen, hier moet dus ook goed de ruimte voor zijn. Anders meet je niets. Dan heb je ook nog uitvoeringen met een T op het einde van de naam. Deze sensoren hebben een ingebouwde vochtigheids- en temperatuursensor. Omdat de fijnstofstofsensor warmte genereert bij het meten, beinvloed deze de metingen. Ik maak hier daarom geen gebruik van. Vervolgens heb je ook nog de PMS7003 en enkele andere varianten. Voor een redelijk compleet overzicht zie https://esphome.io/components/sensor/pmsx003/. Maar let op: dit is geen compleet overzicht. Plantower (website fabrikant) biedt dit om mij onduidelijke redenen dit overzicht niet. De PMS7003 schijnt een iets verbeterde versie van de PMS5003 te zijn, maar het is mij onduidelijk waarom je vrijwel alleen de PMS5003 aangeboden ziet worden. Overigens heeft mijn sensor een PMS7003. Het prijsverschil tussen beide sensoren is verwaarloosbaar. Om de levensduur te verlengen is er een truuk om de sensor minder hard te laten werken. Zie het zojuist genoemde overzicht. Download onderzoeksrapport Download PMS5003 datasheet
De CO2 sensor
Een belangrijke leverancier van CO2 sensoren is SenseAir. De meest bekende is de S8. Deze kost ongeveer net zoveel als de fijnstof sensor.
De temperatuur en vochtigheidssensoren
Losse temperatuur en vochtigheidssensoren (vaak gecombineerd) kosten minder dan een euro.
De TVOC/NOx sensoren
Voor het meten van TVOC/NOx zijn er de Sensirion sensoren SG30, SGP40 en SGP41. De prijsverschillen zijn gering. Zelf vind ik deze sensor minder interessant. Ze kosten zo’n 5,50-7,50 euro bij Aliexpress.
De ESP microcontroller
Al deze sensoren worden gekoppeld aan een ESP microcontroller module van Espressif. Populaire modules zijn gebaseerd op de ESP8266 en ESP32. Deze Silicon on Chips (SoCs) zijn er in veel varianten. Zie https://www.espressif.com/en/products/socs voor een overzicht. Espressif levert zelf voor al deze processoren development boards, maar deze heb je in de meeste gevallen niet nodig. Naast losse SoCs levert Espressif deze SoCs ook in modules. Deze zijn handig als je zelf producten wilt maken in kleinere aantallen. Maar ook dit zul je meestal niet willen doen. Deze Espressif modules vind je ook op bovengenoemde pagina. Er zijn diverse fabrikanten die de Espressif SoCs zelf op een printplaat hebben gezet. Een voorbeeld hiervan is Wemos, zie https://wemos.cc. Veelgebruikte modules in ons toepassingsgebied zijn de D1 mini en C3 mini. De eerste is gebaseerd op de ESP8266, de andere op de ESP32-C3. De ESP32 is krachtiger dan de ESP8266. Deze modules worden tegen bizar lage prijzen verkocht op Aliexpress en Amazon en zijn bedoeld voor gebruikers als ons. Nu we weten hoe een luchtkwaliteitssensor is opgebouwd gaan we kijken naar de handigste manier om aan zo’n apparaat(sensor) te komen. Of meerdere sensoren… Ik ga dit beschrijven aan de hand van de Airgradient producten.
Compleet geassembleerd
De duurste en makkelijkste manier is deze compleet geassembleerd met eigen software geladen en alle luxe die je maar kunt bedenken te kopen. De Outdoor versie kost dan 225 USD en de Indoor versie 230 USD. Beiden met alle genoemde sensoren. Deze prijs is exclusief verzendkosten vanaf Thailand. Deze bedragen enkele tientjes per apparaat. En bij invoer in Nederland heb je kans dat je ook nog BTW moet betalen. Dan worden deze apparaten wel duur en loop je zo tegen de 300 euro aan.
Airgradient bouwpakket
Een goedkopere manier is om deze als kit te bestellen voor 125 resp 138 USD. Dit scheelt een forse slok op de borrel. Maar let op: al deze varianten worden zonder USB-C voeding geleverd. Voor deze varianten worden wel duidelijke bouwinstructies geleverd.
DIY bouwpakket
De goedkoopste manier is om de behuizing zelf te printen en de onderdelen zelf te bestellen. Wat blijkt: Airgradient heeft alles opensource beschikbaar gemaakt! Helaas is de informatie hierover niet makkelijk te vinden. Dit is de link: https://www.airgradient.com/documentation/ag-models/ Op deze pagina zie je dat er een hele historie aan productvarianten is. Als je op deze pagina bent, ben je nog niet bij de documentatie voor het zelf maken van deze producten. De link naar deze documentatie vind je op https://www.airgradient.com/open-source-initiative/. Als je deze pagina leest, zie je nog steeds geen directe link. Waar is deze dan te vinden? Heel goed verstopt in de airgradient-map GitHub Repository. Heel creatief! De kosten bedragen dan ongeveer 50 euro voor elk van de bovengenoemde modellen. Als je wilt, bestel en plaats je slechts de sensoren die je nodig hebt. Zo kom je nog goedkoper uit.
- Direct flashing via de browser werkt, maar ik kreeg geen koppeling met Home Assistant voor elkaar.
- Manual flashing met de Arduino Software: Van deze alinea klopt helemaal niets.
- Flashing of the Airgradient firmware: van deze alinea klopt helemaal niets.
- YAML file die ik had gekregen zat vol met fouten.
- De instructie voor het monteren van de kabel is fout.
- De RX/TX pinnen moeten gekruist op de processor aangesloten worden.
- Check de datasheet hiervoor! Gelukkig kun je dit in de YAML makkelijk configureren.
Het installeren van de software
Als je een compleet geassembleerde Airgradient sensor koopt, is de software al op de ESP geladen en getest. Je zou deze dan moeten kunnen koppelen met de Airgradient koppeling in Home Assistant. Dit heb ik verder niet getest. Ik ben er later achtergekomen dat je op de DIY versie ook de Airgradient software kunt installeren. Deze is beschikbaar op GitHub. De route die ik heb gekozen is die via de ESPhome integratie. Zie esphome.io voor een complete beschrijving. Het idee van ESPhome is om op een hele makkelijke manier allerlei sensoren aan allerlei microcontrollers te kunnen koppelen om deze op afstand uit te kunnen lezen en bedienen. Dit platform ondersteunt vele microcontrollers en honderden sensoren. Het is primair geschreven om te gebruiken om devices draadloos te koppelen met Home Assistant, maar er zijn ook integraties met andere platformen beschikbaar. Firmware kun je draadloos (Over The Air) updaten en er is uitgebreide logging beschikbaar (in Home Assistant) waarmee je kunt zien of je sensor goed gekoppeld is aan je microcontroller en goed werkt. Het enige programma dat je moet schrijven voor de microcontroller is een YAML configuratie bestand.
Het maken van een YAML configuratie bestand
Eigenlijk is dit heel eenvoudig. Van elk component dat ondersteunt wordt (microcontroller, sensor) is documentatie op esphome.io/components beschikbaar. Deze beschrijft de YAML code die voor dit component toegevoegd moet worden inclusief voorbeelden. Deze code schrijf je in een HA Add-on genaamd ESPHome Builder, welke je moet installeren op je Home Assistant server. De eerste keer dat je een device toevoegt, vraagt de Builder naast de naam van het apparaat om je wifi credentials. Deze slaat hij op en kun je vervolgens voor al je toe te voegen apparaten gebruiken. Zie onderstaand screenshot voor wat je ziet na het aanmaken van een nieuw device.
Voordat je aan je YAML code gaat werken, is het handig om de eerste versie van je code alvast te installeren op je device. Hiervoor is het vereist dat je bovenin je YAML code beschreven hebt welke processor en bord je gebruikt. Deze heb je waarschijnlijk al ingevuld bij het aanmaken van het device. Klik vervolgens op Install. (Zie onderstaand screenshot)

Klik vervolgens op de manier waarop je de eerste keer je programma wilt installeren. Mijn advies is om je device via USB-C te koppelen aan je laptop. Wat je nu ziet is fascinerend: ESPHome Builder gaat nu de firmware genereren voor de microcontroller. Dit gaat waarschijnlijk niet zo snel omdat dit compileren plaatsvindt op je HA server. En dan ben je blij met een Intel server in plaats van een Raspberry Pi 😉 Zodra de firmware gereed is, moet je deze downloaden en kun je deze via de wizard uploaden naar je device. Als dit ook afgerond is, zal het device opnieuw opstarten en kun je in de logs zien of alles goed gaat. Je kunt nu de USB-kabel loshalen en het apparaat nogmaals op laten starten. Bekijk de logs en als dit ook goed gaat, kun je verder met het aanpassen van je YAML file. Ik ben erachter gekomen dat je de YAML scripten ook kunt downloaden van Github. Deze zijn erop gezet door gebruiker MallocArray en bevatten enkele leuke extra features. Link: https://github.com/MallocArray/airgradient_esphome/tree/main
Klik zodra je YAML file goed is weer op install, maar nu kun je dit draadloos doen. Controleer wederom in je logfile of het device goed opstart. Als er iets niet werkt, zul je het hier zien. Zo, als het goed is, is de firmware nu gereed! Het device kan gekoppeld worden aan Home Assistant.
Device koppelen aan Home Assistant
Installeer voor dit doel de ESPHome integratie, en voeg op de bekende manier je zojuist gebouwde ESPHome device toe.
Tot slot
De meeste aspecten die ik beschreven heb in deze blogpost waren verre van triviaal voor mij, maar zodra ik alle puzzelstukjes bestudeerd had vielen de kwartjes op hun plaats. Ik ben nu in staat om de juiste keuzes te maken en jou hierbij ook te helpen.
Inmiddels heb ik de onderdelen binnen om nog 2 sensoren in elkaar te zetten. Deze wil ik gaan vergelijken met elkaar voordat ze hun definitieve plek ik huis krijgen (buiten, woonkamer en slaapkamer). De resultaten hoop ik t.z.t. aan deze blogpost toe te voegen.
Vind je dit teveel werk en Airgradient te duur? Smarthomeshop.io heeft ook een Indoor sensor te koop, dit is de Ultimatesensor. Maar zij leveren helaas geen Outdoor sensor. Ik hoop dat je er wat aan hebt en doe er je voordeel mee. Laat je in de comments weten welke sensor jij gekozen hebt en waarom?
Recente reacties