ID.nl logo
ESP Easy: bouw je eigen domotica-systeem
© Reshift Digital
Zekerheid & gemak

ESP Easy: bouw je eigen domotica-systeem

Zelf je eigen domoticasensor maken is niet zo moeilijk of duur. Je hebt een sensor nodig en een microcontrollerbordje dat de sensorgegevens draadloos doorstuurt naar je domoticacontroller. In dit artikel sluiten we temperatuur-, luchtvochtigheids- en luchtdruksensoren en een lcd-schermpje aan op een ESP8266 WiFi Module. We installeren er de ESP Easy-firmware op en integreren onze sensor met het opensource-domoticasysteem Domoticz, zodat je in het dashboard van je domoticacontroller de meetgegevens kunt aflezen. Je eigen domotica-systeem in 17 stappen!

01 ESP8266

Het hart van een domoticasensor bestaat uit een controllerbordje dat sensorgegevens inleest en doorstuurt naar je domoticacontroller. Een populaire keuze bij doe-het-zelvers zijn bordjes gebaseerd op de ESP8266 WiFi Module, geproduceerd door het Chinese bedrijf Espressif Systems. De controller werkt op een klokfrequentie van 80 of 160 MHz, heeft 64 kilobyte instructiegeheugen en 96 kilobyte datageheugen, 512 kilobyte tot 4 megabyte ram, 802.11 b/g/n wifi en 16 gpio-pinnen voor communicatie met de buitenwereld. Vooral de controllerbordjes van AI-Thinker zijn populair, in het bijzonder de minimalistische ESP-01 met 6 bruikbare pinnen en de ESP-12E met 20 bruikbare pinnen.

02 ESP Easy

Met alleen de hardware ben je nog nergens: de firmware die op de ESP-module draait, bepaalt de functie van het controllerbordje. Oorspronkelijk was de NodeMCU-firmware een populaire keuze voor de ESP8266, maar ook de Arduino-firmware is ondertussen ondersteund. Het interessante aan die laatste is dat je dan met de Arduino IDE programma’s voor de ESP-module kunt ontwikkelen. En de ontwikkelaars van de ESP Easy-firmware maken het ons nog makkelijker: ESP Easy verandert je ESP-module in een multisensorapparaat dat je eenvoudig via een webinterface configureert.

©PXimport

03 Firmware downloaden

Op het moment van schrijven nemen de ontwikkelaars van ESP Easy hun firmware op de schop. We kiezen daarom niet voor de stabiele release, maar voor een ontwikkelversie van de volledig herschreven versie 2.0. Download het zipbestand (bij ons was dit ESPEasy_v2.0.0-dev11.zip, dat in de praktijk heel stabiel bleek) en pak het uit. Naast de broncode zie je er ook allerlei bin-bestanden. Dat is de binaire versie van de firmware. De namen maken duidelijk welke je nodig hebt: normal bevat alleen de stabiele plug-ins, test ook de testplug-ins en dev ook de plug-ins die nog in ontwikkeling zijn. 1024 is voor ESP-modules met 1 MB flash en 4096 voor ESP-modules zoals de ESP-12E met 4 MB flash.

04 Firmware flashen

Dit artikel illustreren we met de ESP-12E, die een micro-usb-connector heeft met ingebouwde usb-naar-serieel-converter voor seriële communicatie met je pc. Download eerst de CP2102-drivers van de website van Silicon Labs. Sluit daarna de ESP-module via usb aan op je pc. Gebruik je een ander model ESP-module, dan heb je nog een usb-naar-ttl-converter nodig, die je op de gpio-pinnen van je module aansluit. Bekijk de wiki van ESP Easy voor meer informatie. Het flashen van de firmware gaat met de tool FlashESP8266.exe in het zipbestand met de firmware. Kies de seriële poort (bijvoorbeeld COM0) en het bin-bestand met de gewenste firmware.

©PXimport

05 Wifi-configuratie

Wanneer de vers geflashte ESP-module opstart (druk op het RST-knopje op het bordje nadat het flashen voltooid is), functioneert hij als een draadloos toegangspunt met ssid ESP_Easy_0. Verbind ermee via je smartphone of een ander wifi-apparaat en voer als wachtwoord configesp in. Open daarna je webbrowser, die je naar de captive portal van de ESP-module omleidt. Kies daar met welk ssid je de ESP-module wilt laten verbinden en voer het bijbehorende wachtwoord in. Druk op Connect om de verbinding op te zetten.

06 Wachtwoord

Als de ESP-module erin geslaagd is om met je wifi te verbinden, krijg je het ip-adres te zien. Verbind nu op je smartphone opnieuw met je normale wifi en bezoek dan in je webbrowser (dat kan nu op je pc, een groter scherm is nu wel handiger) het ip-adres van de ESP-module voor de rest van de configuratie. In het tabblad Config is het vooral belangrijk dat je hier een unieke naam geeft aan je module en een beheerderswachtwoord kiest, zodat niet iedereen in je lokale netwerk in staat is om de configuratie te veranderen. Druk onderaan op Submit.

07 Domoticz-controller toevoegen

In het tabblad Controllers staat standaard al een controller toegevoegd met het protocol van Domoticz. Klik ernaast op Edit. Als protocol laat je Domoticz HTTP staan. Vul het ip-adres en de poort (standaard 8080) van je Domoticz-controller in. Heb je de webinterface van Domoticz afgeschermd met een gebruikersnaam en wachtwoord, vul die hier dan ook in. Vink tot slot Enabled aan en klik op Submit. Als je daarna op Close drukt, zie je je Domoticz-controller in de lijst met controllers staan.

©PXimport

08 Statusled

In het tabblad Hardware definieer je waarvoor je de gpio-pinnen inzet. Een handige functie die nieuw is in versie 2.0 van de firmware, vind je onder Wifi Status LED. Als je daar het pinnummer invoert waarop een led is aangesloten, geeft ESP Easy de status van wifi weer op die led. En dat kan ook met de ingebouwde led van de ESP-module. Kies daarvoor GPIO-2 (D4) en vink Inversed LED aan omdat die led active-low werkt. Klik onderaan op Submit. Als ESP Easy niet met wifi verbonden is, knippert de led nu snel tussen helder en zacht.

09 Sensoren en schermpje

Neem nu een breadboard en plaats daarop de (niet op de voeding aangesloten!) ESP-module en een BMP180-sensorbordje. Die laatste is een printplaatje met temperatuur- en luchtdruksensor. Verbind nu VIN op de BMP180 met 3V3 op de ESP-module, GND met GND, SCL met D1 en SDA met D2. Neem nu de AM2302 (DHT22) temperatuur- en luchtvochtigheidssensor, sluit het rode draadje aan op VIN, het zwarte op GND en het gele op D5. Sluit tot slot het OLED-schermpje met SDD1306-controller aan: VCC op VIN, GND op GND, SCL op D1 en SDA op D2. Sluit daarna terug de voeding van de ESP-module aan.

10 Virtuele sensoren in Domoticz

Maak in de webinterface van Domoticz een dummy-sensor aan. Open daarvoor het menu Instellingen / Hardware, kies nieuwe hardware uit de lijst van het type Dummy, geef het apparaat een naam en zorg dat Actief aangevinkt staat. Klik op Toevoegen. Klik daarna bij het virtuele apparaat op Maak virtuele sensoren. Geef de sensor een naam en kies als type Temp+Hum. Klik op OK om de sensor aan te maken. Zoek de sensor daarna in Instellingen / Apparaten en noteer het getal in de kolom Idx. Dit is het id van de sensor. Voeg daarna op dezelfde manier een sensor toe van het type Temp+Baro.

©PXimport

11 DHT-sensor configureren

Open nu de webinterface van ESP Easy. Klik in het tabblad Devices in de eerste rij op Edit. Kies bij Devices voor Environment - DHT11/12/22. Geef de sensor een naam en vink Enabled aan. Kies als GPIO-pin GPIO-14 (D5) en als sensortype DHT 22. Vul bij IDX het id van de sensor in Domoticz in en verzeker je ervan dat Send to Controller aangevinkt staat. Klik daarna op Submit. Klik je daarna op Close, dan zie je in de lijst met apparaten de sensor staan, inclusief de huidige temperatuur en luchtvochtigheid. Ook in Domoticz krijg je de gegevens te zien.

12 BMP-sensor configureren

De BMP180-sensor communiceert met de ESP-module door middel van de I2C-interface. Kijk dus eerst in het tabblad Hardware van ESP Easy na of de I2C-interface correct is geconfigureerd: GPIO-4 (D2) bij SDA en GPIO-5 (D1) bij SCL. Dit zijn ook de verbindingen die je op het breadboard hebt gemaakt. Ga dan naar het tabblad Devices en klik in de tweede rij op Edit. Kies als apparaat Environment - BMP085/180. Geef de sensor een naam, vink Enabled aan en vul de hoogte van je locatie in meters in (om te compenseren voor de luchtdruk). Vul het juiste id van de virtuele sensor in Domoticz in en klik op Submit.

13 Eigen regels aanmaken

Tijdens de redactiesluiting zat er nog een fout in ESP Easy waardoor de firmware de luchtdruk van de BMP-sensor niet correct naar Domoticz stuurt. ESP Easy is gelukkig flexibel genoeg om dit te op te lossen. Vink daarvoor eerst bij je BMP-sensor Send to Controller uit en klik op Submit. Open daarna het tabblad Tools, klik op Advanced, vink Rules aan en klik op Submit. Er verschijnt nu een nieuw tabblad Rules. Open dit. In het tekstveld voeg je nu eenvoudig je eigen regels toe.

©PXimport

14 Timer

Voeg in het tekstveld het onderstaande script toe. Vervang daarin het ip-adres, het poortnummer en het id door de waarden voor jouw situatie. Dit script stuurt elke minuut de sensorgegevens naar Domoticz. Reboot achteraf de ESP-module in Tools / Reboot.

On System#Boot do

timerSet,1,60

endon

On Rules#Timer=1 do

SendToHTTP,192.168.1.101,8080,/json.htm?type=command&param=udevice&idx=230&nvalue=0&svalue=[BMP#Temperature];[BMP#Pressure];BAR_FOR;ALTITUDE

timerSet,1,60

endon

15 OLED-scherm configureren

Dan rest ons alleen nog om het oled-schermpje te configureren zodat we de sensorgegevens ook daarop te zien krijgen. Klik eerst in het tabblad Tools op I2C Scan en kijk welk I2C-adres het oled-scherm gebruikt, standaard 0x3c. Maak daarna een derde apparaat aan in het tabblad Devices en kies als type Display - OLED SSD1306. Kies een naam, vink Enabled aan en controleer of het juiste I2C-adres ingevuld staat. Kies ook de juiste rotatie (normaal of ondersteboven) en schermgrootte.

©PXimport

16 Sensorgegevens tonen

In de rest van de configuratie van het oled-schermpje kies je wat er op het scherm komt. Je hebt 8 regels van 16 tekens die je kunt vullen. Vul op regel 1 T: [BMP#Temperature]^C in, op regel 2 H: [AM2302#Humidity]% en op regel 3 P: [BMP#Pressure] hPa. We gebruiken de temperatuur van de BMP180, omdat die accurater is dan de DHT22. Klik op Submit. Na een minuut (de standaard ingestelde vertraging) krijg je de sensorgegevens op het schermpje te zien.

17 Andere sensoren en actuatoren

De sensoren en het schermpje die we in deze workshop aansloten, zijn uiteraard niet de enige ondersteunde apparaten. Hier vind je een lijst met alle plug-ins. Hier zie je ook welke plug-ins in de normal-firmware zitten en voor welke je de testing- of development-firmware nodig hebt. Op de wiki-pagina van een plug-in staat hoe je het apparaat aansluit en hoe je de plug-in in ESP Easy configureert.

©PXimport

IoT-sensor op batterijen

ESP Easy is handig om van een ESP-module een IoT-apparaat te maken. Maar dat wil je dan niet de hele tijd aan de muur hangen met een usb-voedingsadapter. Gelukkig is de ESP-module ook met batterijen te voeden. Je dient dan wel een aantal trucs uit te voeren om het stroomverbruik te beperken. Lees daarvoor deze pagina op de wiki van ESP Easy. In grote lijnen komt het erop neer dat je ESP-module zich zo lang mogelijk in de slaapmodus moet bevinden. Je meet dan bijvoorbeeld maar één keer per uur de sensorwaarde en schakelt alleen dan even wifi in. Kies ook de juiste ESP-module. Zo is de Wemos D1 mini een zuinig exemplaar dat met wat inspanningen een jaar op drie AA-batterijen blijft werken.

▼ Volgende artikel
Waar voor je geld: 5 robuuste sporthorloges voor een mooie prijs
© www.peopleimages.com
Gezond leven

Waar voor je geld: 5 robuuste sporthorloges voor een mooie prijs

Bij ID.nl zijn we dol op kwaliteitsproducten waar je niet de hoofdprijs voor betaalt. Een paar keer per week speuren we binnen een bepaald thema naar zulke deals. Ben je op zoek naar een betaalbaar sporthorloge? Vandaag hebben we vijf interessante modellen voor je gespot.

Xiaomi Smart Band 9

De onlangs verschenen Xiaomi Smart Band 9 is goedkoop en kent ook nog eens verrassend veel functies. Dit langwerpige sporthorloge is in de kleurstellingen zilver-wit, zwart en roze verkrijgbaar. Het amoledscherm van 1,62 inch biedt voldoende ruimte om diverse gegevens te tonen. Dankzij een respectabele resolutie van 192 × 490 pixels verschijnt alle informatie scherp in beeld – denk daarbij aan stappen, verbrande calorieën, weersverwachting en natuurlijk de tijd. Alle functies zijn via het aanraakscherm bereikbaar, want de Smart Band 9 heeft geen fysieke knoppen. De waterdichte behuizing weegt maar 15,8 gram (zonder bandje).

Kies in het menu tussen ruim 150 sportmodi en start vervolgens de training. Tijdens de inspanning kun je jouw hartslag in de gaten houden. Je koppelt de Smart Band 9 via bluetooth eenvoudig aan een smartphone. Laat het mobiele toestel vervolgens in je broek- of jaszak zitten, want inkomende notificaties verschijnen rechtstreeks op je pols. Een prettige eigenschap is dat je het scherm ook op zonovergoten plekken nog prima kunt lezen. Aan de hand van een lichtsensor kiest deze smartwatch automatisch de juiste helderheid. Ten slotte is de beschikbaarheid van meer dan tweehonderd wijzerplaten een leuk extraatje.

Garmin Instinct 2

Met deze relatief goedkope smartwatch van Garmin houd je nauwlettend jouw sportieve prestaties in de gaten. Je kunt de Instinct 2 zowel binnen als buiten dragen, want de robuuste behuizing is waterdicht tot een diepte van honderd meter. Op het ronde display van 176 × 176 pixels zie je onder meer de actuele hartslag, het aantal gezette stappen en de huidige snelheid. Er zijn ook een hoogtemeter en elektrisch kompas geïntegreerd. Onder leiding van diverse sport-apps doe je uiteenlopende trainingen. Je kunt bovendien na elke nacht de uitgebreide slaapmonitor bekijken.

Wanneer het sporthorloge met een smartphone is verbonden, zie je inkomende pushnotificaties voorbijkomen. De Instinct 2 bevat een energiezuinig zwart-witscherm. Dat komt de accuduur ten goede! De fabrikant claimt dan ook een batterijduur van zo'n 28 dagen in de smartwatchmodus. Het hier besproken model heeft een horlogekast van 45 millimeter. Als alternatief kun je een vergelijkbaar sporthorloge met een horlogekast van 40 millimeter kopen, de Garmin Instinct 2S.

Garmin Forerunner 255 Music

Ren, wandel of fiets je met een lekker muziekje nét wat steviger door? De Garmin Forerunner 255 Music is hiervoor bij uitstek geschikt. Je kunt namelijk nummers van Spotify, Deezer of YouTube Music downloaden en in het geheugen van deze smartwatch opslaan. Laat dus tijdens trainingen voortaan je smartphone thuisliggen en bedien de muziek vanaf je pols. Je hebt voor deze functie trouwens wel een betaald abonnement bij een van de genoemde muziekdiensten nodig. De Forerunner 255 Music heeft een horlogekast van 46 millimeter. Kies tussen een zwarte en witte uitvoering.

Op het ruime 1,3inch-kleurenscherm van 260 × 260 pixels zijn er een heleboel functies toegankelijk. Denk onder andere aan een calorieënteller, hartslagmeter, bloedzuurstofmeter, slaapmonitor, snelheidsmeter, stappenteller en stopwatch. De Forerunner 255 Music toont ook meldingen van een verbonden smartphone. Krijg je bijvoorbeeld een WhatsApp-bericht, dan gaat de weerbestendige behuizing kortstondig trillen. Tot slot gebruik je deze veelzijdige smartwatch ook om contactloos te betalen.

Lees ook: Dit zijn de 9 sporten waarmee je het makkelijkst afvalt

Polar Pacer Pro

Zoek je een licht sporthorloge met zéér veel functies? Kijk dan eens naar de Polar Pacer Pro. Wegens het gewicht van 41 gram voel je dit apparaatje amper zitten. In de horlogekast van 45 millimeter is er een 1,2inch-kleurenscherm van 240 × 240 pixels verwerkt. Het display is voorzien van Gorilla Glass en gaat dus niet zomaar stuk. Verder is de behuizing waterdicht tot een diepte van vijftig meter. In het menu staan er ruim 150 sportprofielen voor je klaar. Fijn is dat deze smartwatch ook allerlei 'exotische' sporten ondersteunt, zoals (kite)surfen, rolschaatsen en skiën. Zodra je een keuze hebt gemaakt, monitort de Pacer Pro diverse sportieve prestaties.

Onder de motorkap bevindt zich een gps-chip, zodat deze smartwatch overal ter wereld je locatie kan bepalen. Handig is dat je routes van de bekende app Komoot kunt synchroniseren. Kijk voor routeaanwijzingen voortaan op je pols. Verder werkt de Pacer Pro ook naadloos met de veelgebruikte sport-app Strava samen. Hoewel Polar in zijn eigen webwinkel een tarief van 349,90 euro hanteert, vragen diverse andere bekende webshops minder dan tweehonderd euro. Kies tussen de kleurstellingen zwart, wit en goud.

Samsung Galaxy Fit3

De Samsung Galaxy Fit3 schaf je voor minder dan zes tientjes aan! Dit goedkope sporthorloge is te koop in de kleurstellingen zwart, zilver-wit en roze. Ondanks zijn lage prijskaartje toont het langwerpige 1,6inch-amoledscherm van 256 × 402 pixels diverse gegevens. Zo zie je hoeveel stappen je hebt gezet. De achterzijde van de horlogekast heeft ook nog sensoren om je bloedzuurstof en hartslag te meten. Druk aan de zijkant op de homeknop en kies uit ruim honderd sportoefeningen. De Galaxy Fit3 analyseert desgewenst ook je slaapgedrag. Maak je onverhoopt een lelijke uitglijder? Dankzij valdetectie schakelt de polsassistent jouw SOS-contactpersonen in.

Dit lichtgewicht sporthorloge van 18,5 gram neem je overal mee naartoe. De IP68-gecertificeerde behuizing is namelijk volledig waterdicht. Verbind de Galaxy Fit3 via bluetooth met een smartphone voor nog meer functies. Je kunt dan bijvoorbeeld de muziekweergave bedienen en zien wie er belt. De smartwatch toont ook inkomende berichten. De oplaadbare batterij van 208 mAh gaat op een enkele acculading volgens Samsung tot dertien dagen mee.

▼ Volgende artikel
5 redenen waarom citroen een wondermiddel is voor je was én je wasmachine
© africaimages.com (Olga Yastremska, Africa Images)
Huis

5 redenen waarom citroen een wondermiddel is voor je was én je wasmachine

Dat een wasmachine zonder moeite vuile was schoon krijgt, spreekt voor zich. Toch kan een kleine natuurlijke hulp extra verschil maken. Geen chemisch middel, maar iets wat je waarschijnlijk al in huis hebt: citroensap. Dat zorgt voor een frissere was, een schonere trommel en een beter onderhouden machine.

In dit artikel

Citroensap blijkt niet alleen handig in de keuken, maar ook tijdens het wassen. Het natuurlijke zuur (citroenzuur, inderdaad) helpt zeepresten verwijderen, voorkomt geurtjes en houdt wit echt wit. Daarnaast verzacht het hard water en maakt het wasverzachters overbodig. In dit artikel lees je hoe en waarom citroen zo'n krachtig hulpmiddel is voor zowel je kleding als je wasmachine.

Lees ook: Vetluis in je wasmachine? Zo kom je er vanaf!

Hoewel de meeste wasmachines hun werk prima doen, kun je ze met een beetje citroensap een handje helpen. Dit natuurlijke zuur werkt verrassend effectief tegen vuil, kalk en bacteriën. Hieronder lees je vijf manieren waarop citroen je was én je machine schoner, frisser en duurzamer maakt.

1. Verwijdert zeepresten

Na het wassen blijft er vaak wat wasmiddel of wasverzachter achter in de trommel of in je kleding. Het gevolg? Je wasmachine kan muf gaan stinken, net zoals de was die uit zo'n machine komt. Een scheutje citroensap in het bakje voor de wasverzachter helpt om die resten los te weken. Zo blijft je wasmachine schoon en ruikt je was écht fris.

2. Neutraliseert nare geuren

Citroensap werkt licht antibacterieel en neutraliseert geuren. Dat is vooral handig bij sportkleding, handdoeken of keukenlinnen dat snel minder fris ruikt. Citroen maakt je was dus niet alleen schoner, maar ook frisser.

©africa-studio.com (Olga Yastremska and Leonid Yastremskiy)

3. Werkt tegen hard water

Woon je in een gebied met hard water, dan merk je dat wasmiddel minder goed schuimt en kleding stugger aanvoelt. Citroenzuur bindt kalkdeeltjes, waardoor het water zachter wordt en het wasmiddel beter zijn werk doet. Zo bescherm je zowel je kleding als de binnenkant van je machine tegen kalkaanslag.

🍋 Onderhoudstip: laat eens per maand een lege wasmachine draaien op 60 graden met een scheut citroensap. Zo voorkom je kalkaanslag en blijft de binnenkant fris.

4. Houdt wit écht wit

Citroensap heeft een mild blekend effect dat witte kleding helderder maakt zonder het risico van verkleuring. Vooral fijn voor lakens, T-shirts en handdoeken. Anders dan chloor is citroensap veilig voor de meeste stoffen* en vriendelijker voor je huid én het milieu.

*Maar niet voor alle stoffen

Citroensap is een zuur en daardoor minder geschikt voor zijde, wol en linnen. Deze natuurlijke vezels reageren gevoelig op zuren en kunnen door herhaald contact hun glans of structuur verliezen. Ook bij kleding met metalen details (zoals ritsen of knopen) is voorzichtigheid geboden, omdat zuur oxidatie kan versnellen.

5. Zorgt voor zachtere kleding

Heb je snel last van wasverzachter of vind je de geur te sterk? Citroensap verzacht het water op een natuurlijke manier, zonder kunstmatige toevoegingen. Zo blijft je kleding soepel en zacht, ook zonder de synthetische stoffen die in veel wasverzachters zitten. Dat is prettiger voor gevoelige huid én beter voor het milieu, omdat er minder chemische resten in het afvalwater terechtkomen.

Zo gebruik je het: voorbeeldwas

Wil je het zelf proberen? Zo doe je dat veilig:

Voor een volle trommel witte of lichte was giet je een half kopje citroensap (ongeveer 120 ml) in het vakje van de wasverzachter. Gebruik je gewone wasmiddel, maar sla extra bleek of wasverzachter over. Was op 40 graden en haal je was direct uit de machine zodra het programma klaar is.

Tot aan de laatste druppel uitgeperst...

.. dat lukt alleen met een goede juicer (ook voor sinaasappels!)