Boot loop auf ESP32 nur mit JTAG-Reset zu stoppen
|
27.01.2021, 15:49
Beitrag #9
|
|||
|
|||
[Gelöst]: Boot loop auf ESP32 nur mit JTAG-Reset zu stoppen
@amithlon: im ROM ist nur ein Bootloader-Stub, der dann den eigentlichen Bootloader aus dem Flash nachlädt.
Das Problem ist gelöst, wenn auch nicht ganz zufriedenstellend: Die JTAG-Leitung "TDI" hängt beim ESP32 an GPIO12. GPIO12 ist aber leider auch der Pin, über den beim Booten die Flash-Spannung (3,3 oder 1,8V) signalisiert wird. Bei meinem Board ist ein 1,8V-Flash verbaut, der Pegel, den der ESP-prog da anlegt, ist aber der für 3,3V - so kann der Flashspeicher nicht angesprochen werden. Sobald die TDI-Leitung abgezogen wird, bootet der ESP32 problemlos - leider geht dann das Debuggen erst wieder, nachdem man die Leitung wieder verbunden hat. Dadurch kann man aber nicht wirklich gut debuggen, weil man ja keine Breakpoints etc. setzen kann, bevor die Kiste losrennt. Ich suche also immer noch nach einer Methode, wie man dem ESP-prog sagen kann, welche Spannung der Flash auf dem angeschlossenen ESP32 braucht. |
|||
27.01.2021, 16:39
Beitrag #10
|
|||
|
|||
RE: Boot loop auf ESP32 nur mit JTAG-Reset zu stoppen
Hallo,
@miq19: Danke für den Hinweis, ich hatte mir das beim ESP32 da nicht näher angeschaut. Vielleicht findest Du hier einen Hinweis zu Deinem Problem:https://docs.espressif.com/projects/esp-...uirks.html Zumindest steht da was zur Flash-Spannung und OpenOCD drin. Gruß aus Berlin Michael |
|||
27.01.2021, 17:04
Beitrag #11
|
|||
|
|||
RE: Boot loop auf ESP32 nur mit JTAG-Reset zu stoppen
(27.01.2021 16:39)amithlon schrieb: Vielleicht findest Du hier einen Hinweis zu Deinem Problem:https://docs.espressif.com/projects/esp-...uirks.htmlJa, danke, das hatte ich schon gelesen. In meiner openOCD-Konfiguration steht auch ganz brav ESP32_FLASH_VOLTAGE=3.3 drin. Noch keine Ahnung, warum das nicht wirkt. |
|||
27.01.2021, 17:06
Beitrag #12
|
|||
|
|||
RE: Boot loop auf ESP32 nur mit JTAG-Reset zu stoppen
(27.01.2021 17:04)miq19 schrieb:Ist das nicht im Widerspruch zu dieser Aussage?(27.01.2021 16:39)amithlon schrieb: Vielleicht findest Du hier einen Hinweis zu Deinem Problem:https://docs.espressif.com/projects/esp-...uirks.htmlJa, danke, das hatte ich schon gelesen. In meiner openOCD-Konfiguration steht auch ganz brav ESP32_FLASH_VOLTAGE=3.3 drin. Noch keine Ahnung, warum das nicht wirkt. (27.01.2021 15:49)miq19 schrieb: Bei meinem Board ist ein 1,8V-Flash verbaut, der Pegel, den der ESP-prog da anlegt, ist aber der für 3,3V - so kann der Flashspeicher nicht angesprochen werden.Da müsstest Du doch 1.8 eintragen oder? Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
27.01.2021, 17:17
Beitrag #13
|
|||
|
|||
RE: Boot loop auf ESP32 nur mit JTAG-Reset zu stoppen
(27.01.2021 17:06)Tommy56 schrieb: Ist das nicht im Widerspruch zu dieser Aussage? Sorry, nein, das habe ich oben verdreht gehabt. Ist ein 3.3V-Flash. |
|||
28.01.2021, 13:11
Beitrag #14
|
|||
|
|||
RE: Boot loop auf ESP32 nur mit JTAG-Reset zu stoppen
Ich wurde im esp32.com-Forum auf espefuse.py hingewiesen, mit dem man die Flashspannung ein für allemal brennen kann. Ich scheue momentan noch davor zurück...
|
|||
|
|
Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste