ESP8266 flashen

Das Modul lässt sich für verschiedene Zwecke einsetzen, sodass mitunter ein Austausch der Firmware fällig ist. Mit den richtigen Tools ist das schnell erledigt.

In Pocket speichern vorlesen Druckansicht 2 Kommentare lesen
Lesezeit: 4 Min.
Von
  • Markus Ulsaß

Sollte auf dem Modul keine Firmware oder nicht die AT-Firmware vorhanden sein, so muss diese zunächst auf das ESP-Modul geflasht werden. Dazu braucht man zunächst eine AT-Firmware (Binär-Datei), die man unter espressif.com/new-sdk-release/ bekommt. In unserer Anleitung haben wir die etwas ältere, jedoch erprobte SDK 1.0.0 verwendet. Der direkte Download zur Version startet mit dem Klick auf den Link bbs.espressif.com/download/file.php?id=250.

Die SDK muss man in einen Ordner entpacken. In dem Unterverzeichnis „\bin“ bzw. „\bin\at“ benötigt man dann folgende Dateien: \bin\boot_v1.2+.bin, \bin\at\user1.512.new.bin und
\bin\blank.bin. Wie bekommt man diese Dateien (und auch andere Firmware) nun auf das ESP-Modul geflasht? Dazu gibt es das Tool NodeMCU-Flasher, das es bislang leider nur für Windows gibt. Erste Versuche mit Wine unter Linux waren allerdings vielversprechend, wobei des Umbiegen der serielle Schnittstelle notwendig ist. Den „Flasher“ bekommt man hier: github.com/nodemcu/nodemcu-flasher.

Einstellungen für das Flashen der AT-Firmware


Zum Programmieren muss man das Modul wieder in den Flashmodus versetzen (siehe Tabelle im Make-Artikel) und mit dem USB-Seriell Adapter verbinden. Im Reiter „Config“ der Flasher-Software muss es mit der von der Espressif ausgewählten AT-Firmware etwa so aussehen (die Kästchen müssen angeklickt sein, so dass ein Kreuz erscheint, die Adressen in blau unterlegt müssen den Dateien entsprechen):

Mit den kleinen Zahnrädern neben den Dateinamen lässt sich das Verzeichnis, in dem sich die Binärdateien befinden, leicht auswählen. Danach geht man auf den Reiter „Operation“, wählt den entsprechenden COM-Port aus und startet mit „Flash“. Kurz danach erscheint der QR-Code und die MAC-Adressen und der Flash-Vorgang beginnt. Sollte nach einer kurzen Wartezeit nichts passieren, so ist mit ziemlicher Sicherheit nicht der Flash-Modus des Moduls aktiviert.

Nach dem erfolgreichen Flashen führt man einen Reset des ESP-Moduls durch (RST-Pin gegen GND oder Stromversorgung kurz trennen). Dann kann man mit dem Tool „Esplorer“ überprüfen, ob und welche AT-Software jetzt auf dem Modul ist. Die Baudrate für die Espressif-AT-Firmware ist in der Regel 115200.

Für Linux/Mac OS kann man sich zum Flasen alternativ auch das Python-Tool „esptool“ herunterladen: github.com/themadinventor/esptool/. Neben dem Python-Interpreter muss das Modul PySerial installiert sein. Das Kommando zum Flashen analog zur Windows-Vorgehensweise sieht dann so aus (die serielle Schnittstelle muss entsprechend angepasst werden):

Flashen der Firmware unter Linux/ Mac OS mit „esptool.py“


Auch hier gilt wieder der Tipp: Klappt das Flashen nicht, ist sehr wahrscheinlich der Programmiermodus des ESP-Moduls nicht aktiviert.

Das Modul ESP-07 wurde mit einem selbst entwickelten Steckbrett-Adapter bei einem ESP8266 Einführungs-Workshop im Hamburger Makerspace Attraktor von mehr als 20 Teilnehmern unter verschiedenen Betriebssystemen und Geräten ausgiebig getestet.

Probleme traten meistens auf, wenn das Modul nicht in den richtigen Modus versetzt wurde (Anwendungsmodus/ Programmiermodus). Oft half auch ein Reset oder ein Abziehen vom USB-Port.
Terminal-Programme reagieren sehr unterschiedlich auf eine Verbindung mit den ESP-Modulen, da bei früheren Firmware-Versionen eine Abfolge aus „CR“ (Carriage-Return) und LF („Line Feed“) notwendig war, um mit dem Modul ohne Probleme zu kommunizieren. Die „Esplorer“-Software ist bereits auf das Modul abgestimmt. Wenn hier etwas mal nicht klappt, kann es an der Baudrate liegen (meistens 9600/ 115200).(dab) (dab)