Listing 1
Firmware herunterladen und flashen
$ git clone https://github.com/espressif/esptool.git $ cd esptool $ wget http://ota.tasmota.com/tasmota/release/tasmota-DE.bin.gz $ gunzip tasmota-DE.bin.gz $ esptool.py -port /dev/USB0 write_flash 0x0 sonoff-DE.bin
Für andere Betriebssysteme sind dieselben Schritte analog auszuführen. Achten Sie in einem solchen Fall darauf, dass sich die Parameter für den Port möglicherweise unterscheiden und andere Betriebssysteme einige Tools nicht von Haus aus mitbringen. Hat alles geklappt, sollten Sie eine Ausgabe wie in Listing 2 sehen.
Listing 2
Upload der Firmware
$ esptool.py -port /dev/USB0 write_flash 0x0 sonoff-DE.bin
esptool.py v3.2-dev
Serial port /dev/ttyUSB0
Connecting....
Detecting chip type... ESP8266
Chip is ESP8285N08
Features: WiFi, Embedded Flash
Crystal is 26MHz
MAC: c4:4f:33:c5:36:6e
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Flash will be erased from 0x00000000 to 0x00098fff...
Compressed 622976 bytes to 444119...
Wrote 622976 bytes (444119 compressed) at 0x00000000 in 39.5 seconds (effective 126.1 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
Um die neue Firmware zu aktivieren, trennen Sie das Sonoff Basic einmal kurz von der Spannung und verbinden es wieder. Achten Sie beim Sonoff Basic darauf, dass die Datenverbindung beim Start ordentlich Kontakt hat. Verwenden Sie einen Pfostenstecker, hilft es, diesen in den Löchern leicht zu verkanten. Stecker festhalten, Button drücken und Programm starten: Beim Autor kam an dieser Stelle der dringende Wunsch nach einem dritten Arm auf.
Nach dem Flashen konfigurieren Sie die Tasmota-Firmware. Dazu gibt es zwei Möglichkeiten: Entweder setzen Sie die entsprechenden Kommandos über die zum Flashen genutzte serielle Schnittstelle ab, oder Sie verwenden das Webfrontend der Firmware. Letzteres funktioniert allerdings erst, wenn das Gerät sich am WLAN angemeldet hat. Daher erledigen wir im Beispiel das grundlegende Setup über die serielle Schnittstelle und schwenken dann auf das Webfrontend.
Die Firmware beherrscht einen umfangreichen Satz an Kommandos; eine Übersicht dazu finden Sie im Netz [8]. Viele Optionen für die Konfiguration hängen vom jeweiligen Gerät ab und kommen eher selten zum Einsatz. Um sich über den USB-Seriell-Adapter zu verbinden, benötigen Sie eine Terminalsoftware. Unter Linux empfiehlt sich unter anderem Moserial [9], das Sie unter Ubuntu/Debian mit dem Kommando apt install moserial installieren. Unter Windows funktioniert Termite [10] recht gut.
Prinzipiell eignet sich jedes Terminalprogramm, das die serielle Schnittstelle unterstützt. Es muss aber in der Lage sein, das Zeilenendezeichen auf Carriage Return und Linefeed (CR+LF) einzustellen. Abbildung 4 zeigt die Konfiguration für den seriellen Port. Hierbei ist es wichtig, auf keinen Fall den Hardware-Handshake zu aktivieren.

Abbildung 4: In den Port-Einstellungen legen Sie die individuellen Parameter für die Kommunikation mit der Firmware fest.
Mit dem Kommando aus Listing 3 senden Sie nun die WLAN-Daten ans Sonoff-Gerät. Danach verbindet es sich automatisch mit dem Netzwerk, und Sie erhalten Zugriff auf das Webfrontend. Abbildung 5 zeigt, wie das Übermitteln der WLAN-Daten und das Verbinden mit Moserial abläuft. Hier sehen Sie außerdem die aktuelle IP-Adresse des Geräts. Diese benötigen Sie im Folgenden, um sich über den Webbrowser zu verbinden.
Listing 3
WLAN-Zugangsdaten übermitteln
$ backlog ssid1 SSID; password1 Passwort;;

Abbildung 5: Das Basis-Setup der Firmware umfasst im Beispiel im Wesentlichen das Übermitteln der Zugangsdaten für das WLAN. Anschließend erhalten Sie Zugriff auf das Webfrontend für die Konfiguration.
Im ersten Schritt wählen Sie unter Einstellungen | Gerät konfigurieren den Gerätetyp aus (Abbildung 6). Danach geben Sie unter Einstellungen | MQTT konfigurieren die Daten für die Verbindung zum MQTT-Server von IO-Broker ein. Dort tragen Sie ins Feld Host die IP-Adresse oder den Hostnamen des IO-Broker-Rechners ein, in die Felder User und Password die Daten, die Sie im Broker erzeugt haben. Damit ist das Gerät eingebunden.
Manche Geräte finden sich zwar nicht in der Tasmota-Firmware, wohl aber in der Liste der unterstützten Geräte. In einem solchen Fall müssen Sie das Gerät manuell konfigurieren. Wählen Sie dazu Einstellungen | Sonstige Konfiguration. In diesem Dialog geben Sie den Text ein, der in der Tasmota-Geräteliste zur entsprechenden Hardware hinterlegt ist. Danach machen Sie noch das Häkchen bei Aktivieren, und schon funktioniert das Gerät. Über den Punkt Sonstige Konfiguration können Sie sogar dann Geräte selbst einbinden, wenn Sie diese nicht in der Tasmota-Hardwareliste finden, die Werte aber anders ermitteln konnten.
In IO-Broker finden Sie die Sonoff-Geräte wie gewohnt unter Objekt (Abbildung 7). Das Ansteuern funktioniert wie schon in den letzten Teilen dieser Reihe gezeigt. Allerdings fallen die Namen der Geräte etwas gewöhnungsbedürftig aus. Das lässt sich nach einem Klick auf den Eintrag schnell ändern. Sie können auch direkt in der Firmware einen Namen vergeben. Das erledigen Sie unter Einstellungen | Sonstige Einstellungen. Alternativ könnten Sie die MQTT-Namen anpassen, was aber unter Umständen zu Problemen führt. Daher ist dieses Vorgehen nicht zu empfehlen.

Abbildung 7: Die Sonoff-Geräte in diesem Objektbaum tragen bereits angepasste Namen. Das macht es einfacher, die jeweilige Hardware zu identifizieren.
Testaufbau
Es ist immer von Vorteil, die Komponenten zuerst in einem kontrollierten Umfeld zu testen, bevor Sie sie endgültig einbauen und sich dann wundern, warum etwas nicht klappt. Um sich mit der Funktionsweise der Geräte vertraut zu machen, baute der Autor sich ein kleines Versuchsboard auf einer Siebdruckplatte auf. Das erlaubte, die ausgewählten Komponenten in Ruhe zu testen und ganz nach Bedarf einzurichten. Abbildung 8 zeigt den Aufbau, mit dem der Autor die ersten Versuche mit Tasmota auf Sonoff-Geräten machte.

Abbildung 8: Ein Testaufbau hilft dabei, in einem geschützten Bereich ersten Erfahrungen mit einer neuen Hardware zu sammeln.
TIPP
Bleiben noch Fragen zu Tasmota offen, werfen Sie am besten einen Blick in die Dokumentation [11] des Projekts. Als Einstieg bietet sich die Einführung “Getting Started” [12] an.
Fazit
Im Test funktionierte die Tasmota-Firmware einwandfrei. Das Flashen von nicht direkt dafür vorgesehenen Geräten kann allerdings gelegentlich schon recht abenteuerlich sein. Tasmota erweist sich als gute Möglichkeit, um sich von den oft sehr geschlossenen Lösungen der Hersteller unabhängig zu machen. Der Autor hat den Eindruck gewonnen, dass die Hersteller ihre Lösungen oft so konzipieren, dass sie gerade so funktionieren und jede sinnvolle Erweiterung Geld kostet.
Eine Sache sollten Sie beim Einsatz von Komponenten für das Smart Home im Hinterkopf behalten: Fällt die zentrale Steuerung aus, wird es unangenehm. Achten Sie daher darauf, dass es immer eine Möglichkeit zum manuellen Schalten gibt. In Fall der Sonoff-Geräte würde das beispielsweise bedeuten, auf das Modell Mini anstelle eines Sonoff Basic zu setzen, weil das Mini die Möglichkeit bietet, einen externen Schalter anzuschließen. (agr/jlu)






