Einen ESP8266 auf OS X mittels Python beschreiben / flashen
Je nach ESP8266 muss im Vorfeld das ESP8266 Modul durch die jeweiligen Hardware Einstellungen in den Flash Modus versetzt werden.
Entsprechende Anleitungen zum Anschliessen eines ESP8266 finden sich in unseren Datenblättern hier wie folgt:
Bis auf den ESP-01 funktionieren sämtliche ESP8266 Module nach dem gleichen Anschlussschema (auch ESP-201, ESP12,…).
Hinweis: Es wird häufig der Einsatz von 10KΩ Widerständen empfohlen, allerdings sind diese Werte bei manchen Modulen zu hoch. Aus Erfahrung sollten Widerstandswerte bis max. 4KΩ verwendet werden. Beim ESP-07 und bei dem neuen ESP-07S sowie dem ESP-12FS sollten 3,2 KΩ nicht überschritten werden.
Das NodeMCU Developmentboard Version 3 sowie das Anfänger Modul verfügen über eine Flash Taste die zum Beschreiben gedrückt werden muss. Nachdem der ESP8266 entsprechend vorbereitet und angeschlossen ist kann das Flashen beginnen.
Unter OS X mittels Python ESPTool und Terminal einen ESP8266 beschreiben
Vor dem Beschreiben eines ESP8266 wird zunächst die entsprechende Firmware benötigt. Die Firmware kann man sich kann man sich online mittels dem komfortablen Build Service erstellen oder aber NodeMCU Standard Firmware (1420 Downloads ) .
Die nodemcu-master???.bin wiederum der Einfachheit wegen, wieder in den zuvor erstellten Ordner esptool verschieben.
Nun sind alle Vorbereitungen zum Flashen eines ESP8266 abgeschlossen und das jeweilige ESP8266 Modul kann nun wie folgt beschrieben werden.
1.Den Terminal, zu finden unter Launchpad→Andere→Terminal starten.
2.Im Terminal durch die Eingabe
cd esptool
gefolgt von ↵ (enter) in den Ordner esptool wechseln. Nach erfolgtem Wechsel gibt der Terminal folgende Ausgabe zurück
Mac-Name:esptool Benutzername$
3.Falls der USB TTL Konverter noch nicht angesteckt ist muss dieser im Vorfeld der nächsten Terminal Eingabe eingesteckt werden. Durch die Eingabe
ls /dev/tty.*
werden nun die aktiven USB Schnittstellen angezeigt, beispielsweise
/dev/tty.Bluetooth-Incoming-Port /dev/tty.wchusbserialfd3110
Typischerweise ist der USB TTL Konverter durch /dev/tty.???serial??? gekennzeichnet
4.Um nun den ESP8266 zu beschreiben muss der ESP8266
mit Spannung versorgt sein
sich im Flash Modus befinden GPIO0 ist mit GND über einen Widerstand verbunden, bzw. beim NodeMCU Board bzw. Anfänger Modul die Flash Taste 1 mal gedrückt werden
über die UART Schnittstelle mit RX und TX über kreuz verbunden sein (RX vom USB TTL Konverter auf TX Pin des ESP8266 und TX vom USB TTL Konverter auf den RX Pin des ESP8266
Durch die Eingabe der folgenden Zeile, allerdings muss
die Schnittstelle des USB TTL Konverters entsprechend geändert werden
auf die jeweilige nodemcu-master.bin Datei verwiesen werden
python esptool.py --port /dev/tty.wchusbserialfd3110 -b 115200 write_flash 0x00000 nodemcu-master.bin
durch ↵ (enter) wird dann das Flashen des ESP8266 ausgelöst. Zunächst erscheint der Aufruf der esptool.py Datei
esptool.py v1.2-dev
Die Verbindung zum ESP8266 wird aufgebaut
Connecting...
Die jeweiligen Flash Parameter werden zurückgegeben
Running Cesanta flasher stub... Flash params set to 0x0000
Es erscheint die fortlaufende Anzeige des Flashvorgangs
Writing 405504 @ 0x0... 129760 (32 %)
Wurde das Beschreiben des ESP8266 erfolgreich abgeschlossen erscheint die Statusmeldung beispielsweise wie folgt
Wrote 405504 bytes at 0x0 in 35.2 seconds (92.2 kbit/s)...
Schlussendlich wir die Verbindung zum ESP8266 wieder unterbrochen
Leaving...
Der ESP8266 wurde erfolgreich beschrieben und wäre nun durch ein Reset einsatzbereit. Bevor man jedoch zum UART / seriellen Betrieb eines ESP8266 Modul übergeht sollte man sich die grundlegende Funktionsweise des ESPTool hier im Detail betrachten.