This tool decodes an ESP32 stack trace into a human-readable stack trace. The original stack trace generally gets printed to the serial console when the esp32 crashes.
Usage example:
$ python decode.py -a ~/.platformio/packages/toolchain-xtensa-esp32/bin/xtensa-esp32-elf-addr2line ./.pio/build/esp32-3248S035C/firmware.elf
Backtrace: 0x400eee2e:0x3ffb1eb0 0x400ed765:0x3ffb1ed0 0x400f1317:0x3ffb1ef0 0x400f1576:0x3ffb1f60 0x400ebc80:0x3ffb1f80 0x400ebeed:0x3ffb1fa0 0x400d74cb:0x3ffb1fc0 0x400dcd46:0x3ffb1fe0 0x400dcda2:0x3ffb2000 0x400ebd81:0x3ffb2040 0x400dcd46:0x3ffb2060 0x400dcda2:0x3ffb2080 0x400f1954:0x3ffb20c0 0x4019f9ce:0x3ffb20f0 0x400dcbf7:0x3ffb2110 0x400dcda2:0x3ffb2130 0x400dceda:0x3ffb2170 0x400dd56c:0x3ffb21a0 0x400eea88:0x3ffb21f0 0x400d5252:0x3ffb2220 0x400d7715:0x3ffb2240 0x400d661d:0x3ffb2260 0x4010a32e:0x3ffb2290
lv_tlsf_free at .pio/libdeps/esp32-3248S035C/lvgl/src/misc/lv_tlsf.c:1167
lv_mem_free at .pio/libdeps/esp32-3248S035C/lvgl/src/misc/lv_mem.c:179
allocate_btn_areas_and_controls