Mit Hilfe eines FTDI to USB Adapter lassen sich günstige WiFi Steckdosen, wie die Gosund SP111 aus Fernost, problemlos flashen, somit können wir sie via MQTToder HTTP in unsere Heimautomatisierungslösungen, wie z.B. OpenHab2 einbinden.

Gosund SP111 Lötstellen

Vorab: USBasp ≠ FTDI to USB

Da ich es schmerzlich selbst herausfinden musste, ein USBasp ist nicht gleich einem FTDI to USB Adapter. Die meisten Fernost WiFi Steckdosen haben einen ESP8266 verbaut, dieser lässt sich nicht via USBasp oder AVR flashen - hierfür wird ein FTDI to USB Adapter benötigt.

Öffnen des Gehäuses und Löten

An der Unterseite des Gehäuses befindet sich eine kleine Kreutzschlitzschraube, diese lösen und ihr könnt den oberen Teil des Gehäuses nach oben abziehen - zum Vorschein kommt das PCB.

Wir benötigen eine Verbindung zu 3.3V, TXD, RXD, GND, sowie eine Brücke zwischen GND und IO1, um den ESP8266 in den Flash-Modus zu versetzen. Ich empfehle die Brücke nicht einzulöten, 2 sek. Überbrücken beim Bootvorgang reichen aus.

Verbindung zum FTDI

Wir verbinden jetzt den ESP8266 wie folgt mit dem FTDI:
3.3V ---> 3.3/5V
GND ---> GND
TXD ---> RXD
RXD ---> TXD

Wichtig ist, dass beim Bootvorgang IO1 mit GND für ca. 2 Sek. verbunden ist, nur dann wird der Chip in den Flash-Modus versetzt. Am besten also IO1 mit GND brücken, dann erst den FTDI via USB verbinden und die Brücke nach 2 Sek. wieder lösen.

Gosund SP111 flashen

Hierzu verwenden wir den ESP-EasyFlasher, sowie das aktuellste Tasmota Binary. Das Binary entpacken und in den Ordner des ESP-EasyFlasher legen. Danach den ESP-EasyFlasher starten, den COM-Port und das Binary auswählen und den Flashvorgang starten.

Nach dem Flashvorgang einmal den FTDI von USB trennen und neu verbinden (jetzt müsst ihr die Verbindung nicht mehr überbrücken).

Tasmota via WiFi einrichten

Nach dem erfolgreichen Flashvorgang + Reboot sollte ein neues WiFi Netzwerk im AP-Modus verfügbar sein, verbindet Euch hiermit und konfiguriert SSID, sowie das zugehörige Passwort.

Wählt nach dem erneuten Reboot (automatisch, nach dem auswählen des WiFi Netzwerks) die Blitzwolf SHP (45) Firmware unter "Einstellungen" --> "Gerät konfigurieren aus".

Nach einem erneuten Reboot solltet ihr bereits via Webinterface die Steckdose schalten, sowie den aktuellen Stromverbrauch sehen können.

Tasmota in OpenHab2 via http einbinden

Ich habe in meinem System aktuell MQTT noch nicht konfiguriert, daher stelle ich hier die Einrichtung via HTTP vor. Tasmota lässt sich via HTTP sehr leicht ansteuern, die grundlegenden Befehle für ON, sowie OFF sind folgende:

http://IP-DEINES-DEVICES/cm?cmnd=Power%20On
http://IP-DEINES-DEVICES/cm?cmnd=Power%20Off

Bash Scripts

Ich habe mir daher zwei kleine Bash Scripts erstellt, welche wie folgt aussehen - Socket einschalten:

Und um den Socket wieder auszuschalten:

Beide Scripts habe ich unter /opt/scripts/ unter "socket01-On.sh", sowie "socket01-Off.sh" abgelegt. Beachtet dabei, dass ihr den CHMOD 777 für beide Files vergeben müsst, sollte OpenHab2 bei Euch im Standard konfiguriert sein.

Tasmota Rules

Wir müssen zudem noch die beiden Scripts via eines Rulesets in OpenHab2 einbinden:

Tasmota Item

Zum Schluss noch das Item in das jeweilige Items file einbinden:

Hint: IPs anhand von Mac-Adressen fest vergeben

Es empfiehlt sich dringend, IP Adressen via Mac-Adressen Binding fest zu vergeben - somit vergibt auch DHCP bei jeder Neuanmeldung des Geräts im Netzwerk die gleiche IP-Adresse, ohne feste IP Vergabe kann Eure Konfiguration bei Neuanmeldung eines Geräts durcheinander kommen.