Openocd auf ESP32S3

OP #8091848
Lesenswert?

Hat es schon jemand geschafft, das Openocd-Programm (https://github.com/espressif/openocd-on-esp32) auf einen ESP32 zu flashen? Geeignet ist nur die ESP32S3-Variante mit zusätzlichem PSRAM. Das Github-Projekt habe ich heruntergeladen und die Submodule aktualisiert. Dann muss der im Readme beschriebene build-Vorgang ausgeführt werden. Folgende Versuche habe ich gemacht:

  1. Unter Win 11 die ESP-IDF Toolchain V6 heruntergeladen und installiert -> Ergebnis: Abbruch des build-Vorgangs, weil V6 die newlib nicht mehr kennt.
  2. Unter Win 11 die ESP-IDF Toolchain V5 heruntergeladen und installiert -> Ergebnis: Abbruch des build-Vorgangs, weil ein zwischenzeitlicher ./configure Befehl unter Windows nicht möglich ist.
  3. Unter Win 11, WSL (Linux, Ubuntu) die ESP-IDF Toolchain V5 heruntergeladen und installiert -> Ergebnis: Abbruch des build-Vorgangs, weil ein Submodul wohl nicht kompiliert werden konnte (siehe in Zeile 821, Anhang). Der./configure Befehl wurede hier nicht angemeckert. Es scheint irgendetwas mit der bemängelten Komponente jimtcl nicht zu stimmen. Diese Komponente wurde erst über den git-Befehl update hinzugefügt. Im originalen Github-Sourcecode taucht diese Komponente nicht auf. Wer weiß hier weiter? Harald
Angehängte Dateien:
#8091913
Lesenswert?

Harald P. schrieb:

Hat es schon jemand geschafft, das Openocd-Programm (https://github.com/espressif/openocd-on-esp32) auf einen ESP32 zu flashen?

Ja.

Wer weiß hier weiter?

Ich.
Nimm Linux, dann geht das.

1
Generated /home/xxx/Entwicklung/TMPFS/openocd-on-esp32/build/openocd-on-esp32.bin
2
[1679/1679] cd /home/xxx/Entwicklung/TMPFS/openocd-on-e...wicklung/TMPFS/openocd-on-esp32/build/openocd-on-esp32.bin
3
openocd-on-esp32.bin binary size 0x33c1c0 bytes. Smallest app partition is 0x500000 bytes. 0x1c3e40 bytes (35%) free.
4

5
Project build complete. To flash, run:
6
 idf.py flash
7
or
8
 idf.py -p PORT flash
9
or
10
 python -m esptool --chip esp32s3 -b 460800 --before default_reset --after hard_reset write_flash --flash_mode dio --flash_size 8MB --flash_freq 80m 0x0 build/bootloader/bootloader.bin 0x8000 build/partition_table/partition-table.bin 0x10000 build/openocd-on-esp32.bin 0x510000 build/storage.bin
11
or from the "/home/xxx/Entwicklung/TMPFS/openocd-on-esp32/build" directory
12
 python -m esptool --chip esp32s3 -b 460800 --before default_reset --after hard_reset write_flash "@flash_args"
#8092010
Lesenswert?

Larry L. schrieb:

Könntest Du bitte das openocd-on-esp32.bin hier mal hochladen? Danke , Larry

Ich kann gerne was kompilieren, aber es gibt einige Konfigurationsmöglichkeiten.
Daher musst Du schon sagen, welche Einstelleung Du brauchst.

1
CONFIG_OPENOCD_TARGET_ESP32=y
2
# CONFIG_OPENOCD_TARGET_ESP32S2 is not set
3
# CONFIG_OPENOCD_TARGET_ESP32S3 is not set
4
# CONFIG_OPENOCD_TARGET_ESP32C2 is not set
5
# CONFIG_OPENOCD_TARGET_ESP32C3 is not set
6
# CONFIG_OPENOCD_TARGET_ESP32H2 is not set
7
# CONFIG_OPENOCD_TARGET_ESP32C6 is not set
8
# CONFIG_OPENOCD_TARGET_OTHER is not set
9
CONFIG_OPENOCD_TARGET_CONFIG_FILE="esp32.cfg"
10
CONFIG_OPENOCD_IFACE_JTAG=y
11
# CONFIG_OPENOCD_IFACE_SWD is not set
12
CONFIG_OPENOCD_INTERFACE=0
13
CONFIG_OPENOCD_TARGET_FLASH_SIZE_AUTO=y
14
# CONFIG_OPENOCD_TARGET_FLASH_SIZE_CUSTOM is not set
15
CONFIG_OPENOCD_RTOS_FREERTOS=y
16
# CONFIG_OPENOCD_RTOS_NUTTX is not set
17
# CONFIG_OPENOCD_RTOS_ZEPHYR is not set
18
# CONFIG_OPENOCD_RTOS_HWTHREAD is not set
19
# CONFIG_OPENOCD_RTOS_THREADX is not set
20
# CONFIG_OPENOCD_RTOS_ECOS is not set
21
# CONFIG_OPENOCD_RTOS_LINUX is not set
22
# CONFIG_OPENOCD_RTOS_CHIBIOS is not set
23
# CONFIG_OPENOCD_RTOS_CHROMIUM is not set
24
# CONFIG_OPENOCD_RTOS_EMBKERNEL is not set
25
# CONFIG_OPENOCD_RTOS_MQX is not set
26
# CONFIG_OPENOCD_RTOS_UCOS is not set
27
# CONFIG_OPENOCD_RTOS_RTKERNEL is not set
28
# CONFIG_OPENOCD_RTOS_NONE is not set
29
CONFIG_OPENOCD_SMP_TARGET=y
30
CONFIG_OPENOCD_CUSTOM_COMMAND=""
31
CONFIG_OPENOCD_DEBUG_LEVEL=2
Angehängte Dateien:
OP #8092067
Lesenswert?

Hallo Richard, danke für die Rückmeldung, dass es unter Linux gehen müsste. Offensichtlich unterscheidet sich "reines" Linux von MS WSL. Ich werde es neu in einer virtuellen Maschine mit Ubuntu versuchen. Die Fehlermeldung bei der WSL Kompilierung lautete: No installed jimsh or tclsh, building local bootstrap jimsh0 No working C compiler found. Tried cc and gcc. Das Submodul jimtcl wird als Komponente gesondert behandelt. die Fehlermeldung stammt aus der Datei "autosetup-find-tclsh", die über Umwege ausgeführt wird. @Richard: Welches esp-idf-sdk benutzt du? Harald

#8092129
Lesenswert?

Harald P. schrieb:

Tom G. schrieb:

Du musst ein Paket nachinstallieren, laut recherche das "tcl" paket

Das ist die Lösung! Jetzt läuft der komplette build-Prozess durch.

Das ist oft so bei so Builds. Linux-Distris haben selten alles was man braucht bereits vorinstalliert weil vieles meistens nicht notwendig ist. Dafür ist die Paketverwaltung da dass man das dann problemlos nachziehen kann

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren