I - Flash-Speicher komplett löschen
- bei WLAN-Schaltern, Steckdosen, Lampen... mit ESP8266 / ESP8285 Chip wie Sonoff, Shelly, usw.
- bei 'unerklärlichem' Verhalten und Fehlern nach Firmware-Wechsel
- bei WLAN-, Update-, Flash-, Konfig-Problemen usw.
Hinweis:
In jedem Fall empfiehlt es sich erst mal Reset 5 zu versuchen,
dazu Reset 5 in die TASMOTA-Konsole eingeben mit Enter
Damit wird die gesamte Konfiguration (bis auf die WLAN-Daten) zurückgesetzt
und es werden zumindest Teile des Flash-Speichers gelöscht und 'aufgeräumt'.
I.I - Vorbereitung
Die dazu benötigten Dateien: --> blank_1MB_2MB_4MB_mit_ESPtool.zip
und eine .bin der folgenden:
- aktuelle TASMOTA-Release mit Core STAGE pre-2.6
- aktuelle TASMOTA-Development
- aktuelle TASMOTA-Mod von reloxx13
Die hier beschriebene Methode zum Löschen des Speichers und anschließendem
Neu-Beschreiben funktioniert NUR per Hardware Flasher (OTA ist nicht möglich).
Wie für das Flashen von Tasmota, wird auch hier ein FTDI-, CP2102-, CH340-,... Adapter benötigt,
mit der üblichen Verdrahtung (TX, RX, GND,...).
Genauso muss das Gerät für das Löschen in den Flash-Modus versetzt werden,
z.B. Taste während dem Anstecken gedrückt halten oder GPIO0 auf GND legen.
I.II - Löschen mit blank_1M.bin / blank_2MB.bin / blank_4MB.bin
'Löschen' bedeutet hier Überschreiben des gesamten Flash-Speichers
mit einer .bin Datei, in der nur 'FF' Bytes enthalten sind.
Je nach Gerät ist unterschiedlich großer Flash-Speicher verbaut,
entsprechend sollte die blank .bin gewählt werden.
Bei den meisten Sonoff wird 1MB Flash verwendet.
Shelly 1 und Shelly 2 verwenden 2MB Flash.
Bei Sonoff POW v2.0 / WeMos D1 / NodeMCU z.B. 4MB Flash.
Die Größe des Flash-Speichers lässt sich z.B. mit esptool.py feststellen:
esptool.py flash_id
I.III - Löschen per ESPEasy Flasher (esptool.exe bzw. FlashESP8266.exe) unter Windows
- die Datei FlashESP8266.exe (GUI zu esptool.exe) starten
- COM-Port sollte schon passend vorgewählt sein
- Firmware blank_1MB.bin / blank_2MB.bin / blank_4MB.bin auswählen
- Flash Button drücken
Danach kann sofort eine Firmware .bin (Tasmota, ESPEasy, ESPurna...) gewählt werden,
um sie genau so zu flashen (links weiter oben).
II - Löschen per esptool.py
Das Löschen des Flash-Speichers ist auch mit esptool.py möglich:
esptool.py erase_flash mit automatischer COM-Port Erkennung oder
esptool.py --port COM5 erase_flash COM-Port entsprechend anpassen
III - Löschen per NodeMCU PyFlasher
NodeMCU PyFlasher ist eine einfach zu benutzende GUI zu esptool.py für Windows und Mac.
Zum Beschreiben und auch zum Löschen von ESP82xx Boards geeignet mit der Einstellung:
• yes, wipes all data
Wichtig! Konfiguration Flash mode • Dual Output (DOUT)
mehr dazu: https://github.com/arendst/Sonoff…demcu-pyflasher
IV - Hinweise zum Lösungsansatz
Die Methode (Flash-Speicher vollständig löschen und anschließend neue .bin aufspielen)
ist meistens der schnellste Weg, um zu einem definierten Punkt zurückzukehren,
bei dem gesichert ist, dass es zu 100% funktioniert bzw. funktionieren müsste (Firmwaretechnisch).
Bei der Fehlersuche hat es sich deshalb bewährt, diesen als 1. Schritt zu wählen.
Beim Wechsel zwischen Firmware-Versionen, bei Änderungen des Core 2.3.0/2.4.2/2.5.0,
beim Wechsel zwischen 1MB, 2MB, 4MB Firmware usw. usw.
bleiben (ohne Löschen) Reste im Speicher vorhanden, die sich gegenseitig stören und
zu 'unerklärlichen' Phänomen führen können.
Andere Methoden (wie CFG_HOLDER...) sind meistens zeitaufwändiger und manchmal
auch nicht zielführend, da nur Teile des Speichers gelöscht oder überschrieben werden.
V - Probleme und weitere Lösungsvorschläge
V.I - WLAN und MQTT Probleme:
- Erster Schritt, wie schon beschrieben, Flash komplett löschen und eine vorkompilierte Tasmota .bin flashen (z.B. sonoff-DE.bin)
- Empfehlung: nur Core ab STAGE pre-2.6 verwenden
- sonst u.a. WLAN Kanalwahl überprüfen / Mesh ausschalten / Repeater deaktivieren / Fixe IP...
V.II - WLAN verbindet sich nicht:
- Ursache können Sonderzeichen und Leerzeichen in WLAN SSID und Passwort sein.
- Probleme kann es auch durch aktiviertes 5GHz WLAN mit identischer SSID / Mixed Mode etc. geben.
V.III - WLAN funktioniert nach einiger Zeit nicht mehr:
- dies kann zum einen Hardware-Fehler bedeuten --> Lötverbindungen kontrollieren und nachlöten, Elkos, Überhitzung...
- zum anderen könnten Störungen durch Interferenzen mit anderen/neuen Geräten etc. die Ursache sein.
V.IV - Relais-Klicken und LED-Blinken im Sekunden-Takt:
- ist ein Zeichen für fehlerhafte oder nicht vollständig geflashte .bin --> Löschen und neu Flashen
V.V - Problem mit zu wenig Speicher (iRAM):
- das Gerät startet zwar und lässt sich z.B. über Taste schalten, kurz darauf folgen aber Resets mit Neustart
- oder es stehen bestimmte Funktionen nicht zur Verfügung (fehlende Menüpunkte in Tasmota).
- Lösung: vorkompilierte Tasmota .bin flashen oder Funktionen von Tasmota in my_user_config.h bzw. user_config_override.h deaktivieren.
Weitere Infos zu Fehlerbehebung:
https://github.com/arendst/Sonoff…Troubleshooting
P.S.:
Kommentare zu Korrekturen und Verbesserungsvorschlägen sind SEHR willkommen
und werden von mir mit Sicherheit überdacht.
Wenn dir der Beitrag geholfen hat, freut mich ein '' natürlich besonders