Xspone.com

Micropython auf ESP8266

Micropython auf ESP8266

Veröffentlicht am 23.06.2019 in ,

Schon seit längerem verwende ich ESP8266 und ESP32 für einige meiner Projekte. Bis jetzt nutzte ich die Arduino IDE mit einigen Ausflügen zu PlatformIO und programmierte die Chips direkt in C.

Seit einiger Zeit spiele ich jedoch mit dem Gedanken auf Python bzw. auf Micropython umzusteigen, da das für das Prototyping doch einige große Vorteile hätte. Der größte Nachteil von Micropython ist die Geschwindigkeit, was bei meinen Projekten bislang aber keine so große Rolle spielte. Deshalb habe ich mir das Ganze etwas näher angesehen und Micropython auf einem ESP8266 installiert.

Download Micropython

Für den ESP8266 kann ein fertig kompiliertes Paket von der Micropython Webseite herunter geladen werden.

https://micropython.org/download#esp8266

Installation von Micropython

Nachdem ich die Firmware heruntergeladen hatte, musste sie noch auf den ESP8266 gespielt werden, wofür Python und esptools.py benötigt werden.

Ich verwende Ubuntu 18.10 mit Python3 solltest du Python2 verwenden einfach PIP3 durch PIP ersetzen. Das Programm esptools.py installierte ich mit der Option -H, damit es systemweit zur Verfügung steht.

sudo -H pip3 install esptool

Nachdem esptool installiert war, musste ich noch herausfinden an welchem Port der ESP8266 angesteckt war. Wenn kein weiterer USB -> RS232 Adapter verwendet wird ist dass /dev/ttyUSB0.

Um die heruntergeladene Firmware zu installieren muss erst der Flashspeicher des ESP gelöscht werden und anschliessend kann die Firmware geschrieben werden.

sudo esptool.py --port /dev/ttyUSB0 erase_flash
sudo esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash --flash_size=detect 0 esp8266-20190529-v1.11.bin

So, das war es auch schon nun sollte Micropython auf dem ESP8266 laufen. Jetzt musste ich dass Ganze nur noch testen, dafür kann ein einfaches Terminal Programm verwendet werden. Ich verwende dafür picocom das ich mit

sudo apt install picocom

installiert habe.

Nach der installation konnte ich mich dann einfach per

sudo picocom /dev/ttyUSB0 -b115200

mit dem ESP8266 verbinden und landete bei dem REPL promt von Micropython. Hier ist es bereits möglich Python Code auszuführen ohne überhaupt ein Programm zu schreiben. Hier ein kurzes Beispiel um die Onboard LED zu steuern, einfach der Reihe nach eingeben.

import machine
pin = machine.Pin(2,machine.Pin.OUT)
pin.on()
pin.off()

So, das war es für heute. Weitere Informationen findet ihr hier. https://docs.micropython.org/en/latest/esp8266/tutorial/index.html

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

searchhome