Sonoff S20 mit Tasmota flashen und in ioBroker einbinden

In diesem Artikel zeige ich Dir, wie Du einen Sonoff S20 mit Tasmota flashen und somit in ioBroker integrieren kannst.

Einführung

Die Sonoff S20 Zwischenstecker können auch im Auslieferungszustand (ohne Tasmota-Firmware) in ioBroker eingebunden werden, haben aber den Nachteil, dass sie mit der Original-Firmware über die Sonoff-Cloud arbeiten, und ich diesen weiteren Cloud-Zugriff nicht möchte. aus diesem Grund werde ich den Zwischenstecker mit der Tasmota Firmware flashen und so eine alternative Firmware installieren. Die Vorteile von Tasmota sind die einfachere Integration in ioBroker via MQTT-Client, schneller Reaktionszeiten, keinen Cloud-Zugriff und Integrationsmöglichkeiten in Amazon Alexa.

ACHTUNG:
Während des Flashens darf auf keinen Fall 230V anliegen!!! Also immer den Zwischenstecker aus der Steckdose abziehen und erst nach allen Arbeiten am geöffneten Gerät wieder einstecken.

 

Benötigte Materialen

 

Hardware-Vorbereitung

Im ersten Schritt müssen wir die Schrauben des Sonoffs S20 Zwischenstecker lösen. Wir sehen nun die Platine des S20. Im unteren Bereich sind 4 Löcher mit Lötpunkten vorhanden, auf die eine Stiftleiste (4x fach) aufgelötet werden kann. Alternativ kann man hier auch mit 4x Male-Female Steckern die Verbindung zur TFDI-Flash-Platine herstellen. Dazu werden die 4 Stecker einfach leicht schräg in die Löcher eingeführt und fixiert. Ich habe bei mir die Lösung ohne löten versucht, was bestens funktionierte.

Die einzelnen Steckleitungen werden wie folgt zwischen dem Sonoff S20 und dem FTDI-Adapter angeschlossen:

Sonoff S20 FTDI-Adapter
GND GND
VCC VCC
TX RX
RX TX

Wichtig ist hierbei, dass wir die TX und RX Leitungen vertauschen. Sprich der TX geht auf RX am Adapter und umgekehrt.

 

Software-Vorbereitung

Für das Flashen der Tasmota Firmware kann z.B. ArduinoIDE eingesetzt werden. Ich habe für das Flashen Version 1.8.5 eingesetzt. Falls Du ArduinoIDE noch nicht installiert hast, kannst Du die Software unter folgendem Link herunterladen. Nach der Installation musst Du noch die Einrichtung für die ESP8266-Boards durchführen, welche ich bereits hier beschrieben habe: Arduino IDE Einrichtung ESP8266-Boards

Im nächsten Schritt laden wir uns die aktuelle Tasmota-Version als ZIP-Datei von GitHub herunter. Der Download wird rechts oben mit der Schaltfläche „Clone or download“ und dann „Download ZIP“ gestartet.

 

Nach dem nun die ArduinoIDE installiert und konfiguriert ist, können wir im nächsten Schritt die Tasmota Firmware entsprechend vorbereiten. Dazu entpacken wir das ZIP in einen beliebigen Ordner und kopieren im ersten Schritt alle Ordner im Ordner „lib“ in den „libraries“ Ordner der ArduinoIDE Installation. In der Regel liegt dieser unter den eigenen Dokumenten\ Arduino \ libraries. Zudem kopieren wir den Ordner „sonoff“ in unseren Sketch-Ordner (Dokumente\Arduino).

Nun können wir ArduinoIDE starten und über Datei öffnen die Datei „sonoff\sonoff.ino“ aus dem Sketch-Ordner öffnen. Nach dem Öffnen sollten wir das komplette Sonoff-Projekt sehen und geöffnet haben.

Im nächsten Schritt beginnen wir nun mit der Anpassung der Firmware mit unseren WLAN-Einstellungen. Dazu öffnen wir die Datei „user_config.h“
Die mit gelb markierten Defines müssen wir nun an unsere Umgebung anpassen. Im Eintrag „WIFI_IP_ADRESS“ habe ich „0.0.0.0“ eingetragen, wodurch der DHCP-Server der Steckdose eine IP-Adresse vergeben soll. Da ich die Zwischenstecker später mit MQTT an ioBroker anbinde benötige ich hier keine feste IP-Adresse. Die Defines „STA_SSID1“ und „STA_PASS1“ erhalten die jeweilige WLAN-SSID sowie das WLAN-Kennwort. Optional kann hier noch ein zweites Netzwerk eingetragen werden. Zudem habe ich im Define „WIFI_CONFIG_TOOL“ WIFI_RETRY eingetragen, sodass sich der Zwischenstecker nach einem WLAN-Abbruch wieder erneut verbindet. Nach dem alle Änderungen gemacht wurden, können wir die Datei speichern.

Im nächsten Schritt müssen wir noch die Einstellungen der Verbindung und des Flash-Vorgangs treffen. Hierzu müssen folgende Einstellungen in der ArduinoIDE unter Werkzeuge angepasst werden:

 

Das Flashen der Software

Nun beginnen wir mit dem eigentlichen Flash-Vorgang des Sonoff S20 mit der aktuellen Tasmota Version. Hier bei zunächst wieder der Sicherheitshinweis:

Während des Flashens darf auf keinen Fall 230V anliegen!!!
Also immer den Zwischenstecker aus der Steckdose abziehen und erst nach allen Arbeiten am geöffneten Gerät wieder einstecken.

In diesem Schritt verbinden wir zunächst den USB FTDI-Adapter mit unserem PC. Dabei müssen wir den Button auf dem Sonoff S20 gedrückt halten. Die LED auf dem FTDI-Adapter blingt nun zweimal. Das Blinken der LED zeigt uns, dass sich Sonoff S20 im Programmiermodus befindet und wir jetzt mit dem Flash-Vorgang beginnen können.

Wir gehen nun wieder in Arduino IDE und klicken auf Schaltfläche „Hochladen“. Nun wird der Sonoff S20 mit Tasmota geflasht.

Nach dem das Hochladen mit 100% abgeschlossen wurde, können wir den FTDI-Adapter einmal aus dem USB-Port entfernen und erneut einstecken ohne den Button zu drücken. Nun fährt der Sonoff S20 mit Tasmota hoch und sollte grün blinken. Im nächsten Schritt müssen wir die IP-Adresse des Sonoff S20 Zwischensteckers über den DHCP-Server des Routers ermitteln. Dazu einfach die Netzwerkübersicht auf dem Router / DHCP-Server öffnen und nach einem neuen Gerät mit dem Namen „Sonoff“ suchen. Bei mir war der Zwischenstecker sofort sichtbar und ich konnte mittels der entsprechenden IP-Adresse auf das Tasmota Web-Interface zugreifen.

 

Vorbereitungen in ioBroker

Im nächsten Schritt müssen wir in ioBroker den Sonoff Adapter installieren. Dazu gehen wir auf die Adapter-Übersicht und suchen hier nach sonoff. Über die Plus-Schaltfläche können wir nun eine weitere Instanz hinzufügen.

 

Nach der Installation konfigurieren wir den Adapter. Dabei müssen wir den Port definieren, über den der MQTT-Broker läuft. Falls bereits ein MQTT-Adapter (Broker) installiert wurde muss hier ein abweichender Port gewählt werden. In meinem Fall nutze ich daher den Port 1884.

 

 

Das Tasmota Web-Interface

Nach dem wir nun die IP-Adresse ermittelt haben geben wir diese nun einfach im Browser ein. Nach dem Laden sollte die Tasmota-Software angezeigt werden. Auf der Übersichtsseite können wir den aktuellen Status des Zwischensteckers einsehen oder umschalten. Zudem stehen umfangreiche Einstellungen, Informationen über Tasmota sowie ein Firmware Update zur Verfügung. Über die Konsole können zusätzliche Befehle gesendet werden. Zudem können wir den Zwischenstecker neu starten.

 

   

Für die Integration in ioBroker öffnen wir nun in den Einstellungen der Tasmota Software die MQTT Konfiguration. In den MQTT-Einstellungen geben wir als Host die IP-Adresse von ioBroker sowie den vorher definierten Port ein. Zusätzlich können wir in der Geräte-Konfiguration noch den Gerätetyp auf „Sonoff S2X“ setzen. Hier können bei anderen Sonoff Geräten noch optionale Sensoren angeschlossen.

 

Visualisierung

Nach dem wir nun den Sonoff-Adapter konfiguriert und neu gestartet haben, erscheint unter den Objekten unter dem Zweig „sonoff.0“ unser Sonoff S20 Zwischenstecker. Wir sehen hier unter dem Bereich INFO den Hostnamen, die IP-Adresse sowie der Grund des letzten Restarts.

 

Über den Datenpunkt POWER können wir zudem den Status des Zwischensteckers setzen oder auslesen.

Matthias Korte

Hauptberuflich Software-Entwickler und seit einigen Jahren Smart-Home Fan. Angefangen hat alles mit einem RaspberryMatic und einer schaltbaren Steckdose. Mittlerweile habe ich einige Steckdosen, Sensoren, und Thermostate sowie ioBroker zur Visualisierung im Einsatz.

3 Gedanken zu „Sonoff S20 mit Tasmota flashen und in ioBroker einbinden

  • Pingback:ioBroker kompatible Steckdosen Zwischenstecker – smarthome-tricks.de

  • 11. Dezember 2018 um 0:05
    Permalink

    Zudem kopieren wir den Ordner „sonoff“ in unseren Sketch-Ordner.

    Und genau hier war für mich Ende…

    Wo ist de Ordner Sonoff den ich wo in Sketch kopieren soll?

    Danke

    Antwort
    • 15. Dezember 2018 um 15:44
      Permalink

      Hallo,

      der sonoff-Ordner aus dem Download muss in den Arduino Ordner in den eigenen Dokumenten (unter Windows) kopiert werden. In diesem Ordner befindet sich der zu öffnende Sketch.

      Antwort

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

* Die Checkbox für die Zustimmung zur Speicherung ist nach DSGVO zwingend.

Ich akzeptiere