ESP8266/WorldDominationSwitch

Aus C3MAWiki

WorldDominationSwitch

Projekt-Idee

Unsere Erfahrungen mit dem ESP8266 haben die Idee aufkommen lassen, einen autarken WLAN-Schalter zu bauen. Durch den günstigen Preis und die bereits vorhandene Raumautomatisierung auf Basis von OpenHAB und MQTT erscheint der ESP8266 als eine gute Lösung, um einen Schalter zu bauen, der bei Betätigung per WLAN eine Aktion auslöst.

Projektteilnehmer


Bilder

Funktionsweise

Die Umsetzung ist "chaotisch": Die Basistechnologien sind der ESP8266, MQTT und die NodeMCU-FIrmware . ESP8266 benötigt 2,8V bis 3,3V Strom und lässt sich damit ideal an entweder zwei Migon-Alkaline-Batterien oder an einer 3V CR2-Lithiumzelle betreiben. Der ESP8266 ist ausserdem so kompakt, dass er zusammen mit einer Lithiumzelle in einem Aufputz-Tastergehäuse verschwindet. Über die Nodemcu-FIrmware lässt sich der ESP8266 in einen DeepSleep-Mode versetzen und benögit nach unseren Messungen dann nur noch ca. 30 Mikroampere Strom. Damit ist der Ruhestrom so gering, dass auch die Lithium-Batterie eine ausreichend lange Betriebszeit bereitstellen sollte. Um die zur Verfügung stehende Strommenge möglichst optimal zu nutzen, arbeitet der ESP8266 nun in etwa folgendes ab, nachdem er über den Schalter resettet worden ist:

  • Oh, was jetzt ? Leben!
  • Ah ein WLAN! Ich probiere mal 10 Sekunden, da reinzu gehen
    • Ich bin im WLAN, Yeah! Was für einen Wert hat den der MQTT-Topic für das Licht ? an oder aus?
    • Okay, schreibe per MQTT das Gegenteil
  • Gute nacht! ich geh wieder schlafen

Der gesamte Vorgang benötigt etwa 2-3 Sekunden. Währen dieser Zeit benötigt der ESP8266 zwischen 100 und 250 mA und geht dann wieder schlafen.


Hardware

Die komplette Hardware besteht eigentlich aus dem Taster im Aufputzgehäuse und dem ESP8266-Modul. Ausserdem benötigt man einen 10kOhm Wiederstand und ein wenig Litze. Dann wird folgende Verbindung hergestellt:

Batterie-Minus <-> ESP8266 GND <-> Taster-Eingang1 Batterie-Plus <-> ESP8266 VCC <-> ESP8266 GPIO0 <-> ESP8266 CH_PD Batterie-Plus <-10kOhm-> ESP8266 RST Taster-Eingang2 -> ESP8266 RST

Im Regelbetrieb liegt also der Reset-PIN über 10kOhm Pullup gegen VCC und wird durch den Taster zum Resetten auf GND (=Batterie-Minus) gezogen


Quellcode