Ich habe mich neulich etwas mit den "Smarten Steckdosen" der Firma ITEAD beschäftigt. Genauer gesagt mit dem Model "Sonoff S20".
Normalerweise funktionieren smarte Steckdosen über eine Cloudlösung des Herstellers. So auch bei der Sonoff S20. Das gute an den Sonoff Geräten ist aber, dass sie im inneren auf einem ESP8226 basieren. Somit eignen sie sich perfekt zum Betrieb mit einer Custom-Firmware.
Warnhinweis
In diesem Beitrag wird mit Netzspannung von 230 Volt gearbeitet!
Diese Anleitung darf nur von Personen mit entsprechender Ausbildung befolgt werden. Es besteht Lebensgefahr!
Warnhinweis
Sonoff Steckdosen sind kein Spielzeug! Ich übernehme keine Verantwortung oder Haftung für diese Anleitung. Wenn Sie keine ausgebildete Fachkraft im Bereich Elektrotechnik sind, fragen Sie einen Elektriker um Hilfe. Riskieren Sie nicht Ihre Gesundheit oder Ihr Zuhause!
Warum eine Custom-Firmware?
Ich habe die Funktionen der originalen Steckdose nie ausprobiert. Kaufgrund war für mich ganz klar neben dem billigen Preis von unter 10€ je Steckdose, dass die Geräte ohne eine proprietäre Cloud betrieben werden können.
Wenn ich dazu eine andere Firmware auf die Geräte flashen muss ist das ok für mich.
Ich verwende bei mir Sonoff-Tasmota. Diese Firmware ist Open Source und wird auf GitHub entwickelt. Sie unterstützt jede Menge verschiedene Geräte, bietet massig Funktionen und wurde in mehre Sprachen übersetzt.
Erforderliche Hardware
- Sonoff S20 Steckdose (ca 10€)
- USB FTDI Adapter (ca 3€)
- Pin header
Lötkolben
Benötigte Software
- Atom Editor
- PlatformIO IDE (Atom Plugin)
- Aktuelle Version von Sonoff-Tasmota
Prüfen ob der USB FTDI Adapter funktioniert
Steckt den Adapter an euren PC und prüft im Gerätemanager, ob der Adapter erkannt wird. Falls der Adapter nicht auftaucht müssen eventuell die Treiber manuell installiert werden. Mein Adapter wurde unter Windows 10 ohne Probleme erkannt.
Merkt euch außerdem den angezeigten Com-Port. "COM3" in meinem Beispiel.
Installation von PlatformIO IDE
Danach muss Atom einmal neugestartet werden.
Firmware anpassen
Auf GitHub stehen auch direkt fertig kompilierte Images der Firmware zur Verfügung. Wer möchte kann direkt ein solches Image auf seine Sonoff Steckdose flashen. Die Steckdose öffnet dann ein W-LAN über das die Konfiguration der Steckdose über ein Web Frontend durchgeführt werden kann.
Ich zeige in diesem Beispiel allerdings der vollständig Halber, wie man die Firmware selber anpassen kompilieren und flashen kann.
Zuerst muss die aktuelle Version von Sonoff-Tasmota als Zip-Archiv heruntergeladen werden und auf dem Computer entpackt werden.
Danach den kompletten Ordner in der PlatformIO IDE in Atom öffnen
Nun passen wir in der Datei platformio.ini
ein paar Werte an.
Zuallererst definieren wir, dass wir die Firmware in deutscher Sprache kompilieren möchten.
; *** Uncomment one of the lines below to build/upload only one environment
env_default = sonoff
env_default = sonoff-DE
Danach müssen wir noch den COM-Port richtig definieren. In meinem Fall ist dies COM3. Diese Information bekommt ihr im Gerätemanager.
; *** Upload Serial reset method for Wemos and NodeMCU
upload_port = COM3
Öffnet als nächstes die Datei sonoff\my_user_config.h
.
Auch hier müssen nicht viele Werte angepasst werden.
Zuerst wird der Name eures W-Lans und das entsprechende Passwort gesetzt.
#define STA_SSID1 "Daniels WLAN" // [Ssid1] Wifi SSID
#define STA_PASS1 "Mega Passwort" // [Password1] Wifi password
Danach habe ich noch die Zeitzone gesetzt.
#define APP_TIMEZONE 2 // [Timezone] +1 hour (Amsterdam) (-13 .. 14 = hours from UTC, 99 = use TIME_DST/TIME_STD)
Aufgrund der Winterzeit ist das aktuell +2. Mit Sommerzeit dann +1.
Mehr Einstellungen habe ich bei mir nicht vorgenommen. Ich nutze bei mir ein eigenes VLAN für IoT Geräte, welches nicht geroutet wird. Wer dies nicht hat, oder mehr Sicherheit wünscht, sollte in jedem Fall ein Passwort für den Webserver setzen.
Kompiliert nun die Firmware und lasst das Fenster offen.
Firmware flashen
Warnhinweis
In diesem Beitrag wird mit Netzspannung von 230 Volt gearbeitet!
Diese Anleitung darf nur von Personen mit entsprechender Ausbildung befolgt werden. Es besteht Lebensgefahr!
Warnhinweis
Lebensgefahr! Öffnen Sie niemals ein Gerät, welches nicht vom Stromnetz getrennt ist!
Warnhinweis
Lebensgefahr! Flashen Sie niemals Firmware während das Gerät mit dem Strom verbunden ist!
Nachdem die Steckdose geöffnet wurde müssen die serielle Pins angelötet werden.
Danach die Anschlüsse mit dem USB Adapter Verbinden
Wenn der USB Adapter mit der Steckdose verbunden ist, drückt den Taster auf der Steckdose und steckt gleichzeitig den USB Adapter in einen USB Port. Haltet den Taster noch für 2 Sekunden gedrückt.
Jetzt ist die Steckdose im "Flash Mode" und ihr könnte die Firmware hochladen.
Baut die Steckdose wieder zusammen und steckt sie in eine Steckdose.
Steckdose einrichten
Wenn die Sonoff Steckdose nun zum ersten mal eingesteckt wird solle sie grün blinken.
Wenn alles geklappt hat, sollte sich die Sonoff Steckdose jetzt mit dem W-LAN verbinden. Über den DHCP Server (bei mir der UniFi Controller) kann dann die IP-Adresse herausgefunden werden.
Danach kann das Webfrontend über den Browser erreicht werden. Sollte sich die Sonoff Steckdose nicht mit eurem W-Lan verbinden, prüft mit einem Handy (oder anderem W-LAN Gerät) ob die Steckdose eventuell einen Hotspot eröffnet hat um die Konfiguration abzuschließen. Ich hatte dies bei einer meiner drei Sonoff Steckdosen... Warum kann ich nicht sagen.
Folgende Konfiguration solltet ihr setzen:
Einstellungen
Gerät konfigurieren
Gerätetyp (Sonoff Basic)
auf Sonoff S2X (8)
stellen.
Einstellungen
WLAN konfigurieren
Hostname
einen namem für die Steckdose vergeben.
Wenn ihr keinen MQTT Broker habt, oder MQTT nicht verwenden wollt:
Einstellungen
Sonstige Einstellungen
MQTT aktivieren
deaktivieren. (Dann hört auch das grüne blinken auf)
Sollte die Steckdose als Zeitschaltuhr genutzt werden empfele ich euch zuerst die Einstellungen der Uhrzeit zu überprüfen.
Die Tasmota-Firmware nutzt einen NTP-Server im Internet um die Uhrzeit automatisch zu setzen.
Ob dies geklappt hat und ob die Uhrzeit Richtig ist, könnt ihr mit dem Befehl Status 7
abfragen.
Ich nutze die Sonoff Steckdosen bei mir als Zeitschaltuhr. Bei meinem Aquarium darf ich eigentlich mindestens einmal im Jahr eine Zeitschaltuhr tauschen, da diese einfach defekt ist, ihr Programm vergessen hat oder andere Probleme macht.
Ich hoffe das ich diese Probleme nun nicht mehr habe.