ESP8266 mit ESPEasy flashen

auf dem Linux-Rechner das esptool installieren:

apt-get update && apt-get install -y esptool

Die Firmware von github.com herunterladen: https://github.com/letscontrolit/ESPEasy/releases/

(Beispiel: ESPEasy_ESP82xx_mega-20211005.zip ist momentan die richtige Wahl)

Um die Speichergröße des ESP8266 herauszufinden:

esptool --port /dev/ttyUSB0 flash_id

Wenn der ESP8266 einen Flash-Speicher von 4MB hat, dann flashen mit:

esptool --port /dev/ttyUSB0 write_flash -fs 4MB -fm dout 0x00000 blank_4MB.bin
esptool --port /dev/ttyUSB0 write_flash -fs 4MB -fm dout 0x00000 ESP_Easy_mega_20211005_normal_ESP8266_4M1M.bin

Wenn der ESP8266 einen Flash-Speicher von 1MB hat, dann flashen mit:

esptool --port /dev/ttyUSB0 write_flash -fs 4MB -fm dout 0x00000 blank_1MB.bin
esptool --port /dev/ttyUSB0 write_flash -fs 4MB -fm dout 0x00000 ESP_Easy_mega_20211005_normal_ESP8266_1M.bin

Anschließend: ESP8266 neu starten. Dann WLAN-Verbindung herstellen über den Access Point "ESP_Easy_0" und Passwort "configesp": http://192.168.4.1/

Problemlösung:

Grund-Zustand: Mit 74.880 bit/s sollte eine Verbindung herzustellen sein:

Wenn man sich mal "verflashed" hat, hilft es, die Baudrate der Schnittstelle auf 74880 bps (es wurden auch Angaben zu 76800 bps gefunden) zu stellen.

Dies ist die Baudrate vom "first bootloader".

Offenbar gibt es Situationen, in denen sich das Programm zum flashen nicht mehr auf eine Baudrate mit dem ESP Baustein einigen kann.

Flash Modes

über die serielle Schnittstelle kann man bei ESPEasy eingeben:

Flash-Vorgang:

Am Einfachsten ist es, zum Flashen GPIO0 auf GND zu legen

Basics: Connecting and flashing the ESP8266 sagt:

when programming the WeMos D1 Mini via Arduino, you should select Tools Menu -> Reset Method -> nodemcu and then the esp8266 will be automatically reset by the IDE into programming mode for you, with no buttons needing to be pressed, and no pins needing to otherwise be pulled high or low. this is the easiest and best way to program it.

Daten in ESPEasy löschen:

Will man das Ganze in den Ursprungszustand versetzen (Reset) dann muss man sich mit einem seriellen Monitor verbinden und "blind" Reset (reset) eintippen. Man darf bei putty ctrl+m ctrl+j (CR LF) nicht vergessen. Man hat leider kein lokales echo. Es kann einen Moment dauern, bis der Vorgang mit FLASH: Erase Sector: ... quittiert wird.

Man kann "Factory Reset" auch per Hardware machen: Einfach RX und TX verbinden und neu starten.

Aufbau:

Deep Sleep funktioniert nur, wenn RST und D0 verbunden sind. Ist die Verbindung nicht da, dann funktioniert der Deep Sleep nicht.

Anleitung entlang der sehr hilfreichen Seite: https://hackmd.io/@joerglohrer/ESPEasy

Mehr zum Auslesen des Temperatursensors DS18B20: https://www.letscontrolit.com/wiki/index.php/Dallas_DS18b20

Anschließend: Kontrollmöglichkeit mittels Mini Dashboard

Die Datei "dashboard.esp" kann dann so aussehen:

<meta name="viewport" content="width=width=device-width, initial-scale=1">
<STYLE>
* {font-family:sans-serif; font-size:14pt;}
.button {margin:4px; padding:4px 16px; background-color:#07D; color:#FFF; text-decoration:none; border-radius:4px}
</STYLE>
<HTML>
<br><br>
<table>
<tr><td>Light<td><img src="Lamp[Switch#State].png">
<td><a class='button link' href="dashboard.esp?cmd=gpio,12,1">On</a>
<td><a class='button link' href="dashboard.esp?cmd=gpio,12,0">Off</a>
</HTML>


KategorieRaspberry

ESP8266 mit espeasy flashen (zuletzt geändert am 2021-12-17 17:06:53 durch HansStefanSuhle)