Zo maak je je eigen slimme verlichting

Door: koen-vervloesem | 01 augustus 2018 12:10

How To

Inhoudsopgave

  1. Inleiding
  2. Pagina 2: Aan de slag

Steek de stekker nu in het stopcontact. De Sonoff-module wordt nu door de stekker gevoed en functioneert als schakelaar tussen het stopcontact en je verlichting. Druk je op het knopje dat uit de behuizing steekt, dan gaat niet alleen het ledje in de behuizing aan, maar ook de verlichting. En druk je er nog eens op, dan gaan zowel het ledje als de verlichting uit.

Maar daarvoor heb je de Sonoff Basic natuurlijk niet gekocht. De ESP8266-microcontroller heeft ondertussen een wifi-verbinding opgezet, zodat je ze ook op afstand kunt schakelen via het netwerk. Zoek in de dhcp-leases van je router het ip-adres van je Sonoff-module op en ga ernaar toe via je browser. Je krijgt een pagina te zien met in het groot de status van de schakelaar ON of OFF. Als je eronder op het knopje Toggle klikt, schakel je de module in en uit. Dat gebeurt bijna realtime. En als je op het knopje op de behuizing van de module klikt, wordt de status ook in de webinterface aangepast, zij het iets trager. Ga daarna naar Configuratie / Configureer Overige, stel een wachtwoord voor de webinterface in en klik op Opslaan.

Waterdichte behuizing

De Sonoff Basic is in principe ook buiten in te zetten als je bijvoorbeeld de buitenverlichting, de verlichting in je tuinhuis of het bewateringssysteem van je tuin wilt schakelen. Maar dan moet je wel maatregelen nemen om vocht in de Sonoff-module te vermijden. Nu verkoopt iTead ook een waterdichte IP66-behuizing met de afmetingen van de Sonoff Basic. Je plaatst daarin de Sonoff-module en laat de bekabeling van het stopcontact en naar de verlichting door twee waterdichte PG7-connectoren gaan. Dit is overigens niet alleen buiten handig, maar ook op risicovolle plaatsen zoals in de kinderkamer of in de keuken (als je bijvoorbeeld je koffiezetapparaat wilt schakelen).

De waterdichte behuizing voor de Sonoff-module is niet alleen buiten, maar ook in de kinderkamer nuttig voor de veiligheid.

Mosquitto installeren op je domoticacontroller

Uiteraard wil je je slimme verlichting ook via je domoticasysteem besturen. Gelukkig ondersteunt de Tasmota-firmware allerlei opensource-domoticasystemen (zie ook het kader ‘Integratie met domoticacontrollers’). We tonen je hier hoe je de Sonoff-modules met Domoticz integreert.

De integratie met Domoticz verloopt via het protocol mqtt (Message Queuing Telemetry Transport), een lichtgewicht protocol voor IoT-toepassingen. We installeren dus eerst een mqtt-broker op de Raspberry Pi waarop Domoticz draait:

sudo apt-get update && sudo apt-get upgrade

sudo apt-get install mosquitto mosquitto-clients

Maak nu een gebruiker mqtt en een bijbehorend wachtwoord aan voor Mosquitto:

sudo mosquitto_passwd -c /etc/mosquitto/pwfile mqtt

Open het configuratiebestand van Mosquitto met de teksteditor nano:

sudo nano /etc/mosquitto/mosquitto.conf

En voeg daaraan de volgende twee regels toe:

allow_anonymous false

password_file /etc/mosquitto/pwfile

Sla het bestand op met Ctrl+O en sluit nano af met Ctrl+X.

Open dan het opstartbestand met:

sudo nano /etc/rc.local

En zet helemaal achteraan, vlak voor de regel met exit 0, de volgende regel:

/usr/sbin/mosquitto -d

Herstart nu je Pi met sudo reboot.

Integratie met domoticacontrollers

De Tasmota-firmware heeft uitgebreide ondersteuning voor diverse (opensource) domoticacontrollers. Lees op de wiki hoe je de Sonoff-module met je favoriete domoticasysteem integreert. Meestal gebeurt dat via het protocol mqtt (Message Queuing Telemetry Transport), een lichtgewicht protocol voor IoT-toepassingen. Je hebt dan ook een mqtt-broker nodig. Op deze manier integreer je je Sonoff-module met openHAB, Home Assistant, Domoticz, HomeBridge en HomeSeer. De Sonoff-module is ook via eenvoudige http-aanvragen aan te sturen. Dus in principe kun je de module met ieder domoticasysteem of computerprogramma integreren dat http-aanvragen kan doen. Maar zonder mqtt heb je niet de terugkoppeling naar het domoticasysteem als je op de knop op de behuizing van de Sonoff-module klikt of de Sonoff-module via de ingebouwde webinterface schakelt. Dus in de meeste gevallen loont het de moeite om een mqtt-broker te installeren.

Met Domoticz kun je je slimme verlichting ook via je domotica-systeem besturen.

Virtuele schakelaar in Domoticz

Klik in het menu Instellingen van Domoticz op Hardware en voeg een apparaat toe van het type MQTT Client Gateway with LAN interface. Geef het apparaat een naam, voer het adres en de poort van je mqtt-broker in (localhost en 1883), de gebruikersnaam mqtt en het wachtwoord dat je ervoor hebt ingesteld. Klik op Toevoegen om het apparaat aan te maken.

Test nu op de Raspberry Pi of je de sensorgegevens van je Domoticz-installatie via mqtt te zien krijgt:

mosquitto_sub -h localhost -u mqtt -P WACHTWOORD -v -t "#"

Als je domoticasysteem heel wat sensoren heeft, zie je bijna onmiddellijk waardes voorbijkomen. Met Ctrl+C breek je de uitvoer af.

Als je nog geen hardware van het type Dummy hebt aangemaakt in Domoticz, doe dat dan. Selecteer daarna de dummy hardware en klik op Maak virtuele sensoren. Geef de virtuele sensor een naam en kies als type Schakelaar.

Ga daarna naar Instellingen / Apparaten en zoek op de naam die je aan je virtuele schakelaar hebt gegeven. Kijk daar in de kolom Idx en onthoud dit getal.

We integreren Domoticz met de mqtt-broker via virtuele hardware.

Mqtt configureren in Tasmota

Dan rest ons nu nog als enige taak om mqtt en Domoticz in de webinterface van onze Sonoff-module te configureren. Klik op Configuratie en dan op Configureer MQTT. Vul bij Host het ip-adres in van je mqtt-broker (in ons geval de Raspberry Pi waarop ook Domoticz draait). Poort laat je op 1883 staan. Vul ook de gebruiker en het wachtwoord in die je voor Mosquitto hebt ingesteld. De rest van de instellingen zijn in orde. Klik op Opslaan. De Sonoff-module herstart nu na enkele seconden en past de configuratiewijzigingen toe.

Om nu te controleren of je Sonoff-module correct met je mqtt-broker communiceert, voer je op je Raspberry Pi de volgende opdracht uit:

mosquitto_sub -h localhost -u mqtt -P WACHTWOORD -v -t stat/sonoff1/POWER

Als je nu op het knopje van de Sonoff-module of op de knop Toggle in de webinterface klikt, zie je in de uitvoer van mosquitto_sub de meldingen stat/sonoff1/POWER ON en stat/sonoff1/POWER OFF voorbijkomen.

Zowel Domoticz als de Sonoff-module communiceren nu met de mqtt-broker. Als laatste leggen we nu nog de link tussen Domoticz en de Sonoff-module. Klik daarvoor in de webinterface van de Sonoff-module op Configuratie en dan Configureer Domoticz. Vul bij Idx 1 het id in van je virtuele schakelaar in Domoticz en klik op Opslaan. Nadat je Sonoff-module is herstart, is de koppeling in orde.

Kijk in het tabblad Schakelaars van Domoticz naar het icoontje van je Sonoff-schakelaar. Als je op de knop van je Sonoff-module of in de webinterface op de knop Toggle klikt om je verlichting in te schakelen, gaat het icoontje van de lamp in de Domoticz-interface aan. Maar het werkt ook andersom: klik je daarna in Domoticz op het icoontje van de lamp, dan gaat je Sonoff-module en dus de daaraan hangende sfeerverlichting weer uit.

En verder

Je hebt nu een slimme verlichting gemaakt, maar de Tasmota-firmware maakt nog veel meer mogelijk. Zo kun je niet alleen een extra schakelaar op GPIO14 aansluiten (het vijfde pinnetje dat we niet gebruikten voor de seriële verbinding), maar ook een sensor of andere componenten. De firmware ondersteunt onder andere temperatuursensoren, lichtsensoren, bewegingsdetectoren, luchtkwaliteitssensoren en zelfs infraroodzenders en -ontvangers en NeoPixel rgb-leds. Bovendien is de broncode van de firmware volledig open en heb je de toegang tot de veelzijdige ESP8266-microcontroller, dus je kunt hier heel wat leuke projecten mee maken! Bekijk voor meer inspiratie ook eens de discussiegroep SonoffUsers.

Updates

De Tasmota-firmware heeft een knap systeem opgezet om de firmware van je Sonoff-modules altijd up-to-date te houden zonder dat je telkens je seriële kabel weer moet bovenhalen en de behuizing moet openmaken. Na de eerste installatie van de firmware kun je via het netwerk upgraden. Klik daarvoor in de webinterface op Opwaarderen. Daar kun je het firmware-image ofwel van een webserver downloaden (je eigen webserver of een publieke server van het Tasmota-project), ofwel het bestand van je lokale computer uploaden. Meer informatie vind je op de wiki van Tasmota. Voor wie heel wat Sonoff-modules in huis heeft, is SonWEB interessant: een beheerdersinterface die je op je eigen webserver installeert en waarmee je al je modules configureert en upgradet.

De Tasmota-firmware ondersteunt over-the-air-updates.
De Tasmota-firmware ondersteunt allerlei sensoren, knoppen en zelfs NeoPixel rgb-leds.

2 Reactie(s) op: Zo maak je je eigen slimme verlichting

  • Om te reageren moet je ingelogd zijn. Nog geen account? Registreer je dan en praat mee!
  • 4 augustus 2018 12:14 trance_4_ever
    Voor ik al mijn sonoff's ga omprogrameren: werkt dit ook met een 'gewone' NodeMCU 1.0? Het is een esp8266 en wordt in arduino ESP-12E.
    Wanneer je een reactie plaatst ga je akoord
    met onze voorwaarden voor reacties.
  • 7 augustus 2018 14:37 geent_neut
    Van de week op mijn Sonoff basic Tasmota geflasht met SonOta.exe.
    Niks uit elkaar halen,geen kabeltjes, geen solderen… Je Sonof in het stopcontact, Sonota starten en de aanwijzingen op het scherm volgen.
    https://github.com/reloxx13/SonOTA/releases/tag/0.1b
    Wanneer je een reactie plaatst ga je akoord
    met onze voorwaarden voor reacties.

Wanneer je een reactie plaatst ga je akoord
met onze voorwaarden voor reacties.