ESP-IDF ist das Entwicklungsframework für Espressif-SoCs, das unter Windows, Linux und macOS unterstützt wird.
Die folgende Tabelle zeigt die ESP-IDF-Unterstützung von Espressif-SoCs, wobei und den Vorschaustatus bzw. die Unterstützung kennzeichnen. Der Preview-Support ist in der Regel zeitlich begrenzt und für Beta-Versionen von Chips gedacht. Bitte verwenden Sie eine ESP-IDF-Version, bei der der gewünschte SoC bereits unterstützt wird.
Chip | v5.0 | v5.1 | v5.2 | v5.3 | v5.4 | |
---|---|---|---|---|---|---|
ESP32 | ||||||
ESP32-S2 | ||||||
ESP32-C3 | ||||||
ESP32-S3 | Bekanntmachung | |||||
ESP32-C2 | Bekanntmachung | |||||
ESP32-C6 | Bekanntmachung | |||||
ESP32-H2 | Bekanntmachung | |||||
ESP32-P4 | Bekanntmachung | |||||
ESP32-C5 | Bekanntmachung | |||||
ESP32-C61 | Bekanntmachung |
Es gibt Revisionsvarianten für eine Reihe von Chips. Einzelheiten zur Kompatibilität zwischen ESP-IDF und Chip-Revisionen finden Sie unter Kompatibilität zwischen ESP-IDF-Versionen und Revisionen von Espressif-SoCs.
Espressif-SoCs, die vor 2016 veröffentlicht wurden (ESP8266 und ESP8285), werden stattdessen vom RTOS SDK unterstützt.
Unter https://idf.espressif.com/ finden Sie Links zu detaillierten Anweisungen zum Einrichten des ESP-IDF je nach verwendetem Chip.
Hinweis: Für jede SoC-Serie und jede ESP-IDF-Version gibt es eine eigene Dokumentation. Im Abschnitt „Versionen“ erfahren Sie, wie Sie Dokumentation finden und bestimmte Versionen von ESP-IDF auschecken.
ESP-IDF verwendet relative Standorte als Submodul-URLs (.gitmodules). Sie verlinken also auf GitHub. Wenn ESP-IDF in ein Git-Repository geforkt wird, das sich nicht auf GitHub befindet, müssen Sie nach dem Klonen von Git das Skript tools/set-submodules-to-github.sh ausführen.
Das Skript legt absolute URLs für alle Submodule fest, sodass git submodule update --init --recursive
abgeschlossen werden kann. Wenn Sie ESP-IDF von GitHub klonen, ist dieser Schritt nicht erforderlich.
Neben dem in „Erste Schritte“ erwähnten esp-idf-template-Projekt enthält ESP-IDF einige Beispielprojekte im Beispielverzeichnis.
Sobald Sie das Projekt gefunden haben, mit dem Sie arbeiten möchten, wechseln Sie in dessen Verzeichnis und können es konfigurieren und erstellen.
Um Ihr eigenes Projekt basierend auf einem Beispiel zu starten, kopieren Sie das Beispielprojektverzeichnis außerhalb des ESP-IDF-Verzeichnisses.
Eine ausführliche Einrichtungsanleitung finden Sie oben unter den Links zur „Erste Schritte“-Anleitung. Dies ist eine Kurzreferenz für häufig verwendete Befehle bei der Arbeit mit ESP-IDF-Projekten:
(Eine vollständige Liste der erforderlichen Schritte mit weiteren Details finden Sie im oben aufgeführten Leitfaden „Erste Schritte“.)
install.bat
oder install.ps1
für Windows und install.sh
oder install.fish
für Unix-Shells.export.bat
) aus oder geben Sie es unter Unix ( source export.sh
) in jeder Shell-Umgebung ein, bevor Sie ESP-IDF verwenden. idf.py set-target
setzt das Ziel des Projekts auf
. Führen Sie idf.py set-target
ohne Argumente aus, um eine Liste der unterstützten Ziele anzuzeigen.idf.py menuconfig
öffnet ein textbasiertes Konfigurationsmenü, in dem Sie das Projekt konfigurieren können. idf.py build
... kompiliert App und Bootloader und generiert eine Partitionstabelle basierend auf der Konfiguration.
Wenn der Build abgeschlossen ist, wird eine Befehlszeile gedruckt, um esptool.py zum Flashen des Chips zu verwenden. Sie können dies jedoch auch automatisch tun, indem Sie Folgendes ausführen:
idf.py -p PORT flash
Ersetzen Sie PORT durch den Namen Ihres seriellen Ports (z. B. COM3
unter Windows, /dev/ttyUSB0
unter Linux oder /dev/cu.usbserial-X
unter MacOS). Wenn die Option -p
weggelassen wird, versucht idf.py flash
dies Flashen Sie den ersten verfügbaren seriellen Port.
Dadurch wird das gesamte Projekt (App, Bootloader und Partitionstabelle) auf einen neuen Chip geflasht. Die Einstellungen für das Flashen der seriellen Schnittstelle können mit idf.py menuconfig
konfiguriert werden.
Sie müssen idf.py build
nicht ausführen, bevor Sie idf.py flash
ausführen. idf.py flash
erstellt automatisch alles neu, was es benötigt.
Das idf.py monitor
verwendet das Tool esp-idf-monitor, um die serielle Ausgabe von Espressif-SoCs anzuzeigen. esp-idf-monitor verfügt außerdem über eine Reihe von Funktionen zum Dekodieren der Absturzausgabe und zur Interaktion mit dem Gerät. Weitere Informationen finden Sie auf der Dokumentationsseite.
Verlassen Sie den Monitor, indem Sie Strg-] eingeben.
Um die Ausgabe in einem Durchgang zu erstellen, zu flashen und zu überwachen, können Sie Folgendes ausführen:
idf.py flash monitor
Nach dem ersten Flash möchten Sie möglicherweise nur Ihre App erstellen und flashen, nicht den Bootloader und die Partitionstabelle:
idf.py app
– Erstellen Sie nur die App.idf.py app-flash
– nur die App flashen. idf.py app-flash
erstellt die App automatisch neu, wenn sich Quelldateien geändert haben.
(Bei der normalen Entwicklung besteht kein Nachteil darin, den Bootloader und die Partitionstabelle jedes Mal neu zu flashen, sofern sie sich nicht geändert haben.)
Das idf.py flash
löscht nicht den gesamten Flash-Inhalt. Allerdings ist es manchmal sinnvoll, das Gerät in einen vollständig gelöschten Zustand zurückzusetzen, insbesondere wenn Sie Änderungen an der Partitionstabelle oder OTA-App-Updates vornehmen. Um den gesamten Flash zu löschen, führen Sie idf.py erase-flash
aus.
Dies kann mit anderen Zielen kombiniert werden, z. B. idf.py -p PORT erase-flash flash
löscht alles und flasht dann die neue App, den Bootloader und die Partitionstabelle erneut.
Dokumentation für die neueste Version: https://docs.espressif.com/projects/esp-idf/. Diese Dokumentation wird aus dem docs-Verzeichnis dieses Repositorys erstellt.
Anfängerleitfaden zu Schlüsselkonzepten und Ressourcen von ESP-IDF
Das esp32.com-Forum ist ein Ort, an dem Sie Fragen stellen und Community-Ressourcen finden können.
Schauen Sie im Abschnitt „Probleme“ auf Github nach, wenn Sie einen Fehler finden oder eine Funktionsanfrage haben. Bitte überprüfen Sie bestehende Probleme, bevor Sie ein neues öffnen.
Wenn Sie daran interessiert sind, einen Beitrag zu ESP-IDF zu leisten, lesen Sie bitte den Beitragsleitfaden.