Andreas_Mainz Geschrieben June 16, 2022 at 20:45 Geschrieben June 16, 2022 at 20:45 Ich wollte mal nachfragen, wie man einen Backtrace unter VSC analysieren kann. Einen "ESP32 exception decoder" kenne ich bisher nur von der Arduino Umgebung.. Außerdem wollte ich fragen, wie man den ESP32 unter VSC debuggen kann, gibt es da eine Anleitung? Vielen Dank für Hinweise Grüße Andreas Zitieren
rtrbt Geschrieben June 20, 2022 at 07:24 Geschrieben June 20, 2022 at 07:24 On 6/16/2022 at 10:45 PM, Andreas_Mainz said: Ich wollte mal nachfragen, wie man einen Backtrace unter VSC analysieren kann. Einen "ESP32 exception decoder" kenne ich bisher nur von der Arduino Umgebung.. Was der Exception Decoder eigentlich nur tut ist addr2line auszuführen. Ich habe mir dafür ein Python-Script (esp32-firmware/software/decode) geschrieben, dass das selbe auf der Kommandozeile tut. Benutzen kannst du das indem du den Backtrace kopierst und dann im software-Ordner ./decode [dein backtrace] ausführst, also z.B. ./decode 0x4000c341:0x3ffc9ce00x40161c6e:0x3ffc9cf0 0x4011123a:0x3ffc9d50 0x400e891c:0x3ffc9de0 0x4012daa6:0x3ffca470 Das Script läuft standardmäßig gegen die aktuellste Firmware im build-Verzeichnis, du kannst aber mit -f [pfad/zur/elfdatei.elf] mit einer spezifischen Firmware decoden. Das hat noch eine Kurzschreibweise: z.B. -f warp2 nimmt die aktuellste warp2-Firmware, -f esp32 die aktuellste ESP32-Brick-Firmware, die im build-Verzeichnis liegt. ELF-Dateien zu den veröffentlichten Firmwares liegen hier: https://github.com/Tinkerforge/warp-charger/tree/master/firmwares On 6/16/2022 at 10:45 PM, Andreas_Mainz said: Außerdem wollte ich fragen, wie man den ESP32 unter VSC debuggen kann, gibt es da eine Anleitung? Dafür brauchst du einen JTAG-Adapter und musst dich an ein paar Pins des ESPs dranhängen. Anleitung ist hier: https://docs.platformio.org/en/latest/tutorials/espressif32/arduino_debugging_unit_testing.html#debugging-the-firmware Das hat aber noch nie jemand getestet. Ich kann dir auch nicht garantieren, dass die Schaltung an den Pins nicht das Debuggen stört. Alternativ das gute alte printf-Debugging ;) (logger.printfln bzw. Serial.println falls die Probleme vor der Initialisierung des Event-Logs auftreten.) Zitieren
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.