-
Notifications
You must be signed in to change notification settings - Fork 27
Fixed running on Windows. Added ESP32 backtrace parsing. #5
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
base: master
Are you sure you want to change the base?
Conversation
Signed-off-by: Alexandr Zarubkin <me21@yandex.ru>
This doesn't seem to work correctly:
|
Can you please attach your ELF file? |
I have the same problem, you could use mine, please. ./esp-stackstrace-decoder.py -p ESP32 -t ~/.platformio/packages/toolchain-xtensa32 -e liam-esp/.pioenvs/nodemcuv2/firmware.elf stack.trace "stack.trace" contains: Backtrace: 0x400dd408:0x3ffcd1c0 0x400ddaa6:0x3ffcd1e0 0x400d3769:0x3ffcd210 0x400d3959:0x3ffcd240 0x400d3981:0x3ffcd2d0 0x400f6aba:0x3ffcd2f0 0x400f6b27:0x3ffcd310 I zipped the file from liam-esp/.pioenvs/nodemcuv2/firmware.elf |
I had a quick look into this. It shouldn't b too difficult to implement a decoder for the ESP32 panic handler format. Information about it can be found at https://docs.espressif.com/projects/esp-idf/en/latest/api-guides/fatal-errors.html#panic-handler and https://docs.espressif.com/projects/esp-idf/en/latest/api-guides/fatal-errors.html#guru-meditation-errors. The first link on the other hand shows another solution - the IDF Monitor, that seems to have the functionality already implemented: https://docs.espressif.com/projects/esp-idf/en/latest/get-started/idf-monitor.html#automatically-decoding-addresses. The code can be found at https://github.com/espressif/esp-idf/blob/master/tools/idf_monitor.py. I would prefer to have the parser in a separate class instead of hacked in the one for the 8266. The address-resolver stuff can be reused without problems. maybe @me21 can finish his solution in that sense. I can't promise to have time to do it by myself soon. If any uncertainties exist about the output of the ESP - its generated from this code: https://github.com/espressif/esp-idf/blob/7abed5fc9e0b652c1db85523a721f56050288d2e/components/esp32/panic.c#L218 |
This worked for me on a esp32 backtrace |
Thanks, worked for me too on a ESP32 on a: |
Worked on Linux. Thanks! Couple notices:
Anyway, thanks for all authors! 💪 |
Partially fixes #4 (backtrace decoding). Registers decoding is not done yet.
Signed-off-by: Alexandr Zarubkin me21@yandex.ru