Einrichten der Arduino IDE und Einbindung der ESPs sowie die Einrichtung von Thonny unter macOS
An Apple a day keeps Windows away :-)
Teil 3 – Thonny einrichten
1. Eine kurze Vorbemerkung
Die Programmiersprache Python ist in letzter Zeit sehr beliebt geworden, da sie doch die Sprache ist, mit der üblicherweise der Raspberry Pi programmiert wird. Python ist eine interpretierte Sprache, deren Programme zur Laufzeit von einem für die jeweilige Hardware angepassten Programm, dem Interpreter, Zeile für Zeile übersetzt und ausgeführt werden. Im Gegensatz zu C++, bei dem der Quelltext komplett übersetzt und dann der Maschinencode ausgeführt wird.
Für den ESP8266 und ESP32 wurde eine spezielle Variante von Python geschaffen, MicroPython, eine abgespeckte Version, die speziell an diese Mikrocontroller angepasst wurde. Wer sich für die Hintergründe von Python interessiert wird hier fündig: https://de.wikipedia.org/wiki/Python_(Programmiersprache). Wer erste Schritte in MicroPython machen möchte, sei auf die Blog-Reihe mit sechs Teilen von Jürgen Grzesina hingewiesen.
Das »Institute of Computer Science« der »University of Tartu« in Estland stellt eine kostenlose IDE für die Sprache Python zur Verfügung. Diese IDE wollen wir im Folgenden installieren und in Betrieb nehmen.
2. Installation von Thonny
Wir gehen auf die Site: https://thonny.org
und laden die macOS Version. Das gute Stück landet im Download-Ordner, wo mit einem Doppelklick die Installation startet.
Wir geben dem Installer die benötigten Zugriffsrechte und nach kurzer Zeit ist Thonny installiert. Natürlich müssen wir Thonny sofort starten, werden dabei nach der Spracheinstellung gefragt:
Wir stellen »Deutsch« ein, klicken auf »Let’s go!« und Thonny zeigt sich in voller Schönheit.
Der Eintrag »Python 3.7.9 (bundled)« zeigt an, dass wir mit dem eingebauten Python arbeiten. Das ist genau das, was wir zu Beginn wollen.
3. Das erste Programm mit Python
Wie üblich, werden wir als erstes Programm das »Hallo Welt« Programm erstellen. Dazu schreiben wir in den oberen Teil des Fensters die Zeile: print ("Hallo Python-Welt")
mit einem abschließenden <Return>.
Natürlich wollen wir sehen, ob das Programm funktioniert, dazu klicken wir auf das Dreieck im grünen Kreis. Das Programm ist noch nicht gesichert, wir werden nach Speicherort und Namen gefragt (Dateiendung ist ».py«) und nach der Speicherung sehen wir im Feld »Kommandozeile«, dass das Programm ausgeführt wurde.
4. Das erste MicroPython Programm mit einem ESP32
Um ein Board mit MicroPython zu programmieren, muss der Interpreter erst auf das Board geflasht werden.
Wir gehen auf die Webseite von MicroPython: https://micropython.org
Und dort auf »Downloads«.
Runterscrollen bis zu dem »Generic ESP32 module« und klicken auf das Bild.
Nun wählen wir den File »esp32-idf4-20210202-v1.14.bin« als Download.
Nachdem wir das ESP32 Board an unseren Mac - oder PC ;-) - angestöpselt haben starten wir wieder Thonny.
Diese Schritte benötigen wir, um das MicroPython auf das Board zu flashen:
a) Thonny startenb) Aufruf der »Preferences«, dort der Reiter »Interpreter«
c) Hier klicken wir auf »Installieren oder aktualisieren Sie die Firmware«.
d) Im folgenden Dialog stellen wir ein:
- Den Port, an den das Board angeschlossen ist
- Mit dem »Browse...«-Button suchen wir den zuvor geladenen File.
- »Erase flash before installing« kreuzen wir an
- Mit »Installieren« wird Micropython auf das Board geschrieben.
Aufruf der »Preferences«, dort der Reiter »Interpreter«:
f) Einstellen des Interpreters »MicroPython (ESP32)« und des Ports, an das Board angeschlossen ist, dann mit »OK« das Fenster schließen.
Es soll wieder die eingebaute LED des Boards zum Blinken gebracht werden.
Dazu benötigen wir folgenden Programmcode:
from time import sleep
from machine import Pin
led = Pin(2, Pin.OUT)
while True:
led.value(1)
sleep(0.2)
led.value(0)
sleep(0.2)
Dieser Code muss nun mit Thonnys Hilfe auf das Board gebracht werden. Das Thonny-Fenster ist zunächst noch leer. Ein Klick auf des Blattsymbol (oder Menü »Datei à Neu (z-N)) erzeugt einen neuen File »<untitled>«.
Hier geben wir den Programmcode ein:
Der Quellcode muss nun auf das Board geschrieben werden. Dazu klicken wir auf das blaue Diskettensymbol oben, drittes Zeichen von links (oder Menü »Datei -> Speichern unter...).
Wir werden gefragt, wo wir den File speichern wollen, natürlich auf dem Board!
Nach dem Klick auf die Schaltfläche »MicroPython device« werden wir nach dem Namen des zu speichernden Files gefragt:
Jetzt kommt der große Augenblick: das Programm soll ausgeführt werden:
Dazu klicken wir auf das weiße Dreieck im grünen Kreis. Wenn alles richtig gemacht wurde, sollte jetzt die LED auf dem Board blinken.
Geschafft!
5. Ergänzende Hinweise
- Der Pin, mit dem die interne LED verbunden ist, hängt vom Board ab. Bei meinem HELTEC Board ist dies z.B. die Nummer 25.
- Das Programm wird angehalten, indem man auf den roten STOPP-Button klickt.
- Thonny verschluckt sich öfter. Dann hilft oft der STOPP-Klick. Wenn dann unten im Fenster »Kommandozeile « die Meldung » MicroPython v1.14 on 2021-02-02; ESP32 module with ESP32
Type "help()" for more information.« erscheint, ist das Board wieder einsatzbereit. - Ich hatte einmal den Fall, dass das »Blink«-Programm nicht mehr zu stoppen war, auch nach An- und Anstecken lief das Programm weiter und das Board war nicht mehr ansprechbar. Es half nur das manuelle in den Flashmodus schicken:
Mit einem Kabel den Pin 00 mit dem Pin GND verbinden, dann den Reset-Knopf drücken und das Kabel entfernen. Jetzt mit Thonny das Board erneut flashen wie oben beschrieben. - Wenn man sehen will, welche Files auf dem ESP32 sind, klickt man auf das »Öffnen«-Symbol (zweites von links oben). In dem sich nun öffnenden Dialog kann man auch Dateien löschen: Rechtsklick auf einen Eintrag und Auswahl der gewünschten Option.
1 comment
Rainer T
Sehr schöne Zusammenfassung!
V.a. die Möglichkeit, Files direkt aufs device zu schreiben und sie anzuzeigen, ist ein Feature, das gerne ausgelassen wird.
Gruß
RT