mirror of
https://github.com/esphome/esphome.git
synced 2026-09-17 01:58:39 +00:00
1b438b25141ced4f4c66475133afad3e88666c9a
Store the exception cause register (exccause/mcause) and exception type (panic_exception_t) in the .noinit struct. At log time, look up the cause code in architecture-specific tables mirroring ESP-IDF's internal panic_arch_fill_info() arrays. Output now shows e.g.: Reason: Fault - Store access fault (RISC-V) Reason: Fault - StoreProhibited (Xtensa) Reason: Interrupt wdt (watchdog, type-only) Bumps CRASH_DATA_VERSION to 2. Struct gains +4 bytes (cause field) with no padding increase (exception and pseudo_excause fit in existing padding alongside backtrace_count and reg_frame_count). All fields are clamped on read to prevent corrupt .noinit data from causing out-of-bounds array access. Co-Authored-By: J. Nick Koston <nick@koston.org>
Description
ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems.
Readme
Multiple Licenses
596 MiB
Languages
C++
55.8%
Python
43.6%
C
0.3%
JavaScript
0.2%
