Sonoff ist ein WiFi Smart Switch zum Schalten von Verbrauern mit bis zu 10 A Stromaufnahme. Sonoff sendet und empfängt Daten an eine bzw. von einer Cloud-Plattform. Die Steuerung über nimmt eine Adroid oder iOS App.
Kern des Sonoff Switchs ist ein ESP8266. Was liegt hier näher als eine NODEMCU Firmware aufzuspielen und die Steuerung mit Hilfe von Lua selbst in die Hand zu nehmen?
In der Mitte des Boards kann eine fünfpolige Stiftleiste eingelötet werden. Hier stehen 3.3 V, RX, TX und GND für den Anschluss eines FTDI USB-Serial-Adapters zur Verfügung. Die Speisung des Sonoff-Boards erfolgt mit 3.3 V. Den 5 V Anschluss lässt man einfach in der Luft hängen (braunes Kabel).
Die 230 V AC Verbindung bleibt für die Reprogrammierung auf jeden Fall unbeschaltet.
Zur Reprogrammierung des ESP8266 ist der Controller in den Flash-Mode zu schalten. Das erfolgt beim ESP8266 durch Verbindung von GPIO0 mit GND während Reset.
GPIO0 wird über den Taster auf dem Board erreicht. Der Reset-Anschluss ist nicht zugänglich. Hier muss man den PowerOn-Reset verwenden, d.h. entwerder die 3.3 V Leitung (grünes Kabel) lösen und verbinden oder den ganzen FTDI USB-Serial-Adapters ziehen und erneut einstecken. Danach kann der GPIO0-Taster frei gegeben werden.
Die Programmierung des Flash-Memories mit der NodeMCU-Firmware erfolgt dann mit den üblichen Tools. Zu beachten ist, dass hier nur 1 MByte Flash-Memory vorhanden ist. Ich habe deshalb über http://nodemcu-build.com/ eine Firmware erzeugt, die nur die erforderlichen Komponenten (incl. MQTT) erhält.
Das Anwendungsprogramm, welches den Sonoff Smart Switch über MQTT steuert, wird in einem gesonderten Blogbeitrag beschrieben.
Pingback: SONOFF über MQTT steuern | ck blog
Ich bräuchte eine Schritt-für-Schritt-Anleitung um meine Sonoff in den Flash-Modus zu versetzen…. Kann mir jemand bitte helfen?
LikeLike
Die Schritte sind im Blogbeitrag doch beschrieben:
1. Stiftleiste einlöten
2. FTDI-Adapter anschliessen und mit PC verbinden
3. Flashprogramm auf dem PC starten
4. Sonnoff in den Bootmode bringen (Taster drücken und Betriebsspannung ab und wieder zuschalten = Reset)
Bei Fragen bitte nochmal melden.
LikeLike
Taster gedrückt halten, Stromversorgung anstecken, Taster loslassen!
LikeLike
Danke für die Ergänzung
LikeLike
Hallo.Ich will ein Sooff Touch flashen.Finde aber nur Arduiono als Möglichkeiten.
Geht es nicht auch mit NodeMCU und einer passenden .BIN
LikeLike
In meinem Beitrag hatte ich mit NodeMCU gearbeitet und das beschrieben. Bitte die Frage konkretisieren.
LikeLike
Ein paar mehr Indos dazu —> Du hast hier den Smart Switch. Ich will allerdings den Touch oder Touch T1 flashen. Ist das alles die selbe Firmware?? Oder gibts für jede Hardware eine andere?
Bisher fand ich im Netz nur Anleitungen die den Touch mit Arduino oder Atom.io gemacht haben.
Welche Datei genau nehme ich von der Git-Hub Seite
LikeLike
Wie ich gelesen habe, hat der Touch einen ESP8285 verbaut. Mit dem habe ich noch nicht gearbeitet.
Gemäss https://www.heise.de/make/meldung/Schnellvergleich-ESP8266-vs-ESP8285-in-der-Praxis-3306572.html sollte es aber keine Probleme geben, denn der ESP8285 unterscheidet sich nur durch den eingebauten Flash vom ESP8266.
Ich würde mir also eine abgespeckte Firmware (1 MB) bauen und den ESP8285 damit flashen, wie in https://github.com/arendst/Sonoff-Tasmota/wiki/Sonoff-Touch beschrieben. Verwendet habe ich immer den ESP8266Flasher.
LikeLike