ID.nl logo
Maak je eigen VPN met WireGuard en Tailscale
© arrow - stock.adobe.com
Huis

Maak je eigen VPN met WireGuard en Tailscale

Bij het opzetten van een VPN-server kun je het jezelf heel makkelijk óf heel moeilijk maken, er is niet echt een tussenweg. Het populaire WireGuard is daarop geen uitzondering.

In dit artikel behandelen we twee toegankelijke installatiemethodes op een VPN op te zetten:

  • WireGuard Easy via Docker
  • Tailscale

Meer weten over Docker? Instapcursus Docker Desktop: geen gedoe met losse applicatiebestanden

Er zijn de laatste jaren veel initiatieven geweest om het opzetten van een VPN-server te vereenvoudigen. Ze besparen je de tijd en moeite van een volledig handmatige configuratie, waarbij je bijvoorbeeld privésleutels en publieke sleutels moet maken en (diep) in de configuratie voor het netwerk en de gebruikers moet duiken. Helaas is met PiVPN zo’n initiatief verdwenen. De tool bood verbindingen via OpenVPN en WireGuard aan met beheer via de Opdrachtprompt, op een Raspberry Pi en onder Debian of Ubuntu. Onlangs werd de ontwikkeling stopgezet, al verschijnen er nog wel kritieke updates. Er zijn gelukkig goede alternatieven. Zo kun je met WireGuard Easy relatief snel een VPN-server in het netwerk opzetten. Daarvoor gebruik je Docker Compose. Heel praktisch is de mogelijkheid om gebruikers via een dashboard in je browser te beheren. En door een QR-code te scannen zet je in een handomdraai een verbinding vanaf een smartphone op. Geholpen door Docker Compose zijn ook andere slimme combinaties mogelijk, bijvoorbeeld met Unbound en Pi-hole. Je hebt dan niet alleen een VPN-server, maar ook een privacyvriendelijke DNS en kunt advertenties blokkeren. Heb je toch nog moeite om alles aan de praat te krijgen, dan kan Tailscale, dat gebruikmaakt van de WireGuard-technologie, redding bieden. Het is een soort ‘cheat code’ voor supereenvoudige verbindingen tussen je apparaten. Het prikt door elke firewall heen, terwijl het op de achtergrond gewoon met WireGuard werkt. We laten aan het einde van dit artikel kort zien hoe je met deze tool kunt werken.

WireGuard-protocol: snel en efficiënt Bij het opzetten van een VPN-verbinding is OpenVPN een van de belangrijkste protocollen. Het opensource WireGuard wint echter snel terrein. Kenmerkend zijn de efficiëntere code, snellere verbindingsopbouw en hogere doorvoersnelheid. Ter illustratie: WireGuard kent maar zo’n 4.000 regels code, tegenover zo’n 600.000 voor OpenVPN met OpenSSL. WireGuard kreeg mede daardoor ook de goedkeuring van Linux-voorman Linus Torvalds, die de codebase in 2018 een ‘work of art’ noemde in vergelijking met de alternatieven. Het is uitgebracht onder GPLv2, dezelfde licentie als Linux. En sinds 2020 maakt het – vanaf versie 5.6 – standaard deel uit van de Linux-kernel. WireGuard bereikt de hoge prestaties onder meer door moderne cryptografie toe te passen. De laatste jaren kiezen steeds meer VPN-providers voor het protocol. Je kunt het ook zelf gebruiken voor een VPN-server in je netwerk. Ook zijn er tools als Tailscale die het opzetten van de verbinding vereenvoudigen, maar op de achtergrond wel gebruikmaken van WireGuard.

Het snelle en efficiënte WireGuard-protocol wordt steeds meer de standaard.

1 Wat gaan we doen

WireGuard staat centraal in dit artikel. Je kunt hier op meerdere manieren gebruik van maken. We beginnen met een eigen VPN-server in je netwerk. Daarmee heb je alles onder controle. Op afstand, bijvoorbeeld vanaf je vakantieadres, kun je hiermee verbinden, zodat je veilig kunt internetten of toepassingen op je lokale netwerk kunt gebruiken. We gaan hiervoor met het gebruiksvriendelijke WireGuard Easy aan de slag via Docker Compose. Als alternatief laten we zien hoe je WireGuard als add-on binnen Home Assistant OS kunt installeren. De server willen we via een gemakkelijk te onthouden hostnaam kunnen bereiken, daarvoor gebruiken we Duck DNS. Dat verhelpt ook meteen verbindingsproblemen bij een dynamisch ip-adres. Ook laten we zien hoe je de clients kunt instellen, wat vaak zo makkelijk is als het scannen van een QR-code. Loop je toch nog tegen beperkingen aan, dan kan Tailscale redding bieden. Deze tool behandelen we aan het eind van dit artikel. Alle instructies kun je overigens ook op een VPS-server uitvoeren, waarmee je een alternatief hebt voor een betaalde VPN-dienst.

Voor het opzetten van een VPS-server, lees dit artikel: Zo zet je in een handomdraai je eigen virtual private server op

©FABIO PRINCIPE

Een VPN-server kun je onder meer gebruiken tijdens je vakantie.

2 Wat heb je nodig

Voor de installatie van WireGuard als VPN-server heb je een Linux-server met Docker Compose in je netwerk nodig. Hier worden geen bijzondere eisen aan gesteld. Je zou een recente Raspberry Pi kunnen gebruiken of een eenvoudige Intel Celeron J4125, N100 of N5105. Zulke systemen moeten een 500megabit-verbinding gemakkelijk kunnen verdragen. Bij de juiste instellingen zal de doorvoersnelheid met of zonder VPN zelfs nauwelijks afwijken.

Voor toegang tot je VPN-server is het wel nodig om een poort in je netwerk open te zetten. Ook moet je de clients die verbinding gaan maken vooraf instellen. Het is voor WireGuard belangrijk dat je een ‘echt’ publiek IPv4-adres hebt zonder het zogeheten Carrier-Grade NAT ofwel CGNAT (zie het kader ‘CGNAT verhindert inkomende verbindingen’). Hoewel CGNAT vooral op mobiele netwerken wordt ingezet, passen enkele internetproviders, zoals Delta, het ook op het vaste netwerk toe.

Voor het opzetten van een verbinding via Tailscale is de belangrijkste eis dat de twee apparaten een internetverbinding hebben. Het werkt dus overal door elke firewall heen en heeft ook geen last van CGNAT of vergelijkbare beperkingen.

Tailscale heeft geen last van firewalls of andere beperkingen.

CGNAT verhindert inkomende verbindingen Bij CGNAT (Carrier-Grade NAT) krijg je geen echt publiek ipv4-adres, maar een privé ipv4-adres. Er zit dus een soort poortwachter tussen. Die zorgt ervoor dat het achterliggende publieke ipv4-adres feitelijk wordt gedeeld met soms wel duizenden anderen. Dit staat het verbinden met je eigen servers vanaf internet in de weg. Delta sluit daarom overigens wel klanten uit die portforwarding benutten.

Je kunt eenvoudig controleren of CGNAT wordt gebruikt. Controleer bijvoorbeeld het privé-ip-adres dat jouw router heeft gekregen. Bij CGNAT komt dit meestal uit het adresblok 100.64.0.0/10 dat hiervoor is gereserveerd. Dit omvat de adressen 100.64.0.0 t/m 100.127.255.255. Vergelijk het met je werkelijke publieke ipv4-adres (raadpleeg bijvoorbeeld www.whatismyip.com). Als dat hetzelfde adres is, wordt er geen CGNAT gebruikt. Als alternatief kun je een traceroute uitvoeren via de Opdrachtprompt in Windows. Geef de opdracht tracert met daarachter het publieke ipv4-adres. Als er maar één knooppunt is, wordt er geen CGNAT gebruikt.

3 WireGuard Easy

WireGuard Easy, gemaakt door een Nederlander (Emile Nijssen), is een van de eenvoudigste methodes voor het opzetten van een VPN-server. Niet alleen kun je het met Docker of via een configuratiebestand voor Docker Compose snel installeren, je krijgt er ook nuttige extra’s bij. Zo kun je via een dashboard gebruikers bekijken, toevoegen, bewerken of verwijderen. Je kunt ook per gebruiker het configuratiebestand downloaden waarmee verbinding kan worden gemaakt of eenvoudigweg een QR-code weergeven voor ditzelfde doel. Tot slot krijg je inzicht in de verbonden gebruikers en het verkeer.

Voor onze VPN-server werken we met het gebruiksvriendelijke WireGuard Easy.

4 Registratie bij Duck DNS

Duck DNS is een dynamische DNS-provider (ook wel DDNS genoemd). Het is een gratis dienst die ervoor zorgt dat je altijd via een eenvoudig te onthouden hostnaam verbinding kunt maken met je internetverbinding thuis. Het werkt met zowel een vast als dynamisch ip-adres. Als het ip-adres wisselt, wordt dit automatisch bijgewerkt via een toepassing in je netwerk (dit activeren we in de volgende stap). Om Duck DNS te gebruiken, ga je naar www.duckdns.org. Maak een account aan door in te loggen met één van de genoemde diensten (zoals Google of GitHub) en volg de instructies. Op het laatste scherm zie je een token die je in de volgende stap nodig hebt voor het bijwerken van je ip-adres. Ook kun je hier tot vijf subdomeinen toevoegen. Vul bij sub domain een eerste subdomeinnaam in en klik op add domain. Als voorbeeld gebruiken we de naam mcvpn waarmee de volledige hostnaam mcvpn.duckdns.org wordt. Welk ip-adres initieel wordt gebruikt, kun je nu aflezen. Ook kun je het controleren door de Opdrachtprompt in Windows te openen en de opdracht ping subdomein.duckdns.org in te voeren. Als het goed is, zie je het ip-adres van jouw internetverbinding.

Met Duck DNS kun je een gratis DDNS-adres verkrijgen.

5 Bijwerken ip-adres

Zeker als je een wisselend ip-adres hebt, is het raadzaam om dit automatisch bij te werken via een toepassing in je netwerk. Op de website van Duck DNS vind je diverse installatiemethodes. Omdat we WireGuard Easy via Docker Compose installeren, ligt het voor de hand om Duck DNS ook via Docker Compose bij te werken.

Je kunt WireGuard optioneel ook als add-on voor Home Assistant installeren (zie het kader ‘WireGuard via Home Assistant’). In dat geval is het slim om ook een add-on voor Duck DNS te gebruiken.

Voor Docker Compose kun je de onderstaande inhoud als uitgangspunt nemen voor het bestand docker-compose.yml. Zet dit bestand liefst in een eigen map voor Duck DNS.

De waardes voor PUID en PGID kun je onder Linux achterhalen met de opdracht id. Dit is vooral belangrijk voor toegang tot het bestandssysteem op de host. Achter TOKEN= vul je de token in uit je account bij Duck DNS. Achter SUBDOMAINS= vul je het subdomein bij Duck DNS in. Start daarna de toepassing met:

docker compose up -d

Daarmee start de container op de achtergrond. Wil je controleren of alles goed staat, dan kun je de eerste keer eventueel starten met:

docker compose up

Stop de container daarna met Ctrl+C en start deze alsnog op de achtergrond.

Voor het bijwerken van het ip-adres van Duck DNS gebruiken we Docker Compose.

WireGuard via Home Assistant Je kunt WireGuard ook als add-on installeren binnen Home Assistant OS. Je kunt dan Home Assistant (en andere diensten op je netwerk) op afstand via een beveiligde verbinding gebruiken. De installatie is eenvoudig. Ga naar Instellingen / Add-ons en kies Add-on winkel. WireGuard vind je onder het kopje Home Assistant Community Add-ons. Klik erop en kies Installeer. Ga dan naar het tabblad Configuratie. Onder het kopje server vul je achter host: de hostnaam in (zoals mcvpn.duckdns.org) om mee te verbinden. Onder het kopje peers vul je achter name: een naam voor de gebruiker in. Bewaar de aanpassingen en start de add-on. Kijk onder Logboek of alles goed is gegaan. De handigste verbindingsmethode is ook hier via een QR-code. In de map /ssl/wireguard vind je daarvoor onder de gekozen gebruikersnaam het bestand qrcode.png. Je kunt dit openen met een add-on, zoals File editor. In de configuratie van File editor moet je wel de optie Enforce Basepath uitzetten, anders kun je alleen de configuratiemap /config benaderen. Gebruik je Duck DNS, dan kun je aanvullend nog de add-on installeren om je ip-adres up-to-date te houden voor deze dienst.

Met de add-on zet je eenvoudig een WireGuard-tunnel op voor onder meer home Assistant.

6 Installatie WireGuard Easy

We gaan nu WireGuard via Docker Compose installeren. Hierbij nemen dit Docker Compose-bestand als basis. Daarin maken we enkele aanpassingen. Hierna ziet de volledige configuratie er als volgt uit:

Ten opzichte van de standaardconfiguratie veranderen we met LANG=nl de taal voor het dashboard naar Nederlands. Achter WG_HOST hebben we de hostnaam van Duck DNS ingevuld die we in stap 4 activeerden. Als je thuis een vast ip-adres hebt, kun je er ook voor kiezen om eenvoudigweg het ip-adres in te vullen. Ook zou je een (sub)domein via de DNS-instellingen bij je provider kunnen laten verwijzen naar je ip-adres thuis, zodat je dat (sub)domein kunt gebruiken.

De configuratie voor WireGuard Easy voor Docker Compose.

7 Extra parameters

Onder environment: kun je eventueel extra of aangepaste parameters opgeven. Voor een volledig overzicht kun je op de GitHub-pagina van het project kijken. Zo wordt als naam voor de ethernetinterface standaard eth0 gebruikt. Dat is gangbaar op Linux-systemen. Controleer dit eventueel voor jouw situatie met ip a. Je kunt het veranderen via de parameter WG_DEVICE=eth0. Standaard wordt de DNS-server van Cloudflare op 1.1.1.1 gebruikt. Dit kun je wijzigen via WG_DEFAULT_DNS=1.1.1.1. Gebruik bijvoorbeeld 8.8.8.8 voor Google. Verder is het raadzaam een wachtwoord in te stellen voor het dashboard. Dat kan met bijvoorbeeld PASSWORD=geheim. Verder kun je met WG_ALLOWED_IPS= beperken welk verkeer vanaf de client over de VPN-tunnel moet worden gestuurd. Standaard gaat al het verkeer door de tunnel.

Je kunt enkele extra parameters opgeven voor de VPN-server.

8 Poort doorsturen

Voordat je WireGuard kunt starten, moet je nog een poort via je router doorsturen naar de server met WireGuard. De procedure verschilt per router. Eventueel kun je de instructies op www.portforward.com raadplegen. Voor het WireGuard-verkeer wordt standaard udp-poort 51820 gebruikt. Je hoeft daarom alleen het udp-verkeer naar poort 51820 door te sturen naar diezelfde poort op de server met WireGuard. De poort ‘aan de buitenkant’ zou je eventueel kunnen veranderen naar een andere poort, als deze bijvoorbeeld door bepaalde netwerken wordt geblokkeerd.

Voor het dashboard gebruikt WireGuard Easy standaard tcp-poort 51821. Voor die poort is geen portforwarding nodig. Het dashboard is dan weliswaar alleen vanaf je lokale netwerk bereikbaar, maar dat is om veiligheidsredenen wel zo verstandig.

Heb je alles aangepast en de poort doorgestuurd, dan kun je WireGuard Easy starten met:

docker compose up -d

Voor WireGuard moet je een poort doorsturen vanaf je router naar de server.

9 Gebruikers toevoegen

Het meeste werk is eigenlijk al gedaan. We hoeven alleen nog maar gebruikers toe te voegen. Daarvoor open je je dashboard door je browser te verwijzen naar http://ipadres:51821. Gebruik hiervoor het ip-adres van de server. Als je een wachtwoord hebt ingesteld, moet je dat eerst invullen. Op je dashboard kun je nu een eerste gebruiker toevoegen via Nieuw. Vul een naam in voor de gebruiker en klik op Creëren. Je ziet een schuifje waarmee je de bewuste gebruiker eventueel kunt (de)activeren.

Ook kun je de verbindingsgegevens ophalen. Er zijn twee manieren om een verbinding met je VPN-server op te zetten. Je kunt hier de QR-code weergeven die je kunt scannen met de app op je smartphone. Dit is de makkelijkste optie. Ook kun je het configuratiebestand downloaden. Dit is wat gangbaarder als je een verbinding wilt leggen vanaf een pc of laptop.

Via het dashboard kun je gebruikers toevoegen of verbindingsgegevens ophalen.

10 Verbinding met smartphone

Als voorbeeld zetten we een verbinding op vanaf een Android-smartphone. Dit werkt heel eenvoudig. Installeer allereerst de WireGuard-app. Start de app vervolgens op en klik op het plusteken om een verbinding toe te voegen. Kies dan de optie Scan van QR-code. Maak de QR-code voor de gewenste gebruiker zichtbaar in je dashboard en scan deze vervolgens met de camera van je smartphone. Geef de tunnel een naam. Met een schuifje kun je de verbinding actief maken. Al het verkeer zal dan over de VPN worden gestuurd en je kunt ook alle toepassingen op je thuisnetwerk gebruiken.

Vanaf een smartphone kun je heel eenvoudig verbinden met je VPN-server.

WireHole Wie wat meer wil experimenteren kan WireHole overwegen. Dit is een combinatie van WireGuard, Pi-hole en Unbound. Pi-hole zorgt voor het blokkeren van advertentienetwerken, terwijl Unbound helpt bij het cachen van DNS-verzoeken met aanvullende bescherming van je privacy. De gangbare manier om het te installeren is via Docker Compose. De tool biedt ook een dashboard voor WireGuard, maar in dit geval het alternatieve WireGuard-UI. Daarnaast kun je uiteraard de beheerdersomgeving van Pi-hole benaderen.

Bijzonder leuk en handig: Kasm: experimenteren en veilig werken in een geïsoleerde omgeving

11 Tailscale

Tailscale is erg populair. Het is een van de makkelijkste manieren om al je apparaten te bereiken, ongeacht het netwerk waarop die apparaten zich bevinden. Heb je moeite met het verbinden met je VPN-server, bijvoorbeeld door een verkeerde configuratie van je server of router, dan kan Tailscale een goed alternatief zijn. Het is zonder meer handig om in je gereedschapskist te hebben, bijvoorbeeld om (al dan niet tijdelijk) met een nieuw of vreemd systeem te verbinden.

Surf naar de website van Tailscale en kies Get started. Log nu in met een van de getoonde diensten, zoals Google, Microsoft of GitHub. Deze fungeren als identiteitsprovider. In dit voorbeeld gebruiken we Google. Voor extra bescherming raden we aan tweestapsverificatie voor deze accounts in te stellen. Na het inloggen kun je apparaten toevoegen. Daarvoor installeer je Tailscale op die apparaten en log je in met dezelfde identiteitsprovider. Ze verschijnen dan op je dashboard en je kunt verbindingen tussen de apparaten opzetten. We zullen dit voor een Windows-pc en Linux-systeem laten zien.

Na je registratie bij Tailscale kun je 14 dagen lang alle functies uitproberen van het Enterprise-abonnement. Wil je de gratis versie van Tailscale gebruiken, kies dan als je bent ingelogd voor de optie Choose personal plan. Merk op dat je nu beperkt bent tot drie gebruikers en honderd apparaten. Maar dat zal voor de meeste gebruikers geen struikelblok zijn.

Om Tailscale te kunnen gebruiken, moet je inloggen met een van de getoonde diensten.

12 Windows-pc toevoegen

We beginnen met het toevoegen van een Windows-pc. Installeer hierop Tailscale. Er zijn geen aanvullende instellingen nodig. Na de installatie hoef je slechts de link te volgen. Via een browser kun je vervolgens inloggen met dezelfde identiteitsprovider, zoals Google in ons voorbeeld. Daarna kun je het systeem, in dit geval de Windows-pc, direct toevoegen aan wat ook wel je tailnet wordt genoemd. De naam van het systeem, in dit voorbeeld werk-pc-mini, wordt door Tailscale overgenomen, en kun je eventueel aanpassen. Je kunt nu een verbinding opzetten met de andere apparaten in je tailnet. Bij die verbindingen wordt op de achtergrond gebruikgemaakt van WireGuard. Maar, hiervoor moeten we natuurlijk eerst nog een tweede apparaat toevoegen.

De Windows-pc is toegevoegd aan het tailnet.

13 Linux-systeem toevoegen

We zullen ook direct een Linux-systeem toevoegen. Dat gaat het gemakkelijkst via een script. Dit vereist de tool curl, die kun je indien nodig installeren met:

sudo apt install curl

Daarna kun je Tailscale installeren via het script:

curl -fsSL https://tailscale.com/install.sh | sh

Na de installatie kun je Tailscale starten met het commando:

tailscale up

Je krijgt nu een link te zien die je moet openen in een browser. Log nu opnieuw met bijvoorbeeld Google in, en ook dit systeem zal worden toegevoegd aan je tailnet. In dit voorbeeld onder de naam ubuntu. Het terminalscherm van je Linux-systeem toont direct een melding wanneer het apparaat is toegevoegd.

De website toont de systemen die aan je tailnet zijn toegevoegd.

14 Tailscale gebruiken

Merk op dat elk systeem een eigen ip-adres heeft gekregen dat begint met 100.x.x.x. Je kunt direct verbinding maken tussen alle apparaten. Je kunt bijvoorbeeld pingen vanaf het Linux-systeem naar de Windows-pc met ping werk-pc-mini. Andersom kun je via de Opdrachtprompt op de Windows-pc het Linux-systeem oproepen met ping ubuntu. Als op dat Linux-systeem ook ssh actief is, kun je inloggen met de opdracht ssh gebruiker@ubuntu, bijvoorbeeld ssh root@ubuntu voor de root-gebruiker.

Je ziet hoe eenvoudig Tailscale werkt. Je hoeft je nooit bezig te houden met lastige configuraties of portforwarding. Er is wel een afhankelijkheid van derde partijen. Vind je dat een zwakte? Dan zou je eventueel Headscale kunnen gebruiken, want dat kun je zelf hosten. Dit neemt dan in feite de rol van de Tailscale-servers over.

Vanaf de Windows-pc kun je verbinding maken met het Linux-systeem.

Watch on YouTube
▼ Volgende artikel
Bedien je slimme apparaten met een zelfgebouwd touchscreen
© InfiniteFlow - stock.adobe.com
Huis

Bedien je slimme apparaten met een zelfgebouwd touchscreen

Houd je van knutselen én automatiseer je alles in en om je huis met Home Assistant? Kijk dan zeker eens naar ESPHome. Je kunt eindeloos variëren met componenten. Dankzij de koppeling met Home Assistant bouw je gemakkelijk en voor weinig geld een lichtschakelaar of sensor, om maar wat te noemen. De LVGL-bibliotheek zorgt ervoor dat je nu ook eenvoudig met een touchscreen en zelfbedachte gebruikersinterface kunt werken. We laten zien hoe dat werkt met tips voor passende projecten.

In dit artikel laten we zien hoe je een touchscreen-interface bouwt voor Home Assistant met ESPHome en LVGL:

  • Installeer ESPHome en configureer een ESP32-microcontroller voor je project
  • Sluit een touchscreen aan en stel de juiste GPIO-pinnen en drivers in
  • Gebruik LVGL-widgets voor een interactieve interface
  • Integreer je touchscreen met Home Assistant voor directe bediening van je slimme apparaten

Lees ook: 5 fouten die je niet moet maken in je smarthome

Code downloaden

In dit artikel staat een voorbeeld van wat YAML-code. Omdat YAML erg gevoelig is voor foute spaties, kun je die code beter downloaden en daarna bekijken of kopiëren. In het bestand espcode.txt staan alle regels voorbeeldcode zoals ze in dit artikel aan bod komen. Maar je vindt ook een uitgewerkt voorbeeld in het bestand cyd-demo.yaml. Beide bestanden zijn hier te downloaden.

Uitgewerkt voorbeeld

Het meest uitgewerkte voorbeeld voor de demo met LVGL vind je op deze GitHub-pagina van auteur Gertjan Groen. In de code die je kunt downloaden (ook in het losse bestand cyd-demo.yaml) hebben we ook de RGB-led op de achterzijde toegevoegd, die je bijvoorbeeld als statusmelding kunt gebruiken. Verder is een timer toegevoegd om de backlight te regelen, zodat deze bij inactiviteit wordt uitgeschakeld. Tot slot laten we zien hoe je de GPIO-pinnen kunt gebruiken via de I2C-bus. Op de GitHub-pagina vind je nog meer handige informatie.

ESPHome maakt het heel makkelijk om apparaten te maken voor een slim huis, zoals je eigen sensors. Zo bouwden we eerder al eens een luchtkwaliteitsmonitor, een infraroodzender/ontvanger en een controller met drukknoppen en leds, waarmee je apparaten kunt bedienen en de status aflezen. Hoe je dat doet, lees je in dit artikel: Zo maak je met ESPHome apparaten geschikt voor je smarthome.

De basis voor ESPHome is een kleine, voordelige en zuinige microcontroller, meestal de ESP32. ESPHome ondersteunt enorm veel componenten en biedt daardoor haast onbegrensde mogelijkheden. We helpen je kort op weg met ESPHome, maar gaan ook meteen een stapje verder met de toevoeging van een touchscreen en de LVGL-bibliotheek. Daar kun je sinds augustus 2024 officieel gebruik van maken binnen ESPHome.

Met LVGL kun je aan de hand van widgets een grafische gebruikersinterface opbouwen en weergeven (zie kader ‘Grafische interfaces met widgets’). Soms kom je de term HMI (Human Machine Interface) tegen, waarmee een grafische gebruikersinterface voor het bedienen van apparatuur wordt bedoeld.

De kracht van ESPHome is dat je niet alleen lokaal aangesloten apparaten bedienbaar kunt maken, bijvoorbeeld via een relais, maar ook alle apparaten die je binnen Home Assistant gebruikt.

Grafische interfaces met widgets

LVGL staat voor Light and Versatile Graphics Library. Het is een opensource-bibliotheek die sinds 2016 bestaat. Je kunt ermee werken binnen ESPHome, Arduino, Tasmota en openHASP. Het laatste project is zelfs specifiek bedoeld voor microcontrollerfirmware met LVG.

De bibliotheek is heel licht, waardoor het soepel en snel kan werken op apparaten met beperkte capaciteit, bijvoorbeeld met een microcontroller. Bovendien kan LVGL flexibel met verschillende lay-outs, schermformaten en invoermethodes werken. Naast touchscreens kun je ook bijvoorbeeld muis, toetsenbord, losse knoppen en draaiknoppen toevoegen.

Via meer dan dertig widgets kun je een grafische gebruikersinterface opbouwen. Het uiterlijk is via thema’s en stijlen eenvoudig aan te passen. Bovendien kun je met animaties werken.

LVGL wordt gebruikt in slimme apparaten zoals thermostaten, smartwatches en keukenapparatuur, en zelfs in touchscreens voor industriële omgevingen. Op de website vind je enkele interactieve demo’s voor bekende toepassingen, waarbij de gebruikersinterface in de browser wordt getoond.

Met LVGL kun je via widgets een gebruikersinterface bouwen.

1 Wat gaan we doen?

Met ESPHome kun je relatief eenvoudig apparaatjes voor je slimme huis maken. Een voordeel ten opzichte van bijvoorbeeld Arduino en MicroPython is dat je niet hoeft te programmeren. Je hoeft alleen een configuratiebestand te maken waarin je de gebruikte microcontroller, verbindingsgegevens voor je wifi-netwerk en alle aangesloten componenten aanduidt. Hierna wordt firmware gemaakt en weggeschreven op je microcontroller. Alleen die eerste keer is dit soms wat lastig. Heb je het eenmaal werkend? Alle keren erna kun je heel eenvoudig de configuratie aanpassen en over-the-air (OTA) naar de microcontroller sturen.

In dit artikel gaan we met LVGL werken. Hiermee kun je binnen ESPHome grafische interfaces maken via widgets. Voor veel projecten zul je daarom niet eens componenten hoeven aan te sluiten, maar heb je genoeg aan een touchscreen. Denk bijvoorbeeld aan een lichtknop en helderheidsregeling voor een slimme lamp in Home Assistant, zoals we in dit artikel demonstreren. Je kunt natuurlijk ook geavanceerdere gebruikersinterfaces maken voor vrijwel elk apparaat in Home Assistant.

©pozitivo - stock.adobe.com

Je kunt bijvoorbeeld zelf een gebruikersinterface voor je slimme lampen bouwen, zodat je ze eenvoudig kunt bedienen.

2 Wat heb je nodig?

Wat hardware betreft, is het vrij eenvoudig. De ESP32-chip heeft snel de voorkeur boven de verouderde ESP8266-versie, zeker als je met een touchscreen gaat werken. De Raspberry Pi Pico W (zie gelijknamig kader) is ook een optie, maar die wordt nog niet volledig ondersteund binnen ESPHome.

Makkelijk om mee te starten is een eenvoudig ontwikkelbordje rondom de ESP32 dat je voor ongeveer 5 euro kunt aanschaffen. Het is wel fijn als je hier goede documentatie bij hebt, zodat je op zijn minst weet waar alle aansluitingen zitten.

Er zijn diverse varianten van de ESP32-module. Bekende opties zijn de ESP-WROOM-32E, ESP32-C3 en ESP32-S3. De ESP32-C3 wordt vaak in extra compacte bordjes gebruikt, die je onder de naam ‘super mini’ tegenkomt – handig als je niet veel aansluitingen nodig hebt of niet veel ruimte hebt.

De ESP32-S3 is een fijne optie vanwege de beschikbaarheid van PSRAM (Pseudo Static RAM), een voordelig type werkgeheugen dat onder meer nuttig is bij grafische toepassingen. Staat een touchscreen centraal in jouw project en wil je snel van start, overweeg dan een model met ingebouwde ESP32-chip (zie volgende paragraaf).

De ESP32-module is in verschillende uitvoeringen verkrijgbaar.

Raspberry Pi Pico W

De Raspberry Pi Pico is een voordelige en flexibele serie ontwikkelbordjes rondom de RP2040-microcontroller. De eerste versie verscheen in januari 2021. De Pico W is vanwege de wifi-connectiviteit een interessante optie voor ESPHome. Recent werd de Pico 2 W aangekondigd die op meerdere fronten is verbeterd. Dat model is op het moment van schrijven echter nog niet geschikt voor ESPHome.

De Raspberry Pi Pico W is ook bruikbaar in Home Assistant.

3 Touchscreen

Als je een touchscreen gaat gebruiken in je ESPHome-project, dan kun je eventueel een los exemplaar op de microcontroller aansluiten en configureren. Maar je kunt ook een touchscreen met ingebouwde ESP32 kiezen. Dat is vaak veel handiger en goedkoper. Je hoeft niet te solderen en kunt direct een gebruikersinterface bouwen in YAML-code. Het scheelt ook wat tijd. Bovendien zijn er zelfs modellen compleet met behuizing.

Kies een scherm dat door ESPHome wordt ondersteund. De website van ESPHome geeft goede suggesties. Je kunt ook afgaan op ervaringen van anderen. Het kan dan een iets grotere uitdaging zijn om de juiste configuratie voor je display in ESPHome te vinden. Je zult daarbij waarschijnlijk wel even moeten experimenteren, niet alleen bij het instellen van je display, maar ook bijvoorbeeld voor het touchgedeelte. Zelfs bij het vrij gangbare touchscreen dat we in dit artikel gebruiken, was dat een beetje prutsen.

Kies een touchscreen dat door ESPHome wordt ondersteund.

4 Scherm met ESP32

Voor dit artikel hebben we een eenvoudige ESP32-2432S028 gebruikt, met een resistief touchscreen van 2,8 inch met 240 × 320 pixels. Dit model wordt ook wel de ‘Cheap Yellow Display’ genoemd, wat vooral met de gele printplaat te maken heeft.

Er zijn meerdere varianten. Zo wordt in de schermpjes vaak de ILI9341-chip als aansturing gebruikt, maar soms ook de ILI9342, zoals in ons exemplaar. Dat vergt dan een heel kleine, maar noodzakelijke aanpassing in je configuratie.

Je kunt het scherm flexibel inzetten voor je IoT-projecten. Zoek je een wat groter touchscreen, dan kun je bijvoorbeeld de CrowPanel van Elecrow overwegen. Die is er in een versie van 5 inch (ca. 32 euro) en 7 inch (ca. 42 euro), inclusief acrylbehuizing en verzending via de fabrikant. Beide versies hebben een touchscreen met hoge resolutie van 800 × 480 pixels en zijn voorzien van de modernere ESP32-S3-chip. Het touchscreen is capacitief, wat zeker voor kleinere bedieningselementen fijner werkt dan het resistieve touchscreen in ons goedkope alternatief.

Tegenwoordig bestaan er ook ronde touchscreens. Een leuke optie (zij het met beperkte schermruimte) is de ESP32-2424S012 met een ESP32-C3-microcontroller, een rond kleuren-touchscreen van 1,28 inch en in een witte of zwarte behuizing. Makerfabs heeft een vergelijk schermpje zonder behuizing. De LilyGo T-RGB heeft een wat groter 2,1inch-scherm (zonder behuizing), maar is ruim twee keer zo duur.

De ESP32-2432S028 is een voordelig scherm (onder), een wat duurder alternatief is het capacitieve 5inch-aanraakscherm met ESP32 van Elecrow (boven).

5 Add-ons voor ESPHome

Hoewel je bijvoorbeeld een pc met Python kunt gebruiken voor het bewerken van je configuratiebestanden en het flashen van de microcontroller met de software voor ESPHome, is het meestal veel makkelijker om de add-on voor ESPHome binnen Home Assistant te gebruiken. Dat geeft ook een ander groot voordeel: je kunt de configuratie voor alle apparaten met ESPHome binnen Home Assistant beheren. Je zult zeker in de testfase veel wijzigingen aan de configuratie moeten maken.

Via de add-on voor ESPHome voeg je eenvoudig microcontrollers toe.

6 Microcontroller toevoegen

We gaan nu een verse microcontroller toevoegen. Je kunt eventueel ESPHome Web gebruiken om de microcontroller voor te bereiden voor gebruik met ESPHome, maar wij geven zoals gezegd de voorkeur aan de ESPHome-add-on, die je binnen Home Assistant kunt openen.

Je kunt voor deze methode de microcontroller gewoon via usb aansluiten op je eigen pc, maar dit vereist wel dat je Home Assistant opent via een beveiligde https-verbinding. Lukt dat niet? Als alternatief kun je de microcontroller ook via usb aansluiten op het systeem met Home Assistant zelf, voordat je verder gaat in ESPHome.

Het dashboard van ESPHome toont alle toegevoegde apparaten.

Ook leuk: Werk met wat je hebt: creëer je eigen alarmsysteem met Home Assistant

7 Configuratie

Klik binnen ESPHome op New device om een nieuwe microcontroller te initialiseren. Vul bij Name een naam in voor het apparaat. Bij Network name vul je de naam (SSID) in van het wifi-netwerk waarmee de microcontroller moet verbinden en bij Password het bijbehorende wachtwoord. Klik dan op Next.

In de volgende stap zal ESPHome een configuratiebestand maken, firmware bouwen en de microcontroller flashen. Klik daarvoor dus eerst op Connect. Als het goed is, kun je nu de com-poort selecteren waarmee de microcontroller is verbonden. Zie je geen com-poort, dan zul je eerst drivers moeten installeren. De instructies krijg je als je het venster sluit zonder een com-poort te selecteren. Als de verbinding is gelukt, zal de installatie verdergaan. Lukt het niet? Dan kun je kiezen voor Skip this step gevolgd door een handmatige configuratie.

Vul een naam in en de details voor het wifi-netwerk.

Toepassingen voor een touchscreen

Er zijn veel leuke toepassingen voor een touchscreen. Zo kun je bijvoorbeeld een soort weerstation maken, dat je voorziet van actuele informatie van Home Assistant. Ook kun je live de opbrengst van je zonnepanelen laten zien of het verbruik in huis. Je zou een schermpje voor Music Assistant kunnen maken met bijvoorbeeld de weergave van het nummer en volumeregeling (zie ook: Met Music Assistant ben jij de baas over jouw muziekcollectie). Tot slot kun je een scherm gebruiken voor statusmeldingen of loggegevens.

8 Touchscreen met ESP32

We gebruiken in dit artikel zoals gezegd de ESP32-2432S028 als voorbeeld. Dit is een touchscreen met ingebouwde ESP32-chip. Dit apparaatje kun je direct toevoegen aan ESPHome: precies zoals in paragraaf 7 staat omschreven, al moesten we in dit geval na het aanwijzen van de com-poort wel de boot-knop even indrukken.

Overigens bevat het apparaat meestal een voorgeprogrammeerde demo met een gebruikersinterface op basis van LVGL. Die zie je als je hem zo uit de doos op een voeding aansluit. Je kunt daarmee meteen de werking controleren. Je zult bij een model met resistief aanraakscherm overigens iets harder moeten drukken dan je misschien gewend bent.

We gebruiken dit voordelige 2,8inch-aanraakscherm, dat ook wel ‘Cheap Yellow Display’ wordt genoemd.

9 Schermconfiguratie

Na het toevoegen van je touchscreen heb je direct een basisconfiguratie voor ESPHome. Via Edit kun je deze configuratie aanpassen. Zowel voor het aansturen van het display als de registratie van het aanraken wordt SPI (Serial Peripheral Interface) gebruikt. Voor onze ESP32-2432S028 is dit de configuratie, rekening houdend met de gebruikte interne GPIO-pinnen:

We voegen nu eerst de configuratie van het display toe en in paragraaf 11 het touchgedeelte. Voor het display is de configuratie als volgt:

Merk op dat er ook een (oudere) variant van dit touchscreen is met de ILI9341. In dat geval gebruik je model: ILI9341 en invert_colors: false. Na het maken van de aanpassingen kies je Install. Je kunt nu kiezen hoe je de firmware wilt overbrengen. Meestal kies je Wirelessly voor over-the-air-updates. Het apparaat hoeft daarbij niet meer met jouw pc te zijn verbonden.

Binnen ESPHome kun je eenvoudig de configuratie bewerken.

10 LVGL-bibliotheek

Binnen ESPHome kon je voorheen met displays werken door binnen de component display met lambda bijvoorbeeld teksten met een bepaald lettertype naar je scherm te sturen. Als je LVGL gaat gebruiken, gebruik je geen lambda meer, maar alleen LVGL en widgets. Als eerste voegen we de LVGL-bibliotheek toe aan de YAML-code:

lvgl:
  buffer_size: 25%

De optie buffer_size is ons geval noodzakelijk, vanwege de afwezigheid van PSRAM. In paragraaf 13 voegen we ook nog widgets toe. Omdat we dat hier nog niet hebben gedaan, zie je na het flashen als het goed is een demo met een knop, checkbox, cirkel met tekst en schuifbalk.

11 Configuratie touchscreen

Bediening via het scherm is nog niet mogelijk. Daarvoor moeten we het touchscreen toevoegen aan de configuratie van ESPHome:

Bewaar de aanpassingen en installeer de nieuwe firmware. Controleer of je de demo goed kunt bedienen. De regels onder on_touch zorgen dat in de logs de geregistreerde coördinaten worden getoond. Er kunnen aanpassingen nodig zijn in de regels onder calibration en transform.

12 Backlight

Het display is voorzien van een achtergrondverlichting (backlight) via pin 21. We definiëren deze output als volgt:

Daarna configureren we de achtergrondverlichting, waarbij we verwijzen naar de hierboven gedefinieerde output.

Na het flashen zal de backlight standaard aanstaan. Eventueel kun je deze vanuit Home Assistant aan- en uitzetten en de helderheid ervan regelen, bijvoorbeeld op basis van afwezigheid. Je kunt ook een script maken om de helderheid bij inactiviteit terug te brengen. Daarvoor verwijzen we je naar het uitgewerkte voorbeeld op GitHub (zie kader ‘Code downloaden’).

Binnen Home Assistant kun je eventueel ook de backlight aan- en uitzetten.

13 Widgets toevoegen

Onder de regel lvgl kun je nu de gewenste LVGL-componenten toevoegen aan je YAML-configuratie. Denk aan bijvoorbeeld knoppen, schuifregelaars, grafieken of labels. In dit voorbeeld voegen we aan de bovenkant alleen twee widgets toe voor een dimbare led, te weten een schakelaar (button) en schuifregelaar (slider).

De meeste opties dienen voor het positioneren van de widget. We geven bijvoorbeeld de breedte (width) en hoogte (height) aan, halen de widgets iets van de rand of met x en y, en regelen de uitlijning met align. Het gedeelte bij on_click zorgt dat de bewuste lamp in Home Assistant wordt omgeschakeld bij het klikken op de button. Voor de slider doen we hetzelfde onder on_release. Die acties zijn overigens om veiligheidsredenen niet direct mogelijk. In paragraaf 16 leggen we uit hoe je dit kunt toestaan.

We voegen in dit voorbeeld alleen twee eenvoudige widgets toe.

Cookbook voor ESPHome en LVGL

We houden het hier redelijk eenvoudig, maar je kunt natuurlijk veel geavanceerdere gebruikersinterfaces maken. Zo is bijvoorbeeld een geneste structuur mogelijk, kun je op verschillende manieren een grid maken, en met pagina’s individuele schermen of secties in je gebruikersinterface maken. Daarbij kan elke pagina zijn eigen widgets hebben. ESPHome geeft op zijn website in een ‘cookbook’ nog wat praktische voorbeelden voor het werken met LVGL, ook in combinatie met Home Assistant.

De website van ESPHome heeft veel voorbeelden voor het werken met LVGL.

14 Interactie met Home Assistant

De entiteit voor de dimbare lamp heeft in Home Assistant de naam light.wledkantoor. De waardes zijn nodig om de widgets de juiste status te kunnen geven. Daarom voegen we hieronder een binary_sensor toe voor de status (aan of uit) en een sensor voor het helderheidsniveau. We werken vervolgens bij on_state en on_value de widgets bij als de status verandert in Home Assistant. Bij id vul je uiteraard de id van de betreffende widget in.

Gebruik de logfunctie om te zien of bijvoorbeeld een status verandert.

15 Toevoegen aan Home Assistant

De add-on voor ESPHome hebben we gebruikt om de microcontroller van firmware te voorzien. Maar je zult het apparaat hierna nog wel moeten toevoegen aan Home Assistant. Dat is heel eenvoudig: het wordt automatisch gevonden. In Home Assistant zie je via Instellingen / Apparaten en diensten het bewuste apparaat direct terug op het tabblad Integraties. Klik op de knop Toevoegen om het aan Home Assistant toe te voegen.

Het apparaat met ESPHome moet je nog toevoegen aan Home Assistant.

16 Acties toestaan

Als je het touchscreen bedient, zal Home Assistant een melding geven dat het ESPHome-apparaat heeft geprobeerd een actie in Home Assistant uit te voeren. Standaard is dit om veiligheidsredenen niet toegestaan, maar dit is eenvoudig op te lossen.

Ga naar Instellingen / Apparaten en klik dan onder het kopje Geconfigureerd op ESPhome. Achter het bewuste apparaat klik je vervolgens op Configureren. Zet een vinkje bij Toestaan dat het apparaat Home Assistant-acties uitvoert. Klik op Verzenden. Hierna zijn alle acties zoals het omschakelen van de lamp en regelen van de helderheid wel toegestaan.

Zorg dat het apparaat acties in Home Assistant mag uitvoeren.

▼ Volgende artikel
Slimme stekkers: welke modellen zijn echt zuinig?
© Proxima Studio - stock.adobe.com
Huis

Slimme stekkers: welke modellen zijn echt zuinig?

Met slimme stekkers verander je je huis eenvoudig in een smart home: steek ze in een gewoon stopcontact, sluit er lampen of je televisietoestel op aan en regel via een app of met je stem bijvoorbeeld dat ze automatisch worden uitgeschakeld. Zo voorkom je onnodig stroomverbruik doordat apparaten niet meer op stand-by blijven staan. Maar slimme stekkers gebruiken zélf ook stroom. Welke zijn zuinig genoeg om écht geld te besparen?

Energie besparen en slimme apparaten gaan uitstekend samen. In dit artikel lees je hoe je geld bespaart door gebruik te maken van de zuinigste slimme stekkers. • Slimme stekkers en stroomverbruik • De zuinigste slimme stekkers op een rij • Waar je op moet letten bij het kopen van slimme stekkers

Ook lezen: Stroomvreters: deze apparaten in huis verbruiken meer energie dan je denkt


Slimme stekker of slim stopcontact?

De termen slimme stekker en slim stopcontact worden door elkaar gebruikt. Dat is een beetje verwarrend, maar wel begrijpelijk: het is een apparaat met aan de ene kant een stekker (voor je 'domme' stopcontact) en aan de andere kant een slim stopcontact. In dit artikel hanteren we de benaming slimme stekker.


Zo bespaart een slimme stekker stroom

Een slimme stekker helpt je stroom besparen door apparaten automatisch uit te schakelen, bijvoorbeeld 's nachts. Zo verbruikt je televisie geen stroom meer in de stand-bymodus. Je kunt instellen dat alle apparatuur op vaste tijden uitschakelt, bijvoorbeeld zodra je gaat slapen. Je kunt ook met één druk op de knop alle lampen en andere apparaten uitschakelen, zodat je niets vergeet. Slimme stekkers uit een hogere prijsklasse bieden bovendien inzicht in je stroomverbruik. Daardoor kun je gerichter energie besparen.

©Proxima Studio - stock.adobe.com

Verbruik van een slimme stekker

Tegenover de besparing staat het eigen stroomverbruik van slimme stekkers. Dat begint bij zo'n 0,3 watt en loopt op tot 2 watt. Niet veel, maar ze staan wel 24 uur per dag en 365 dagen per jaar aan. De zuinigste modellen verbruiken daardoor op jaarbasis 2,6 kWh (0,3 watt × 24 uur × 365 dagen ÷ 1000). Bij een stroomprijs van 0,30 euro per kWh komt dat neer op 0,79 euro per jaar. Een slimme stekker die 2 watt verbruikt kost op jaarbasis 5,26 euro. In een slim huis gebruik je al snel 10 slimme stekkers, waardoor je op jaarbasis aardig wat geld kunt besparen door de zuinigste modellen uit te kiezen.

Kies niet alleen op prijs, maar ook op verbruik Vergelijk je het jaarlijkse stroomverbruik met de aanschafprijs van een slimme stekker (meestal tussen de 5 en 35 euro), dan blijkt al snel dat vooral het stroomverbruik bepalend is voor de totale kosten op de lange termijn. Toch vermelden veel verkopers niets over het energieverbruik.

Denk aan de compatibiliteit

Alleen letten op het stroomverbruik van een slimme stekker is niet genoeg. Het is minstens zo belangrijk dat de stekker goed samenwerkt met jouw slimme netwerk. De meeste modellen werken met Google Home en Amazon Alexa, terwijl Apple HomeKit selectiever is. Check daarom altijd de productbeschrijving om zeker te weten dat de slimme stekker bij jou thuis werkt.

Slimme stekkers die samenwerken met

Google Assistant en met Alexa

Stroomverbruik en verbindingstype

Waar komt het grote verschil in stroomverbruik tussen slimme stekkers vandaan? Dat heeft alles te maken met de verbinding met je thuisnetwerk. De meeste stekkers gebruiken wifi om bereikbaar te blijven, zodat jij ze op afstand kunt bedienen. Maar wifi verbruikt relatief veel energie – het signaal is eigenlijk krachtiger dan nodig is voor dit soort toepassingen.

Een zuiniger alternatief is een hub die het wifisignaal omzet naar een lichter protocol, zoals Zigbee of Z-Wave. Die vormen een soort schakel tussen je netwerk en de slimme stekkers. Het grote voordeel: dit soort verbindingen verbruiken vaak minder dan 0,5 watt.

©Proxima Studio - stock.adobe.com

Zigbee en Z-Wave

De zuinige protocollen die gebruikt worden zijn Zigbee en Z-Wave en die werken allebei prima. Maar ze zijn niet verenigbaar met elkaar. Je zult dus één systeem moeten kiezen. Daarnaast heb je een centrale hub nodig om alles aan elkaar te koppelen. Dat is een kleine investering die zich, door de lagere stroomkosten, snel terugverdient.

Slimme stekkerVerbruik (watt)Protocol
TP-Link Tapo P1151 – 1,5Wifi
TP-Link Tapo P1000,5 – 1Wifi
Shelly Plug S0,9 – 1,5Wifi
Iqore Smart Plug1 – 2Wifi
Aqara Smart Plug0,3 – 0,5Zigbee
Philips Hue Smart Plug0,3 – 0,5Zigbee
IKEA TRETAKTSmart Plug0,3 – 0,5Zigbee
Samsung SmartThings Outlet0,5 – 1,5 WZigbee
Fibaro Wall Plug V20,5 – 1Z-Wave
Qubino Smart Plug0,5 – 1Z-Wave

Verbruik van hubs voor Zigbee en Z-Wave

Voor een compleet beeld moeten we ook kijken naar het stroomverbruik van een Zigbee- of Z-Wave-hub. Zigbee-hubs verbruiken doorgaans tussen de 0,5 en 3 watt. Sluit je meerdere slimme stekkers of andere apparaten aan, dan verdien je dat al snel terug ten opzichte van wifi. Z-Wave-hubs verbruiken wat meer, meestal tussen de 2 en 10 watt.

Ook qua veelzijdigheid zijn er verschillen. De Philips Hue Bridge (Zigbee) is bijvoorbeeld erg zuinig, met een verbruik tussen de 0,5 en 1 watt. Maar deze werkt uitsluitend met Philips Hue-apparaten.

Een slimme start is het halve werk

Zoals je ziet, zijn er heel wat factoren om rekening mee te houden. Breng daarom vooraf in kaart wat je nu nodig hebt én wat je in de toekomst verwacht te gebruiken. Zo voorkom je onnodige kosten en bespaar je op de lange termijn, vooral als je ook let op het energieverbruik per apparaat.


Nog meer energie besparen? ⤵️

Vraag een offerte aan voor verduurzaming: