Hier erfährst du, was MicroPython ist, welche Vorteile dir diese Programmiersprache bietet und wie du sie auf deinem ESP8266* oder ESP32* installierst.
Was ist MicroPython?
MicroPython ist angelehnt an und kompatibel zu Python 3 und speziell für die Programmierung von Microcontrollern ausgelegt. Die Sprache ist dem regulären Python sehr ähnlich – das heißt, wenn du bereits mit Python programmieren kannst, kannst du das auch mit MicroPython.
Da diese Sprache darauf ausgelegt ist, unter eingeschränkten Bedingungen – nämlich auf Microcontrollern mit wenig Speicherplatz – zu arbeiten, besitzt MicroPython nicht alle Bibliotheken von Python. Die für die Programmierung von ESP8266 und ESP32 sind natürlich an Bord – insbesondere jene, die du brauchst, um mit den Pins zu arbeiten und dich mit dem Internet zu verbinden.
Welche Vorteile bietet MicroPython?
Python ist eine Programmiersprache, die sowohl leicht zu lernen als auch leicht zu lesen ist. Das gilt auch für MicroPython – wenn du etwas Python beherrschst und schon auf “richtigen” Computern programmiert hast, fällt dir der Einstieg mit MicroPython leicht. Hier findest du einen Überblick über wichtige Funktion von MicroPython (Englisch).
Weitere Vorteile sind:
- Du kannst deinen Microcontroller “live” programmieren. D.h. über die Shell (bzw. REPL) kannst du deinen Code direkt testen, ohne erst einen ganzen Sketch hochladen zu müssen.
- Exception und Error-Handling: Du kannst den Umgang mit Ausnahmen und Fehler bereits in deinem Code definieren.
Aber MicroPython hat auch Nachteile im Vergleich zur Arduino IDE und C, denn hier gibt es für viele Bauteile bereits Bibliotheken, die du einfach installieren, einbinden und verwenden kannst. Mit MicroPython wirst du ab und an etwas länger nach einer geeigneten Lösung suchen müssen.
MicroPython installieren mit der Thonny IDE
Um mit MicroPython auf deinem ESP8266* oder ESP32* loslegen zu können, musst du deinen Microcontroller mit einer passenden Firmware flashen. Hierfür gibt es mehrere Möglichkeiten. Eine recht einfache ist der Editor Thonny IDE. Das Tolle: Thonny ist für Anfänger bestens geeignet und du kannst auch gleich deinen Microcontroller damit programmieren.
Lade dir zunächst die neueste Version von Thonny hier herunter und starte die Installation.
Die Firmware herunterladen
Als nächstes benötigst du die aktuelle Firmware. Diese findest du hier auf der offiziellen Seite von MicroPython. Wähle den entsprechenden Abschnitt für deinen Controller und lade dir die aktuelleste (latest) Version herunter, indem du auf den Dateinamen mit der Endung .bin klickst. Mit dieser Datei flashst du gleich deinen Microcontroller.
Schließe nun deinen Microcontroller wie gewohnt über USB an deinen Computer an. Nun öffne die Thonny IDE.
Klicke als Erstes Menü Run auf Configure interpreter. Dort findest du im Dropdown-Menü mehrere Optionen – auch jeweils eine für den ESP8266 und den ESP32. Wenn du die passende Option gewählt hast, kannst du unter Port or WebREPL den USB-Port wählen, an dem dein Microcontroller angeschlossen ist.
Klicke nun auf den Link unten rechts Install or update MicroPython.
Wähle unter Port noch einmal den richtigen USB-Port aus und wähle unter Firmware die Datei, die du gerade heruntergeladen hast.
Mit einem Klick auf Install geht es los! Auf deinem Microcontroller wird MicroPython installiert. Nach wenigen Sekunden sollte das erledigt sein und du kannst die drei Fenster wieder schließen, bis du wieder auf der Oberfläche der Thonny IDE bist.
So funktioniert MicroPython und die Thonny IDE
Die Oberfläche der Thonny IDE besteht (neben dem Menü) aus zwei Fenstern. Im oberen schreibst du dein Python-Programm, dass über den grünen “Play”-Button auf deinen ESP8266 oder ESP32 hochlädst.
Im unteren Fenster findest du die Shell, mit der quasi in Echtzeit mit deinem Microcontroller interagieren kannst.
Wenn du einen ESP8266 angeschlossen hast, trage hinter die drei >>> in der Shell probeweise – Zeile für Zeile – folgenden Code ein und drücke nach jeder Zeile Enter:
from machine import Pin
Pin(2, Pin.OUT).value(0)
Nun sollte die interne LED auf deinem Controller leuchten. Wenn du in die Klammern hinter value eine 1 einträgst, geht sie wieder aus. Seltsamerweise verhält sich dieser Code beim ESP8266 “falsch herum” – eine 1 schaltet den Pin auf HIGH, eine 0 auf LOW. Beim ESP32 ist das wiederum wie gewohnt.
Wie geht es weiter?
Jetzt hast du das grundlegende Setup, um deinen Microcontroller mit MicroPython zu programmieren. Erforsche als nächstes, was du hiermit alles anstellen kannst! 🙂
Hier findest du ESP8266 Projekte, die du nachbauen oder von denen du dich inspirieren lassen kannst.
Wenn MicroPython doch nicht das Richtige für dich ist, lerne hier CircuitPython kennen.