Leider ist es mir nicht gelungen, diese Firmware mit Thonny auf den ESP32-S3 hochzuladen. Deswegen habe ich schließlich auf das Programm esptool.exe zurückgegriffen, welches ich auch der Einfachheit halber ebenfalls im Anhang Tools.zip zur Verfügung stelle. Diese zip-Datei sollten Sie entpacken; den Pfad zu diesem Ordner sollten Sie sich merken; bei den folgenden Installationsanweisungen gehe ich davon aus, dass der Pfad zu diesen Dateien "D:\ESP32\Tools" lautet.
Für die Installation sind mehrere Schritte erforderlich:
1. Boot-Modus aktivieren und COM-Nummer ermitteln
Schließen Sie den T-QT an Ihren Rechner an und betätigen Sie dann bei gedrückter Taste T0 (IO0) den Reset-Taster. Anschließend öffnen Sie dann den Gerätemanager (Windows-Start-Button anklicken, dann "Gerätemanager" über die Tastatur eingeben und das angezeigte Programm öffnen). Es öffnet sich ein Fenster wie in Abb. 1. Hier finden Sie die COM-Nummer in der Rubrik "Anschlüsse (COM & LPT)". Diese COM-Nummer benötigen Sie für den nächsten Schritt.
2. DOS-Fenster öffnen und Installation vorbereiten
Jetzt öffnen sie das Fenster zur Eingabe-Aufforderung: Dazu klicken Sie auf den Windows-Start-Button und geben "cmd" ein. Es öffnet sich ein Fenster, in dem Sie die Eingabeaufforderung-App starten können. Nun öffnet sich ein sogenanntes DOS-Fenster. Hier werden wir so genannten DOS-Befehle benutzen. Diese werden jeweils bei dem blinkenden Cursor eingegeben. Beachten Sie dabei: Sie können eine eingegebene Zeile nicht wie gewohnt editieren. Solange Sie das Kommando noch nicht mit der Return-Taste abgeschlossen haben, können Sie aber mit der Backspace-Taste (<-) die letzten Zeichen löschen und dann neue Zeichen eingeben.
Vor dem Cursor wird jeweils der "aktuelle Pfad" angezeigt. In der Abbildung lautet er C:\Users\acer. Jetzt müssen wir den Ordner D:\ESP32\Tools zum aktuellen Pfad machen. Dazu geben wir zunächst direkt hinter dem Prompt C:\....> die Laufwerksbezeichnung D: ein und schließen Sie diese Eingabe mit der Enter-Taste ab. In der nächsten Zeile erscheint nun die Anzeige D:>; damit ist D: jetzt das "aktuelle" Laufwerk. Nun müssen wir noch zum passenden Unterordner gelangen. Dazu geben Sie jetzt (hinter D:>) das folgende Kommando ein: cd \ESP32\Tools (cd steht für change directory). Jetzt wird D:\ESP32\Tools als aktueller Ordner angezeigt. Zur Kontrolle lassen wir uns den Inhalt dieses Ordners mit dem Kommando dir anzeigen (vgl. Abb. 2).
3. Installation durchführen
Im Folgenden gehe ich von der COM-Nummer 7 aus; Sie müssen diese Nummer durch die im Abschnitt 1 ermittelte COM-Nummer ersetzen. Als erstes müssen wir die bestehende Firmware von Ihrem ESP32-S3 löschen. Dies geschieht mit dem Kommando
esptool --chip esp32s3 --port COM7 erase_flash
Sollte eine Fehlermeldung kommen, kontrollieren Sie Ihre Eingabe. Wenn sie fehlerhaft ist, müssen Sie das Kommando neu eingeben; sie können nicht ein bereits ausgeführtes Kommando editieren. War ihr Kommando korrekt gewesen, dann sollten sie es einfach noch einmal versuchen.
Wenn der Flash-Speicher erfolgreich gelöscht worden ist, können Sie mit dem folgenden Kommando
esptool --chip esp32s3 --port COM7 write_flash -z 0 generic_s3_st7789_firmware.bin
die Firmware in den Flash-Speicher des ESP32 laden. Nach der Installation ist im DOS-Fenster die Abb. 3 zu sehen. Sie können dieses Fenster nun schließen.
4. Kontrolle
Resetten Sie nun den T-QT und lassen Sie sich im Gerätemanager die COM-Nummer anzeigen. Seien Sie nicht überrascht, wenn diese jetzt anders lautet.
5. Ein erstes Micropython-Programm
Öffnen Sie nun Ihre Micropython-Entwicklungsumgebung und verbinden Sie sie über die Schnittstelle mit dem ESP32-S3; benutzen Sie dabei die neue COM-Nummer aus Abschnitt 4. Bei Thonny sieht man im Terminal-Bereich dann die Anzeige aus Abb. 4:
Vielleicht lassen Sie zum Testen mit Hilfe des Terminals 1 + 1 ausrechen. Hier noch ein kleines Test-Programm:
Code: Alles auswählen
# Test_T0_T1 für T-QT
# T0 (mit IO0 bezeichnet), T1 (mit KEY bezeichnet)
# Beide Taster besitzen einen externen PullUp-Widerstand auf dem T-QT-Board (vgl. http://www.forum.g-heinrichs.de/viewtopic.php?f=18&t=174)
from machine import Pin
from time import sleep
Ta0 = Pin(0, Pin.IN)
Ta1 = Pin(47, Pin.IN)
print('Hallo!')
while True:
print('Ta0: ', Ta0.value())
print('Ta1: ', Ta1.value())
sleep(0.5)
.