IoT – ESP8266 gepruts

Een tijdje terug ben ik bezig geweest met het aansturen van mijn KlikAanKlikUit lampen via een Raspberry, rond die tijd kwam ook ineens Andries met een reeks blogposts  over het draadloos aansturen / dimmen van ledverlichting. Dat triggerde mij om me eens te verdiepen in dat soort systemen en de mogelijkheden die daarbij komen kijken.

Als we bedrijven als Intel mogen geloven moet The Internet of Things (IoT) DE toekomst worden op technologisch vlak. Dat zou er op neer komen dat zo’n beetje alles om je heen is aangesloten op het internet, waardoor je altijd alles kan monitoren, je op afstand je lampen aan / uit kan zetten, je de wasmachine kan starten, thermostaat kan instellen enzovoorts. Er zijn meerdere mogelijkheden om dit te realiseren, maar WiFi is hiervoor het meest toegankelijk als je er zelf mee aan de slag wil.

Dit is waar de ESP8266 een rol gaat spelen, via de posts van Andries raakte ik bekend met het bestaan van dit platform (ESP8266)

esp8266 ESP-01

Door de chip te flashen met een NodeMCU firmware kan je de aansturing van het “systeem” in LUA schrijven. Mijn Lua kennis is ongeveer net zo groot als mijn kennis over curling, dus daar ligt nog wel een kleine uitdaging. Maar juist dat uitzoekwerk maakt het wel leuk om hier tijd aan te spenderen.

Als eerste project ben ik maar eens begonnen met het nabouwen van het project van Andries (met wat kleine aanpassingen), een mooie oefening om ook het solderen weer eens onder de knie te krijgen. Ondertussen heb ik gewoon om te proberen ook een printje gemaakt waarmee ik via WiFi en mijn Raspberry (als webserver) mijn lampen aan en uit kan zetten, het programma en de print zijn erg basic, maar het is wel bijzonder bevredigend om zoiets zelf te maken.

Heel kort samengevat wordt er een web request gestuurd naar de Raspberry op het moment dat een van de twee GPIO poorten op de ESP8266 naar High gaat (er dus spanning op komt te staan), dit gebeurt wanneer de drukknop ingedrukt is.

Je kan diverse sensors aan het systeem knopen waarvan je de output relatief eenvoudig naar een webserver kan versturen, deze informatie kan je dan vervolgens weer voor uiteenlopende zaken gebruiken.

Al met al leuk speelgoed, mocht ik ergens nog een keer een toepassing bedenken waarvan ik denk dat deze ook nuttig kan zijn voor anderen zal ik eens een uitgebreid verslag / instructie schrijven.