ESP-8266¶
MicroPython-Firmware flashen¶
Vorausetzungen¶
- Installierte Pakete:
python3 python3-pip - Installierte Python-Pakete:
esptool - MicroPython-Firmware: http://www.micropython.org/download#esp8266
MicroPython flashen¶
- Herausfinden an welches Character-Device der ESP angeschlossen wurde
dmesg, höchstwahrscheinlich/dev/ttyUSB0
- ESP Flash löschen:
esptool.py --port /dev/ttyUSB0 erase_flash
- Firmware flashen:
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash --flash_size=detect -fm=dio 0 esp8266-firmware.bin
- Fertig. Wenn das ESP noch lebt existiert nun eine
µPython-Umgebung im Flash.
Info
Der ausführende User muss entweder Mitglied in der Gruppe dialout (Debian), uucp (Arch) oder root sein.
MicroPython verwenden¶
Über die serielle Konsole¶
Die µPython-Umgebung ist über den UART erreichbar. Dafür können Tools wie minicom oder screen verwendet werden:
- Baud-Rate:
115200 - Parity:
8N1 - HW-FC:
Yes - SW-FC:
No
>>> print("Das ist microPython")
Das ist microPython
>>> import sys
>>> print (sys.version_info)
(3, 4, 0)
Arbeit mit µPython¶
Die µPython-IDE uPyCraft ist ein Usability-Albtraum. Ein besserer meiner Meinung nach besserer Workflow ist folgender:
.py-File lokal bearbeiten (vi, etc...)- Kopieren der Datei über das Tool
rshell:
$ rshell -p /dev/ttyUSB0 -b 115200
Using buffer-size of 32
Connecting to /dev/ttyUSB0 (buffer-size 32)...
Trying to connect to REPL connected
Testing if ubinascii.unhexlify exists ... Y
Retrieving root directories ... /boot.py/ /webrepl_cfg.py/ /main.py/
Setting time ... Apr 07, 2019 14:41:47
Evaluating board_name ... pyboard
Retrieving time epoch ... Jan 01, 2000
Welcome to rshell. Use Control-D (or the exit command) to exit rshell.
/home/nwinnwa/Desktop/MicroPython> cp dht.py /main.py/
/home/nwinnwa/Desktop/MicroPython>
- Neustart des ESPs: CTRL+D über die serielle Konsole (
minicom, etc)
Tip
rshell benötigt natürlich Zugriff auf die serielle Schnitstelle. minicom (Oder ähnliches) vorher schließen.