Alles begann mit einem Artikel in meinem Lieblings-Computermagazin Heise – WLAN-Stecker mit Tasmota. So konnte ich einige 220-V-Geräte, wie zum Beispiel eine Stehlampe, mit meinem OpenHAB Super-Cheap – Smart-Home-Lösung Smart Home steuern.
Manche 220-V-Geräte brauchen keinen Stecker, ich möchte sie mit einem winzigen Schalter steuern und nicht mit einem großen Stecker an der Wand. Hier habe ich das hier gefunden – 4 € pro Stück aus China… wird das funktionieren?

Nach einem Monat Wartezeit kamen 3 Stück an. Sahen eigentlich ganz gut aus!
Es ist wirklich erstaunlich, was man für 4 € bekommt: einen ESP8266-Mikrocomputer mit WLAN und die gesamte Hardware zur Steuerung von 220 V / 10 A = 2200 W.
Aber: Die Firmware stammt aus China, man muss irgendwo ein Konto registrieren, und der kleine Schalter verbindet sich damit und sendet deine Daten irgendwohin – ich habe darauf keinen Einfluss.
Wo wir die Firmware auf dem Schalter austauschen müssen, ist die Marke „Sonoff“ bekannt für eine „einfache Methode“, dies zu tun
Die Firmware-Lösung meiner Wahl ist Tasmota, eine Open-Source-Software, die das Gerät nur mit dem internen WLAN-Netzwerk verbindet und eine Benutzeroberfläche zur Konfiguration des Geräts bereitstellt. Wir müssen also zwei Dinge tun, um es zum Laufen zu bringen:
- Neue Firmware auf den Switch flashen
- Den Switch in OpenHAB (Open-Source-Software für Smart Home) integrieren
Vorbereitung
Ganz einfach (alles hier: Details), du brauchst:
- Image „tasmota.bin“ von Tasmota: https://github.com/arendst/Tasmota/releases
- Flash-Software, um das Gerät mit dem Image aus 1) neu zu programmieren:tasmotizer
- Ein Kabel, um deinen PC über einen FTDI (Serial-zu-USB-Konverter) mit dem Switch zu verbinden; der FTDI und der Switch sind beschriftet, ebenso wie der Switch:
FTDI Sonoff Smart Swtich 3V 3V GND GND TXT REC/RXI REC/RXI
TXT
Das Löten dauert etwa 5 Minuten; wenn du fertig bist, sollte es in etwa so aussehen wie unten:

Flashen
Der Schalter muss über unser praktisches Kabel mit dem PC verbunden werden; das funktioniert einfach durch Einstecken und ein wenig Justieren.

Um den Switch in den „Programmiermodus“ zu versetzen, muss die Reset-Taste am Switch *vor* dem Anschließen des Switches über das USB-Kabel an den PC gedrückt werden. Sobald die Verbindung hergestellt ist, kannst du die Reset-Taste loslassen (das ist der lange schwarze Stecker).

Starte dann das Flashen mit Tasmotizer, indem du die Firmware und die USB-Schnittstelle auswählst:

Nach dem Neustart des Switches öffnet dieser einen Access Point, den du über die Verbindung zu seinem WLAN (ein AP mit „tasmota“ im Namen) konfigurieren kannst, damit er sich später mit deinem eigenen WLAN verbindet. Viel eleganter ist es jedoch, wenn du Tasmotizer über die Schaltfläche „Send Config“ nutzt, um das WLAN direkt zu aktualisieren; dazu musst du die Zugangsdaten (SSID und Passwort deines Heimnetzwerks) eingeben.
Alle deine Zugangsdaten und Daten bleiben nun in deinem Netzwerk. Auf dem Router habe ich außerdem die Internetverbindung für die IP-Adresse des Switches in meinem Heimnetzwerk deaktiviert – nur zur Sicherheit 🙂
Konfiguriere den Switch – Tasmota ist super
Wenn alles funktioniert, verbindet sich der Switch mit deinem WLAN zu Hause. Du findest seine IP-Adresse in deinem Router und kannst die Hauptkonfigurationsseite über einen Webbrowser öffnen. Du siehst dann die neue Firmware von „Tasmota“ aktiv, die dir die volle Kontrolle über das Gerät gibt.
Es ist eine fantastische Software, komplett Open Source, keine Cloud-Verbindung oder Internetverbindung erforderlich. Sie bleibt bei dir zu Hause 🙂

Die grundlegende Tasmota-Konfiguration ist bereits korrekt, du musst nichts tun. Vielleicht möchtest du im Einstellungsbereich eine Backup-WLAN-Adresse eingeben – wenn du möchtest.
Verbindung zu OpenHAB
Die Switch-Seite
Das Konzept sieht vor, dass der Switch das MQTT-Protokoll nutzt, um mit OpenHAB zu kommunizieren. Sobald er konfiguriert ist, wartet der Switch auf eine Nachricht über dieses Protokoll und führt seine Aufgabe aus – EIN/AUS.

Um MQTT zu konfigurieren, musst du die IP-Adresse deines OpenHAB-Servers und die Anmeldedaten des MQTT-Netzwerks angeben, das du in OpenHAB eingerichtet hast. Der Clou ist das „Topic“, also die „Adresse“, auf die der Schalter wartet – jede Nachricht mit diesem Topic wird vom Schalter verarbeitet. In meinem Netzwerk habe ich jedem Switch ein eigenes Topic gegeben, wie „sonoff1“, „sonoff2“ – so kann ich sie separat steuern. OpenHab verfügt über eine Bindung, die die Verbindung zu diesem Protokoll aufrechterhält, und die ist einfach zu konfigurieren.
Die OpenHab-Seite
Nachdem ich die MQTT-Bindung in OpenHab installiert hatte, habe ich folgende Konfiguration vorgenommen – wichtig ist, dass das Topic „sonoff1“ überall korrekt steht:
Bridge mqtt:broker:OH2mqtt "MQTT Broker" @ "MQTT" [
host="192.168.1.106",
port=1883,
username="OpenHAB",
password="xyz"
] {
Thing topic sonoff1 "Sonoff1" @ "MQTT" {
Channels:
Type switch : ch1 "Light1" [ stateTopic="sonoff:stat/sonoff1/POWER", commandTopic="cmnd/sonoff1/POWER" ]
}
}
Das Ein- und Ausschalten des Schalters ist ganz einfach:
Switch Sonoff1 "Light1" <light> ["Switchable"] { channel="mqtt:topic:OH2mqtt:sonoff1:ch1" }
sendCommand(Sonoff1,ON)</light>
Viel Spaß 🙂

