Library für den ESP32-C2 erstellen

Hallo,

ich weiß, dass der ESP32-C2 nicht ohne Nacharbeit von ArdionoIDE uinterstützt wird. Hier steht

ESP32-C2 is also supported by Arduino-ESP32 but requires using Arduino as an ESP-IDF component or rebuilding the static libraries. For more information, see the Arduino as an ESP-IDF component documentation or the Lib Builder documentation, respectively.

Hier habe ich ein Verständnisproblem. Wenn ich die Library neu baue habe ich ja weiterhin die gleiche Library wie vorher. Wenn ein Programm als Binary einen Fehler hat und ich es aus dem Code neu baue ist der Fehler ja weiterhin da. Ich müsste ja vor den Build etwas ändern damit danach der ESP32-C2 erkannt wird. Habe ich da etwas falsch verstanden?

Grüße
Thomas

Was ein Unsinn!

Eine Arduino Library ist ein händisch geschriebenes Stück Code.
Meist C++.
Du musst halt eine schreiben, die auf dem C2 das tut, was du willst.

Das steht dort aber nicht. Dort steht

ESP32-C2 is also supported by Arduino-ESP32 but requires using Arduino as an ESP-IDF component or rebuilding the static libraries.

Dort steht nichts von ich muss selbst etwas schreiben. Was muss ich da machen?

OK, dann habe ich das nur halb verstanden!

Aber es bleibt dabei:

Das ist trotzdem Unsinn!

Der Grund:

build.sh [-s] [-A arduino_branch] [-I idf_branch] [-i idf_commit] [-c path] [-t <target>] [-b <build|menuconfig|idf_libs|copy_bootloader|mem_variant>] [config ...]

Dort gibst du das Target an!
Und das ist eben dein C2.
Somit wird eben nicht der gleiche Lib Code erzeugt sondern ein auf das Target angepasster.

ESP32 Core installiert?

Der aktuelle ESP32 Core unterstützt nicht den C2.

Der neue Core wird sicherlich bald erscheinen.

Aktuell habe ich die 3.3.0 installiert. Ich bekomme eine update-info das update bricht aber ab. Muss nochmal schauen warum. Ist gesichtet, dass neuere Versionen den c2 drin haben?

Prognosen sind unglaublich schwierig!
Ins Besondere, wenn sie die Zukunft betreffen.

Nicht ganz. Es gibt verschiedene CPU Architekturen. Z.B. AMD64, ARM, RISC-V, Xtensa. Eine Library die für eine Architektur kompiliert wurde läuft halt nur auf dieser. D.h. andere Architektur -> neu kompilieren.

Dann kann man vor dem Kompilieren die Library auch konfigurieren. Features ein und ausschalten.

Was jetzt hier mit der ESP-IDF vorgeschlagen wird ist, das Arduino Framework als "Library" (Component) in das IDF einzubinden.

Gibt es einen besonderen Grund den ESP-C2 zu nehmen?

Ja. Er ist da und liegt nur herum.

Ich habe eine Anleitung bei Reddit gefunden, aktuell läuft der Build-Prozess. Mal sehen ob das dann geht.

Ich hoffe du berichtest von dem Ergebnis.

Vorgang wurde nach ca. 2 Stunden mit irgendeinem Python-Fehler abgebrochen. Mal sehen ob ich das später nochmal teste. Ich musste weg und hab den Rechner beendet.

Hast dich mall mit ESP8684 beschäftigt? ist ja das gleiche.

Is ESP32 C2 supported by Arduino?.._gaMTExMTc4NjA2LjE3NTgyOTIxMTU._ga_NEXN8H46L5czE3NTgyOTIxMTMkbzEkZzAkdDE3NTgyOTIxMTMkajYwJGwwJGgyMDQwNjI4NTY1