dankeboy36 / esp-exception-decoder Goto Github PK
View Code? Open in Web Editor NEWESP8266/ESP32 Exception Decoder Extension for the Arduino IDE
License: MIT License
ESP8266/ESP32 Exception Decoder Extension for the Arduino IDE
License: MIT License
Exception (4):
epc1=0x4020d379 epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000000 depc=0x00000000
stack>>>
ctx: cont
sp: 3fff1250 end: 3fff13d0 offset: 0160
3fff13b0: 3fffdad0 00000000 3fff1400 402247c4
3fff13c0: feefeffe feefeffe 3fffdab0 401002b1
<<<stack<<<
--------------- CUT HERE FOR EXCEPTION DECODER ---------------
ets Jan 8 2013,rst cause:2, boot mode:(3,6)
load 0x4010f000, len 3424, room 16
tail 0
chksum 0x2e
load 0x3fff20b8, len 40, room 8
tail 0
chksum 0x2b
csum 0x2b
v00085140
~ld
main
branch failed. 🚨I recommend you give this issue a high priority, so other packages depending on you can benefit from your bug fixes and new features again.
You can find below the list of errors reported by semantic-release. Each one of them has to be resolved in order to automatically publish your package. I’m sure you can fix this 💪.
Errors are usually caused by a misconfiguration or an authentication problem. With each error reported below you will find explanation and guidance to help you to resolve it.
Once all the errors are resolved, semantic-release will release your package the next time you push a commit to the main
branch. You can also manually restart the failed CI job that runs semantic-release.
If you are not sure how to resolve this, here are some links that can help you:
If those don’t help, or if this issue is reporting something you think isn’t right, you can always ask the humans behind semantic-release.
publisher
found in package.json
.Unfortunately this error doesn't have any additional information. Feel free to kindly ask the author of the semantic-release-vsce
plugin to add more helpful information.
Good luck with your project ✨
Your semantic-release bot 📦🚀
After pasting this exeption:
Exception (3):
epc1=0x402203e6 epc2=0x00000000 epc3=0x00000000 excvaddr=0x4026c7d1 depc=0x00000000
>>>stack>>>
ctx: cont
sp: 3ffffe30 end: 3fffffd0 offset: 0150
3fffff80: 3ffe8bb8 3fff05fc 3fff03e8 40208a38
3fffff90: 3ffe8baa 3ffe9150 3fff05fc 3fff0788
3fffffa0: 3fffdad0 0000000f 3fff05fc 3fff0788
3fffffb0: 3fffdad0 00000000 3fff075c 4020cca8
3fffffc0: feefeffe feefeffe 3fffdab0 40100e7d
<<<stack<<<
I got a segmentation fault on the arduino terminal:
Command was killed with SIGSEGV (Segmentation fault): /home/fpp/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-gdb --batch /tmp/arduino/sketches/3EE82EAA269B26DE793A1A57DCC72733/AlarmAddonv2.ino.elf -ex set listsize 1 -ex list *0x40208a38 -ex list *0x4020cca8 -ex list *0x40100e7d -ex q
This is what I can see on the terminal when launching arduinoIDE from it:
2024-01-26T15:27:42.930Z root INFO [hosted-plugin: 1714] 0x402203e6 is in strnlen (/workdir/repo/newlib/newlib/libc/string/strnlen.c:38).
2024-01-26T15:27:42.933Z root ERROR [hosted-plugin: 1714] 38 /workdir/repo/newlib/newlib/libc/string/strnlen.c: No existe el fichero o el directorio.
2024-01-26T15:27:42.962Z root ERROR [hosted-plugin: 1714] Failed to execute: /home/fpp/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-gdb ["--batch","/tmp/arduino/sketches/3EE82EAA269B26DE793A1A57DCC72733/AlarmAddonv2.ino.elf","-ex","set listsize 1","-ex","list *0x40208a38","-ex","list *0x4020cca8","-ex","list *0x40100e7d","-ex","q"] Error: Command was killed with SIGSEGV (Segmentation fault): /home/fpp/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-gdb --batch /tmp/arduino/sketches/3EE82EAA269B26DE793A1A57DCC72733/AlarmAddonv2.ino.elf -ex set listsize 1 -ex list *0x40208a38 -ex list *0x4020cca8 -ex list *0x40100e7d -ex q
at P (/tmp/vscode-unpacked/esp-exception-decoder-1.0.2.vsix/extension/dist/extension.js:1:41810)
at /tmp/vscode-unpacked/esp-exception-decoder-1.0.2.vsix/extension/dist/extension.js:1:49104
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async t.run (/tmp/vscode-unpacked/esp-exception-decoder-1.0.2.vsix/extension/dist/extension.js:1:31779)
at async C (/tmp/vscode-unpacked/esp-exception-decoder-1.0.2.vsix/extension/dist/extension.js:1:23123)
at async Promise.all (index 2)
at async t.decode [as decoder] (/tmp/vscode-unpacked/esp-exception-decoder-1.0.2.vsix/extension/dist/extension.js:1:20034)
at async m.decode (/tmp/vscode-unpacked/esp-exception-decoder-1.0.2.vsix/extension/dist/extension.js:1:28579) {
shortMessage: 'Command was killed with SIGSEGV (Segmentation fault): /home/fpp/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-gdb --batch /tmp/arduino/sketches/3EE82EAA269B26DE793A1A57DCC72733/AlarmAddonv2.ino.elf -ex set listsize 1 -ex list *0x40208a38 -ex list *0x4020cca8 -ex list *0x40100e7d -ex q',
command: '/home/fpp/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-gdb --batch /tmp/arduino/sketches/3EE82EAA269B26DE793A1A57DCC72733/AlarmAddonv2.ino.elf -ex set listsize 1 -ex list *0x40208a38 -ex list *0x4020cca8 -ex list *0x40100e7d -ex q',
escapedCommand: '"/home/fpp/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-gdb" --batch "/tmp/arduino/sketches/3EE82EAA269B26DE793A1A57DCC72733/AlarmAddonv2.ino.elf" -ex "set listsize 1" -ex "list *0x40208a38" -ex "list *0x4020cca8" -ex "list *0x40100e7d" -ex q',
exitCode: undefined,
signal: 'SIGSEGV',
signalDescription: 'Segmentation fault',
stdout: '',
stderr: '',
failed: true,
timedOut: false,
isCanceled: false,
killed: false
}
About arduinoIDE:
Version: 2.2.2-nightly-20240125
Date: 2024-01-25T03:08:37.815Z
CLI Version: 0.35.1
Copyright © 2024 Arduino SA
Hi @dankeboy36, thanks a lot for effort you put into making this incredibly useful plugin! I would like to check if you have already looked into implementing exception decoding for RISC-V chips, such as ESP32-C3? I found one mention of C3 in the tests but it seems that the code required to convert ESP32-C3 register+stack dumps into backtraces is missing.
Do you have something like that in progress, do you plan on implementing this, or would you like anyone from Espressif to open a PR with this implementation?
For reference: on RISC-V chips, by default we can only dump the registers and the stack, not the backtrace. Unwinding the stack to produce the backtrace on the chip itself is not possible, unless CONFIG_ESP_SYSTEM_USE_EH_FRAME option is enabled. (It is disabled by default, since it significantly increases application binary size.)
To perform stack unwinding, a tool running on the host PC is required. In ESP-IDF, this is done using gdb_panic_server.py which acts as a GDB server. GDB is launched, it connects to the script acting as a server, the script feeds GDB information from the stack dump as if it was coming from the real target, and finally GDB decodes the backtrace (code here).
This is slightly more complex than decoding backtraces on Xtensa chips, but since we already have access to GDB in this plugin, looks like this should be doable.
Hi,
Get a guru error, and am looking for guidance to understand the result of the
exception decoder.
Arduino ide 2.3.2,
esp-exception-decoder-1.0.2.vix,
ESP32-S3 DEVkitC-1
ILI9486
Use a LVGL file that is running well on ESP32-3248S035, using ESP32wroom , but due to insufficient memory to include BLE, I needed to go to ESP32-S3, with a separate TFT display , ILI9486. For this, I wrote a user_setup file,
as I could not find any existing to match this combination. I attached the user set up file.
ILI9486.txt
ESP Exception Decoder
Sketch: ui FQBN: esp32:esp32:esp32s3
Core 1 register dump:
PC : 0x420267fa PS : 0x00060430 A0 : 0x820269d8 A1 : 0x3fcebd20
A2 : 0x3fc969a8 A3 : 0x00000000 A4 : 0x60004000 A5 : 0x00000010
A6 : 0x000000ff A7 : 0xff000000 A8 : 0x08000000 A9 : 0x3fcebcf0
A10 : 0x3fcaa72c A11 : 0x00000001 A12 : 0x02625a00 A13 : 0xffffffff
A14 : 0x00000031 A15 : 0x00000000 SAR : 0x00000006 EXCCAUSE: 0x0000001d
EXCVADDR: 0x00000010 LBEG : 0x4202ae24 LEND : 0x4202ae6b LCOUNT : 0x00000003
Backtrace: 0x420267f7:0x3fcebd20 0x420269d5:0x3fcebd50 0x42026bf4:0x3fcebd80 0x420020bb:0x3fcebda0 0x4202be06:0x3fcebe10 0x4037ed22:0x3fcebe30
PC: 0x420267fa: is in TFT_eSPI::writecommand(unsigned char) (i:\arduino\hardware\espressif\esp32\sketches\S035\SjotterS035\libraries\TFT_eSPI\TFT_eSPI.cpp:81).
EXCVADDR: 0x00000010
Decoding stack results
0x420267f7: is in TFT_eSPI::writecommand(unsigned char) (i:\arduino\hardware\espressif\esp32\sketches\S035\SjotterS035\libraries\TFT_eSPI\TFT_eSPI.cpp:81).
0x420269d5: is in TFT_eSPI::init(unsigned char) (i:\arduino\hardware\espressif\esp32\sketches\S035\SjotterS035\libraries\TFT_eSPI\TFT_eSPI.cpp:692).
0x42026bf4: is in TFT_eSPI::begin(unsigned char) (i:\arduino\hardware\espressif\esp32\sketches\S035\SjotterS035\libraries\TFT_eSPI\TFT_eSPI.cpp:603).
0x420020bb: setup() at I:\arduino\hardware\espressif\esp32\sketches\S035\SjotterS035\ui\ui.ino:82
0x4202be06: loopTask(void*) at C:\Users\ludok\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.3\cores\esp32\main.cpp:59
0x4037ed22: vPortTaskWrapper at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/freertos/FreeRTOS-Kernel/portable/xtensa\port.c:162
Looking forward to your suggestions
regards
Ludo
Installed on a Mac as per instructions.
Could not detect the DGB tool path message appears in Exception Decoder Output window. IDE is 2.3.1, board ESP8266.
How debug output can be enabled? This could be helpful to find out such issures.
ESP Exception Decoder
Sketch: GSR FQBN: esp32:esp32:esp32
Backtrace: 0x40093bba:0x3ffceae0 0x40093a40:0x3ffceb10 0x40083da6:0x3ffceb30 0x400922d1:0x3ffceb50 0x4008ff31:0x3ffceb70 0x4008ffd9:0x3ffceb90 0x40091b0e:0x3ffcebb0
Command failed with exit code 3221225477: C:\Users\me\AppData\Local\Arduino15\packages\esp32\tools\xtensa-esp-elf-gdb\12.1_20231023\bin\xtensa-esp32-elf-gdb.exe --batch C:\Users\me\AppData\Local\Temp\arduino\sketches\5910EA3D46BFFB8AD0922753087F5C0D\GSR.ino.elf -ex set listsize 1 -ex list *0x40093bba -ex list *0x40093a40 -ex list *0x40083da6 -ex list *0x400922d1 -ex list *0x4008ff31 -ex list *0x4008ffd9 -ex list *0x40091b0e -ex q
No matter what I did, even putting the whole part in above the Backtrace, same error. This was tried on 2.3.2 and now 2.3.3-nightly 2024-06-30.
Hi,
I downloaded esp-exeption-decoder-1.0.2.vsix and placed it under c:\windows\users\username.arduinoIIDE\plugins, as described in the installation guide.
I startup my arduino IDE 2.3.2, but do not see de decoder in the tools part.
Any suggestions to verify what is wrong ?
Do I need to activate something more in arduino IDE to activate plugins maybe ?
thank you in advance.
regards
Ludo
I have currently installed the 'esp-exception-decoder' on Arduino 2.0.4. When running the IDE, I encounter the following error: 'Could not find the 'dankeboy36.vscode-arduino-api' extension. It must be installed.'
Additionally, when I type 'ESP Exception Decoder: Show Decoder Terminal' in the Command Palette, nothing happens
please help
Hi, while i debug my NodeMCU
i have a error with stacktrace, i download extension but it seems like it cannot recognize the error format.
I tried different copy+paste segments of full exception text, but it seems like cut off exception to fixed lines.
Exception Decoder log:
ESP Exception Decoder
Sketch: NodeMCU_BPM180_DHT11 FQBN: esp8266:esp8266:nodemcuv2
ctx: cont
sp: 3ffffd90 end: 3fffffd0 offset: 0150
3ffffee0: 00000000 3fff0268 3ffee8a4 40205924
3ffffef0: 3ffee7d8 3ffefe48 3ffefa5c 4020376b
3fffff00: 00000000 00000000 00000000 3ffeead0
3fffff10: 3fffdad0 3ffee7d8 3ffefa5c 40201ac9
Could not recognize stack trace/backtrace
Paste exception to decode...
Can the extension recognize this format?
--------------- CUT HERE FOR EXCEPTION DECODER ---------------
Exception (6):
epc1=0x40205704 epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000000 depc=0x00000000
>>>stack>>>
ctx: cont
sp: 3ffffd90 end: 3fffffd0 offset: 0150
3ffffee0: 00000000 3ffee8a4 0006d686 40205968
3ffffef0: 3fffdad0 00000001 3ffefac4 40203737
3fffff00: 40100164 00000000 00000000 3ffeead0
3fffff10: 3fffdad0 3ffee7d8 3ffefac4 40201ac9
3fffff20: 00000000 3ffee7d8 3ffee780 40203348
3fffff30: 3fffdad0 00000000 00000000 002f002f
3fffff40: 00000000 00000000 3ffe85e8 3ffee7b4
3fffff50: 00000000 00001a7f 00000000 00000001
3fffff60: 3fffdad0 3ffee7b4 00000000 3ffeead0
3fffff70: 3fffdad0 3ffee7b4 3ffee780 40203b56
3fffff80: 00000000 00000000 00001388 4020afbc
3fffff90: 00000000 00000000 3ffe85e8 3ffeead0
3fffffa0: 3fffdad0 00000000 3ffeeaa4 3ffeead0
3fffffb0: 3fffdad0 00000000 3ffeeaa4 40207e18
3fffffc0: feefeffe feefeffe 3fffdab0 40101095
<<<stack<<<
--------------- CUT HERE FOR EXCEPTION DECODER ---------------
Hi dankeboy36
i'm posting here as you advised here
in that link it shows the settings and board i use.
(i also tested by enabling the "C++ exceptions")
Aside from the mentioned nightly build, i use Arduino IDE 2.2.1. Both provide the same result.
In case it's interesting my build output is this (i replaced ascii-art with '|---' etc)
. Variables and constants in RAM (global, static), used 39336 / 80192 bytes (49%)
|- SEGMENT BYTES DESCRIPTION
|------- DATA 1516 initialized variables
|------- RODATA 5164 constants
|------- BSS 32656 zeroed variables
. Instruction RAM (IRAM_ATTR, ICACHE_RAM_ATTR), used 60755 / 65536 bytes (92%)
|- SEGMENT BYTES DESCRIPTION
|------- ICACHE 32768 reserved space for flash instruction cache
|------- IRAM 27987 code in IRAM
. Code in flash (default, ICACHE_FLASH_ATTR), used 322768 / 1048576 bytes (30%)
|- SEGMENT BYTES DESCRIPTION
|------- IROM 322768 code in flash
esptool.py v3.0
Serial port /dev/ttyUSB0
Connecting....
Chip is ESP8266EX
Features: WiFi
Crystal is 26MHz
MAC: ec:fa:bc:3f:29:4f
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 4MB
Compressed 361584 bytes to 261258...
Writing at 0x00000000... (6 %)
Writing at 0x00004000... (12 %)
Writing at 0x00008000... (18 %)
Writing at 0x0000c000... (25 %)
Writing at 0x00010000... (31 %)
Writing at 0x00014000... (37 %)
Writing at 0x00018000... (43 %)
Writing at 0x0001c000... (50 %)
Writing at 0x00020000... (56 %)
Writing at 0x00024000... (62 %)
Writing at 0x00028000... (68 %)
Writing at 0x0002c000... (75 %)
Writing at 0x00030000... (81 %)
Writing at 0x00034000... (87 %)
Writing at 0x00038000... (93 %)
Writing at 0x0003c000... (100 %)
Wrote 361584 bytes (261258 compressed) at 0x00000000 in 23.0 seconds (effective 125.8 kbit/s)...
Hash of data verified.
Leaving...
The exeption happens after the 2nd time the ESP8266WebServer receives a POST request and writes a file to LittleFS.
My tracktrace is this (actually two?.. happening directy after eachother)
User exception (panic/abort/assert)
--------------- CUT HERE FOR EXCEPTION DECODER ---------------
Panic core_esp8266_main.cpp:191 __yield
>>>stack>>>
ctx: sys
sp: 3ffff570 end: 3fffffb0 offset: 0010
3ffff580: 00000000 00000001 00000000 40211905
3ffff590: 00000000 3fff05c8 3fff104c 40206b13
3ffff5a0: 000020c0 00000418 3ffe85f0 000004ee
3ffff5b0: 000004ee 00000001 3ffff674 4021056f
3ffff5c0: 3fff1270 00000001 3ffff674 402108f4
3ffff5d0: 3fff1270 0000007e 3fff3394 3fff437c
3ffff5e0: 3fff1270 00000000 3ffff674 00000000
3ffff5f0: 3fff05c8 3fff08c8 3ffe9440 4020a408
3ffff600: 0000adb2 00000001 40211834 00000001
3ffff610: 0000adb2 00000b68 4021493c 00000000
3ffff620: 000003e8 00000001 00000000 00000000
3ffff630: 00000000 4020d6a0 00000000 00000000
3ffff640: 3fff104c 3fff0f94 3fff0ec8 40209118
3ffff650: 3fff3394 04ee04ef 8a002045 3fff3dec
3ffff660: 033b033f 8a002020 3fff4134 0231023f
3ffff670: 8a006c62 3fff437c 04ee04ef 80000000
3ffff680: 3fff0f20 3fff2588 00000000 6bdae720
3ffff690: 0000111c 00000000 000f0000 3fff1248
3ffff6a0: 3fff1270 00000001 3fff2c04 40207ed9
3ffff6b0: 00000000 3fff0f20 3fff0ec8 402099b0
3ffff6c0: 00000000 00000000 3fff32d4 00000000
3ffff6d0: 00000000 3fafc557 00000000 bc786c6b
3ffff6e0: 000017a0 000002f4 00000000 000f000f
3ffff6f0: 00000000 00000000 000f0000 00000000
3ffff700: 00000000 000f0000 00000000 6bdae720
3ffff710: 00000000 00000000 3fff0ec8 3fff1248
3ffff720: 3fffdad0 3fff0efc 3fff0ec8 4020a82a
3ffff730: 40214698 00000000 00001388 4020c47a
3ffff740: 00000000 00000000 3fff31cc 00000000
3ffff750: 3fffdad0 3fff1080 3fff121c 3fff1248
3ffff760: 3fffdad0 00000000 3fff121c 4020a967
3ffff770: 40209ac8 feefeffe 00000001 3fff0eb8
3ffff780: 40209ac8 00000000 40213b38 40100114
3ffff790: 00000001 00000000 00000000 00000000
3ffff7a0: 3fc00000 40000000 0000005f 3fff0da4
3ffff7b0: 00010001 42be0000 00000048 feefeffe
3ffff7c0: feefeffe 00000000 74207755 74736b65
3ffff7d0: 36302320 00000000 00000000 00000000
3ffff7e0: 00000000 00000000 00000000 00000000
3ffff7f0: 00000000 00000000 00000000 00000000
3ffff800: 00000000 00000000 00000000 00000000
3ffff810: 00000000 00000000 00000000 00000000
--------------- CUT HERE FOR EXCEPTION DECODER ---------------
Panic core_esp8266_main.cpp:191 __yield
>>>stack>>>
ctx: sys
sp: 3ffff290 end: 3fffffb0 offset: 0010
3ffff2a0: 00000000 00000000 00000000 40103132
3ffff2b0: 401031a9 00000031 40302063 00000000
3ffff2c0: 00000000 00000000 00000000 00000004
3ffff2d0: 40003b53 2c9f0300 4000050c 3fffc278
3ffff2e0: 4010314c 3fffc200 00000022 02a993f0
3ffff2f0: 40003b53 00000030 00000010 ffffffff
3ffff300: 40001ddc 00000020 00018000 00000000
3ffff310: 00ff0000 5ffffe00 5ffffe00 00000000
3ffff320: 00018000 00000000 3ffff2e3 3ffff45c
3ffff330: 3fff1270 0000003c 3fffffb0 00000030
3ffff340: 0000003c 3ffe8368 000000a0 402185e5
3ffff350: 3ffff45d 000000fe 0000006e ffff0208
3ffff360: 3ffff42c 0000009f 000000a0 3fffffb0
3ffff370: 00000010 3ffe8368 000000a0 402185e5
3ffff380: 3ffff484 0000009f 00000077 ffff0208
3ffff390: 3ffff45c 0000009f 00000004 00000005
3ffff3a0: 3ffff550 3ffff490 00000004 3fff1e74
3ffff3b0: 00000024 3fff1e2c 3ffff3c8 00000000
3ffff3c0: 00000000 3fff1270 3ffff42c 40218621
3ffff3d0: 3ffff4c0 3ffff400 00000004 402185e5
3ffff3e0: 3ffff4e0 3fff1270 3ffff44c 40218621
3ffff3f0: 40211e14 3fff1270 3ffff45c 40211e06
3ffff400: 3ffff4f0 3ffff810 00000000 00000000
3ffff410: 00000000 00000000 2b6b215c 40211e06
3ffff420: 3ffff4c0 3ffff400 00000004 66666633
3ffff430: 30313866 3020203a 30303030 20303030
3ffff440: 30303030 30303030 30303020 30303030
3ffff450: 30302030 30303030 20203030 203a000a
3ffff460: 66666633 30373566 646e6520 6633203a
3ffff470: 66666666 6f203062 65736666 30203a74
3ffff480: 0a303130 00101400 3fff1e2c 40211e06
3ffff490: 3fff1e2c 000000fe 4024fb9c 3fff1290
3ffff4a0: ffffffff 00000000 00000002 3ffe8f4b
3ffff4b0: 3ffff550 3ffff490 00000004 6573550a
3ffff4c0: 78652072 74706563 206e6f69 6bdae720
3ffff4d0: 612f6369 00000020 3ffff820 40211e76
3ffff4e0: 00000020 00000001 00000005 6bdae720
3ffff4f0: 40211ec8 3ffff570 0000000f 3fffffb0
3ffff500: 00000010 3ffff580 3ffff534 4021211f
3ffff510: 500ffc3c 00010005 ffffffff ffffffff
3ffff520: 00000000 00000049 3ffe85f0 3fffefd0
3ffff530: 00000000 000000fe 00000000 00000000
3ffff540: 00000000 00000000 00000000 00000000
3ffff550: 40101400 00000000 00101410 00000001
3ffff560: 00000000 3fff05c8 3ffe85ec 4021218e
3ffff570: 7461642e 00000000 00000000 402121fb
3ffff580: 00000000 00000001 00000000 40211905
3ffff590: 00000000 3fff05c8 3fff104c 40206b13
3ffff5a0: 000020c0 00000418 3ffe85f0 000004ee
3ffff5b0: 000004ee 00000001 3ffff674 4021056f
3ffff5c0: 3fff1270 00000001 3ffff674 402108f4
3ffff5d0: 3fff1270 0000007e 3fff3394 3fff437c
3ffff5e0: 3fff1270 00000000 3ffff674 00000000
3ffff5f0: 3fff05c8 3fff08c8 3ffe9440 4020a408
3ffff600: 0000adb2 00000001 40211834 00000001
3ffff610: 0000adb2 00000b68 4021493c 00000000
3ffff620: 000003e8 00000001 00000000 00000000
3ffff630: 00000000 4020d6a0 00000000 00000000
3ffff640: 3fff104c 3fff0f94 3fff0ec8 40209118
3ffff650: 3fff3394 04ee04ef 8a002045 3fff3dec
3ffff660: 033b033f 8a002020 3fff4134 0231023f
3ffff670: 8a006c62 3fff437c 04ee04ef 80000000
3ffff680: 3fff0f20 3fff2588 00000000 6bdae720
3ffff690: 0000111c 00000000 000f0000 3fff1248
3ffff6a0: 3fff1270 00000001 3fff2c04 40207ed9
3ffff6b0: 00000000 3fff0f20 3fff0ec8 402099b0
3ffff6c0: 00000000 00000000 3fff32d4 00000000
3ffff6d0: 00000000 3fafc557 00000000 bc786c6b
3ffff6e0: 000017a0 000002f4 00000000 000f000f
3ffff6f0: 00000000 00000000 000f0000 00000000
3ffff700: 00000000 000f0000 00000000 6bdae720
3ffff710: 00000000 00000000 3fff0ec8 3fff1248
3ffff720: 3fffdad0 3fff0efc 3fff0ec8 4020a82a
3ffff730: 40214698 00000000 00001388 4020c47a
3ffff740: 00000000 00000000 3fff31cc 00000000
3ffff750: 3fffdad0 3fff1080 3fff121c 3fff1248
3ffff760: 3fffdad0 00000000 3fff121c 4020a967
3ffff770: 40209ac8 feefeffe 00000001 3fff0eb8
3ffff780: 40209ac8 00000000 40213b38 40100114
3ffff790: 00000001 00000000 00000000 00000000
3ffff7a0: 3fc00000 40000000 0000005f 3fff0da4
3ffff7b0: 00010001 42be0000 00000048 feefeffe
3ffff7c0: feefeffe 00000000 74207755 74736b65
3ffff7d0: 36302320 00000000 00000000 00000000
3ffff7e0: 00000000 00000000 00000000 00000000
3ffff7f0: 00000000 00000000 00000000 00000000
3ffff800: 00000000 00000000 00000000 00000000
3ffff810: 00000000 00000000 00000000 00000000
3ffff820: 00000000 00000000 00000000 00000000
3ffff830: 00000000 00000000 00000000 00000000
3ffff840: 00000000 00000000 00000000 00000000
3ffff850: 00000000 00000000 00000000 00000000
3ffff860: 00000000 00000000 00000000 00000000
3ffff870: 00000000 00000000 00000000 00000000
3ffff880: 00000000 00000000 00000000 00000000
3ffff890: 00000000 00000000 00000000 00000000
3ffff8a0: 00000000 00000000 00000000 00000000
3ffff8b0: 00000000 00000000 00000000 00000000
3ffff8c0: 00000000 00000000 00000000 00000000
3ffff8d0: 00000000 00000000 00000000 00000000
3ffff8e0: 00000000 00000000 00000000 00000000
3ffff8f0: 00000000 00000000 00000000 00000000
3ffff900: 00000000 00000000 00000000 00000000
3ffff910: 00000000 00000000 00000000 00000000
3ffff920: 00000000 00000000 00000000 00000000
3ffff930: 00000000 00000000 00000000 00000000
3ffff940: 00000000 00000000 00000000 00000000
3ffff950: 00000000 00000000 00000000 00000000
3ffff960: 00000000 00000000 00000000 00000000
3ffff970: 00000000 00000000 00000000 00000000
3ffff980: 00000000 00000000 00000000 00000000
3ffff990: 00000000 ??????bL??�*??D??9;????????.??K??????
AP IP address: 192.168.4.1
HTTP server started
Starting ITimer OK
This is the exception decoder output
ESP Exception Decoder
Sketch: Wifi_AP_LichtKrant_v10 FQBN: esp8266:esp8266:nodemcuv2
Panic core_esp8266_main.cpp:191 __yield
>>>stack>>>
ctx: sys
sp: 3ffff570 end: 3fffffb0 offset: 0010
3ffff580: 00000000 00000001 00000000 40211905
3ffff590: 00000000 3fff05c8 3fff104c 40206b13
3ffff5a0: 000020c0 00000418 3ffe85f0 000004ee
3ffff5b0: 000004ee 00000001 3ffff674 4021056f
3ffff5c0: 3fff1270 00000001 3ffff674 402108f4
3ffff5d0: 3fff1270 0000007e 3fff3394 3fff437c
3ffff5e0: 3fff1270 00000000 3ffff674 00000000
3ffff5f0: 3fff05c8 3fff08c8 3ffe9440 4020a408
3ffff600: 0000adb2 00000001 40211834 00000001
3ffff610: 0000adb2 00000b68 4021493c 00000000
3ffff620: 000003e8 00000001 00000000 00000000
3ffff630: 00000000 4020d6a0 00000000 00000000
3ffff640: 3fff104c 3fff0f94 3fff0ec8 40209118
3ffff650: 3fff3394 04ee04ef 8a002045 3fff3dec
3ffff660: 033b033f 8a002020 3fff4134 0231023f
3ffff670: 8a006c62 3fff437c 04ee04ef 80000000
3ffff680: 3fff0f20 3fff2588 00000000 6bdae720
3ffff690: 0000111c 00000000 000f0000 3fff1248
3ffff6a0: 3fff1270 00000001 3fff2c04 40207ed9
3ffff6b0: 00000000 3fff0f20 3fff0ec8 402099b0
3ffff6c0: 00000000 00000000 3fff32d4 00000000
3ffff6d0: 00000000 3fafc557 00000000 bc786c6b
3ffff6e0: 000017a0 000002f4 00000000 000f000f
3ffff6f0: 00000000 00000000 000f0000 00000000
3ffff700: 00000000 000f0000 00000000 6bdae720
3ffff710: 00000000 00000000 3fff0ec8 3fff1248
3ffff720: 3fffdad0 3fff0efc 3fff0ec8 4020a82a
3ffff730: 40214698 00000000 00001388 4020c47a
3ffff740: 00000000 00000000 3fff31cc 00000000
3ffff750: 3fffdad0 3fff1080 3fff121c 3fff1248
3ffff760: 3fffdad0 00000000 3fff121c 4020a967
3ffff770: 40209ac8 feefeffe 00000001 3fff0eb8
3ffff780: 40209ac8 00000000 40213b38 40100114
3ffff790: 00000001 00000000 00000000 00000000
3ffff7a0: 3fc00000 40000000 0000005f 3fff0da4
3ffff7b0: 00010001 42be0000 00000048 feefeffe
3ffff7c0: feefeffe 00000000 74207755 74736b65
3ffff7d0: 36302320 00000000 00000000 00000000
3ffff7e0: 00000000 00000000 00000000 00000000
3ffff7f0: 00000000 00000000 00000000 00000000
3ffff800: 00000000 00000000 00000000 00000000
3ffff810: 00000000 00000000 00000000 00000000
Could not recognize stack trace/backtrace
Paste exception to decode...
i tried also pasting the block after the second ----- CUT HERE
with all of the heading and tried with ever less rows. but all
gives the same result.
Kind regards
The exception decoder terminal doesnt show up after running the command
No debug tab window appears on Arduino IDE 2.1.1
Using Linux Mint 21.2 o
exception decoder placed in here according to your directions while IDE was closed.
jponko@jponko-tc:~/.arduinoIDE/plugin$ ls
esp-exception-decoder-1.0.2.vsix
CTRL+SHIFT+p shows it in the list but no exception window appears when selected.
The IDE says this: Default VS Code API: 1.53.2
I don't use VS Code so I don't know if this is helpful.
System:
Kernel: 5.15.0-78-generic x86_64 bits: 64 compiler: gcc v: 11.3.0 Desktop: Cinnamon 5.8.4
tk: GTK 3.24.33 wm: muffin dm: LightDM Distro: Linux Mint 21.2 Victoria base: Ubuntu 22.04 jammy
Machine:
Type: Desktop System: LENOVO product: 10FLS02D00 v: ThinkCentre M900
serial: Chassis: type: 3 serial:
Mobo: LENOVO model: 30D0 v: SDK0J40697 WIN 3305025634376 serial:
UEFI: LENOVO v: FWKTB9A date: 08/17/2021
CPU:
Info: quad core model: Intel Core i5-6600T bits: 64 type: MCP arch: Skylake-S rev: 3 cache:
L1: 256 KiB L2: 1024 KiB L3: 6 MiB
Speed (MHz): avg: 800 min/max: 800/3500 cores: 1: 800 2: 800 3: 800 4: 800 bogomips: 21599
I have this sketch:
#include <ESP8266WiFi.h>
#include <ESP8266HTTPClient.h>
#include <string>
const int SERIAL_BAUD_RATE = 74880;
const int LED_PIN = 5; // Thing's onboard, green LED
const int DOWNLOAD_MAX_TIME = 180;
const int DOWNLOAD_MAX_TIME_NODATA = 60;
const int DISPLAY_WIDTH=800;
const int DISPLAY_HEIGHT=480;
String client_ssid="Sixty-Seven";
String client_password="8791oetifiw";
uint8_t output_black_buffer[DISPLAY_WIDTH / 8] = {0};
uint8_t output_red_buffer[DISPLAY_WIDTH / 8] = {0};
int currentIdx = 0;
int out_idx = 0;
void setup()
{
Serial.begin(SERIAL_BAUD_RATE);
Serial.println("=============== Setup =====================");
WiFi.mode(WIFI_OFF);
WiFi.persistent(false);
pinMode(LED_PIN, OUTPUT);
digitalWrite(LED_PIN, HIGH);
for (int i = 0; i < 96000; i++) {
usePixels();
if (i % 128 == 127) {
ESP.wdtFeed();
Serial.println(".");
}
}
}
void loop() {
}
void usePixels() {
if (currentIdx % 2 == 0) {
output_black_buffer[out_idx] = 1;
}
else {
output_red_buffer[out_idx++] = 1;
if ((currentIdx / 2) == DISPLAY_WIDTH / 8 - 1) {
out_idx = 0;
}
}
currentIdx++;
}
which for reason that I haven't figured out yet, causes a LoadStoreAlignmentCause
exception:
Fatal exception 9(LoadStoreAlignmentCause):
epc1=0x402017ef, epc2=0x00000000, epc3=0x00000000, excvaddr=0x01010105, depc=0x00000000
--------------- CUT HERE FOR EXCEPTION DECODER ---------------
Exception (9):
epc1=0x402017ef epc2=0x00000000 epc3=0x00000000 excvaddr=0x01010105 depc=0x00000000
>>>stack>>>
ctx: cont
sp: 3ffffe30 end: 3fffffd0 offset: 0150
3fffff80: 00017700 3ffee750 3ffee750 402019d8
3fffff90: 3fffdad0 3ffee750 0000027f 402010e5
3fffffa0: feefeffe feefeffe feefeffe 3ffee8c4
3fffffb0: 3fffdad0 00000000 3ffee898 40202568
3fffffc0: feefeffe feefeffe 3fffdab0 40101179
<<<stack<<<
--------------- CUT HERE FOR EXCEPTION DECODER ---------------
The decoder decodes it as:
Exception 9: LoadStoreAlignmentCause: Load or store to an unaligned address
PC: 0x402017ef: is in Print::write(char const*) (/home/teo/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266/Print.h:59).
EXCVADDR: 0x01010105
Decoding stack results
0x402019d8: is in Print::println(char const*) (/home/teo/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266/Print.cpp:238).
0x402010e5: setup() at /home/teo/Documents/xxxx/xxxx.ino:33
0x40202568: loop_wrapper() at /home/teo/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266/core_esp8266_main.cpp:255
Note where it says xxxx.ino:33
. That is the main .ino file of the sketch (code above).
These are lines 33 and 34 respectively, as counted by the Arduino IDE:
33 for (int i = 0; i < 96000; i++) {
34 usePixels();
I don't think a for
loop can itself be an entry in the stack, right? The function usePixels()
seems much more likely.
Maybe you are counting line numbers starting from 0?
Arduino IDE 2.3.3-nightly-20230229
After creating the plugins folder and moving the folder into it, I receive the following error:
Activating extension 'ESP Exception Decoder' failed: Cannot find module '/Users/dettmerc/.arduinoIDE/plugins/esp-exception-decoder-main/dist/extension.js' Require stack: - /Applications/Arduino IDE.app/Contents/Resources/app/lib/backend/plugin-host.js
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.