Sonoff Dual R2 mit Tasmota flashen

Wie die aktuellen Erfahrungen aus dem Hausbau zeigen, kann man noch so gründlich planen, aber man braucht immer genau in der Ecke eine schaltbare Steckdose, in der man keine eingeplant und installiert hat.

Aus diesem Grund habe ich mich mit vielen Produkten zum Nachrüsten befasst, in diesem Artikel behandeln wir eins davon.

Sämtliche Schaltaktoren der Firma Sonoff werden via WLAN eingebunden, da diese mit dem weit verbeiteten Chip ESP8265 ausgestattet sind. Leider möchte der Hersteller jedoch, dass man zur Bedienung der Aktoren die herstellereigene App verwendet.

Das finde ich irgendwie nicht besonders smart, da ich mit der Fülle der verschiedenen Smarthome-Artikeln unzählige Apps installieren müsste und jedesmal, wenn ich ein Gerät bedienen möchte, die entsprechende App öffnen muss. Außerdem kann so keine geräteübergreifende Steuerung stattfinden. Beispielsweise könnte einer der Schaltaktoren des Sonoff Dual R2 eingeschaltet werden, wenn eine Bewegung im Raum erkannt wird. Hierzu benötigen wir eine gemeinsame Sprache bzw. eine Sprache, die von anderer Seite her weiterverarbeitet werden kann.

Die alternative Firmware Tasmota wurde für den ESP-Chipsatz entwickelt und kann daher auf zahlreiche Geräte, wie auch unseren Sonoff Dual R2, installiert werden. Mit dieser Firmware ist eine Bedienung des Geräts via Weboberfläche möglich und zudem können die Status (Schalter, Temperatur, Luftfeuchtigkeit, je nach Gerätetyp) via MQTT ausgelesen und ggf. gesteuert werden.

MQTT ist ein Protokoll, dass für IoT-Geräte entwickelt wurde. Man kann sich die Kommunikation wie eine Art Internetforum vorstellen, bei der einzelne Teilnehmer ihre Mitteilungen in Threads schreiben und andere Teilnehmer Threads abonnieren, um die in diesen Thread geschriebenen Mitteilungen zu empfangen.

Im folgenden Beitrag möchte ich zeigen, wie die alternative Firmware Tasmota auf den Sonoff Dual R2 geflashed werden kann.

 

Was brauchen wir

Zunächst benötigen wir natürlich einen oder mehrere Sonoff Dual R2. Zum Verbinden des Sonoff oder anderer Geräte mit dem ESP-Chipsatz am Computer benötigen wir zudem einen FTDI-Adapter, der günstig auf vielen Marktplätzen zu erwerben ist. In diesem Beitrag verwende ich diesen hier.

 

Vorbereitungen

Bei dem FTDI-Adapter bitte vor dem Verbinden darauf achten, dass der Jumper auf 3,3V eingestellt ist, da sonst irreparable Schäden an den Sonoff-Geräten auftreten werden!

Zudem noch ein allgemeiner Hinweis zum Umgang mit Strom:
Jeder ist für sein Handeln selbst verantwortlich, ich übernehme keine Haftung beim Umgang mit gefährlichen Spannungen. Sämtliche Schritte in diesem Beitrag werden OHNE verbundene 230V-Versorgung durchgeführt! Niemals 230V am Sonoff anlegen, solange dieser mit dem FTDI-Adapter und vielleicht sogar noch dem Computer verbunden ist!

 

Treiberinstallation

Zunächst müssen für den FTDI-Adapter passende Treiber heruntergeladen und installiert werden. Für den Adapter, den ich benutze und in diesem Beitrag verlinkt habe, können die entsprechenden Treiber hier heruntergeladen werden:

https://cdn.sparkfun.com/assets/learn_tutorials/7/4/CDM21228_Setup.exe

Nach dem Herunterladen und Installieren können wir den FTDI-Adapter am Computer anschließen und prüfen anschließend im Gerätemanager, welcher COM-Port unserm Adapter zugewiesen wurde.

 

Diesen Port merken wir uns, um ihn später zu konfigurieren.

 

 

Sonoff-Gehäuse öffnen

Das Öffnen des Gehäuses des Sonoff Dual R2 ist nur beim erstem Mal etwas schwierig. Leider gibt es nur beim kleinen Deckel für den Berührungsschutz eine Verschraubung, die zuvor abgeschraubt wird. Das Gehäuse selbst ist lediglich zusammengeclipst. An den langen Seiten etwa nach dem ersten und dritten Viertel kann man vorsichtig mit einem entsprechenden Werkzeug ansetzen und das Gehäuse leicht(!) auseinanderbiegen. Letztendlich kann der gesamte Deckel entfernt werden.

Die auf dem Gehäuseboden verschraubte Platine kann im Gehäuse verbleiben und muss nicht auseinandergeschraubt werden.

 

 

FTDI-Adapter verbinden

Bevor der Adapter an den Rechner angeschlossen werden kann, muss dieser mit dem Sonoff verbunden werden. Dazu verwendet man am einfachsten Jumper-Kabel, da man sich zumindest bei dem Sonoff Dual das Verlöten sparen kann. Hierzu das Anschlussschema:

 

Das Ganze nochmal in tabellarischer Form:

Sonoff FTDI
VCC VCC
RX TX
TX RX
GND GND

 

Achtung! Damit der Sonoff sowie zahlreiche andere Geräte auch in den Bootloader startet, muss beim Verbinden des FTDI-Adapters mit dem Computer beim Sonoff der GND gegen GPIO0 (bezeichnet als Button0 auf der Platine) gebrückt werden. Ansonsten startet das Gerät mit der bereits installierten Firmware und ein Flashen ist nicht möglich.

Beim Sonoff Dual R2 gestaltet sich das recht einfach. Wir nutzen ein weiteres Jumper-Kabel (männlich-männlich) und verbinden die beiden entsprechenden Pins wie folgt:

 

Fertig verdrahtet sah das Ganze bei dann so aus:

 

Installation der Entwicklungsumgebung

Zur „Installation“ von Tasmota auf unseren Geräten nutze ich die Software Atom, die hier kostenfrei heruntergeladen werden kann:

https://atom.io/

Auch diese installieren wir auf unserem Computer.

 

Nachdem die Installation abgeschlossen wurde, öffnen wir Atom und sehen das folgende Willkommensfenster.

 

Für unseren Zweck benötigen wir noch ein zusätzliches Modul. Dazu wechseln wir über „File“, „Settings“ zu „Install“.

 

Dort suchen wir nach „Platform“ und installieren dieses Modul durch den Button „Install“.

 

Die Installation benötigt einige Minuten. Nach der Fertigstellung geht es weiter.

 

Tasmota

Tasmota beschaffen

Im nächsten Schritt laden wir Tasmota von Github herunter:

https://github.com/arendst/Sonoff-Tasmota/releases/

Von den verfügbaren Möglichkeiten benötigen wir den Source-Code zur weiteren Verwendung. Ich persönlich nutze immer die neueste Version von Tasmota, welche unter diesem Link herunterzuladen ist:

https://github.com/arendst/Sonoff-Tasmota/archive/development.zip

Nach dem Herunterladen entpacken wir das Archiv an eine gewünschte Stelle.

 

Tasmota konfigurieren

Nun wählen wir im geöffneten Atom-Editor das Menü „File“ und dort den Eintrag „Open Folder“. Im Dateiauswahldialog navigieren wir zum soeben entpackten Ordner und wählen „Open“.

 

Nun öffnet sich unser Tasmota-Projekt in einem neuen Fenster. Das vorherige Fenster benötigen wir nicht weiter und kann somit geschlossen werden. Jetzt müssen zwei Dateien an unsere Bedürfnisse angepasst werden. Dazu navigieren wir in der linken Liste auf die Datei „my_user_config.h“ im Unterordner „sonoff„. Zunächst wählen wir ungefähr (je nach Versionsstand) in der Zeile 204 das deutschsprachige Paket, indem wir die beiden Schrägstriche am Anfang der Zeile entfernen.

 

 

Anschließend konfigurieren wir ab der Zeile 60 die Zugangsdaten zu unserem WLAN. Diese können später auch in der Weboberfläche angepasst werden, benötigen zunächst aber ein initiales WLAN, damit wir überhaupt mit dem Gerät kommunizieren können.

 

Es reicht aus, wenn wir an dieser Stelle die SSID sowie das WLAN-Passwort setzen.

Sollten wir zu einem späteren Zeitpunkt Änderungen vornehmen und diese neu auf das Gerät flashen wollen, ist hierbei zu beachten, dass der Zähler in der Zeile 47 („CFG_HOLDER„) hoch gesetzt werden muss, damit die hochgeladene Firmware als neu erkannt und somit übernommen wird.

 

COM-Port prüfen

In der Datei „platform.io“ prüfen wir den zu verwendenen COM-Port und passen diesen ggf. an den COM-Port an, welchen wir zuvor im Gerätemanager ermittelt haben.

 

Firmware flashen

Nachdem alle Einstellungen getroffen wurden, können wir die neue Firmware kompilieren und auf unseren Sonoff laden. Dazu wählen wir im Menü „PlatformIO“ den Punkt „Upload“ und die Kompilierung beginnt.

 

Sollte der Vorgang wie hier gezeigt abbrechen, könnte dies an einem falschen COM-Port oder nicht richtig installierten Treibern für das FTDI-Modul liegen.

 

Wurde der Flashvorgang erfolgreich abgeschlossen, wird uns dies von Atom mitgeteilt. Atom wird nun nicht weiter benötigt und kann geschlossen werden.

 

Der erste Start

Wir trennen den FTDI-Adapter vom Computer und entfernen die Brücke von „GND“ zu „GPIO0“ auf dem Sonoff. Die restlichen Verbindungen lassen wir bestehen. Nun kann der FTDI-Adapter wieder an den USB-Port angeschlossen werden, damit der ESP-Chip des Sonoff wieder mit Spannung versorgt wird.

Wenn wir nun das Log unseres DHCP-Servers (z.B. in der FritzBox) beobachten, werden wir einige Sekunden später ein neues Gerät mit der Bezeichnung „sonoff-xxxx“ erkennen. Alternativ wird in Atom zu Beginn des Flash-Vorgangs die MAC-Adresse des angeschlossenen Geräts angezeigt, so dass wir im DHCP-Log nach dieser suchen können.

 

Einstellungen in der Weboberfläche

Sämtliche weitere Konfigurationen erledigen wir ab sofort über die Weboberfläche von Tasmota. Dazu rufen wir die im DHCP-Server ermittelte IP-Adresse in einem Browser auf und werden von Tasmota in der Grundkonfiguration begrüßt.

 

Wie wir sehen, wird uns zu dieser Zeit nur ein Schalter angeboten, obwohl unser Sonoff Dual R2 über zwei Relais verfügt. Grund hierfür sind die „Werkseinstellungen“ von Tasmota die nun angepasst werden müssen.

Im Menü „Einstellungen“ wählen wir den Punkt „Gerät“ und ändern dort den Gerätetyp auf „Sonoff Dual R2„.

 

Nach einem Klick auf „Speichern“ wird das Gerät neu gestartet und im Anschluss sehen wir auf der Startoberfläche unsere beiden Relais, die nun unabhängig voneinander geschaltet werden können.

 

Nun kann der Sonoff vom FTDI-Adapter getrennt und wieder zusammengebaut werden. Unser Doppel-Schaltaktor ist nun einsatzbereit.