Skip to content

Double the console task's stack and report its low-water mark - #252

Merged
ThomasPohl merged 1 commit into
mainfrom
fix/console-stack-status
Nov 15, 2026
Merged

ThomasPohl merged 1 commit into
mainfrom
fix/console-stack-status

Conversation

@ThomasPohl

Copy link
Copy Markdown
Owner

status crashed twice on the Waveshare ESP32-S3 board with a double exception, both times right after the SD card line, where print_schedule() reads the settings from NVS (#251).

What the dumps show: the task was in spi_flash_disable_interrupts_caches_and_other_cpu (start of a flash read, the deepest point of the command), and the saved PS has interrupt level 6, the debug level. That is the end-of-stack watchpoint (CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK) firing; the handler then ran on the exhausted stack. A9 is only the core id value (0xcdcd / 0xabab), not a corrupted pointer.

  • The console task's stack goes from 6 KB to 12 KB.
  • status ends with TCH INFO console stack N of 12288 bytes never used, so that the margin can be read on hardware.

Not tested on hardware; the stack overflow is the likely cause, not a proven one. If status still crashes with this build, the low-water mark of the last good reply and the core dump are the next step.

Refs #251


Generated by Claude Code

status crashed with a double exception while it read the settings from NVS
for the schedule lines: the registers show a debug exception (interrupt
level 6, the end-of-stack watchpoint) during the start of the flash read,
the deepest point of the command.

Refs #251

Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Csa4N7j74wokEkrsQv9qfr
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants