J. Nick Koston
a328726bfd
Derive exception cause range bounds from table sizes
2026-04-05 12:08:05 -10:00
J. Nick Koston
c1c45cfd23
Derive magic word masks from bit positions at compile time
2026-04-05 12:07:30 -10:00
J. Nick Koston
5aac3e1317
Replace switch tables with PROGMEM_STRING_TABLE to save 132B RAM
...
GCC generates CSWTCH jump tables in RAM rodata on ESP8266 for switch
statements. Convert exception cause and reset reason lookups to
PROGMEM_STRING_TABLE which keeps data in flash. Exception causes are
split into two tables (0-9 and 12-29) to stay under the 255-byte
blob limit. Added static_asserts on reset reason enum values.
2026-04-05 12:06:46 -10:00
J. Nick Koston
ac76f1fc3d
Add return address verification and scan full stack
...
- Verify each candidate is a real return address by checking that the
instruction at addr-3 is a CALL/CALLX (Xtensa 3-byte call opcodes).
This filtering happens at log time when flash is readable, similar
to the ESP32 RISC-V handler's is_return_addr() approach.
- Scan the entire stack instead of just 64 words — with filtering,
false positives from stale stack data are eliminated.
- Skip epc1 during scanning (already reported as fault PC).
- Increase to 16 RTC slots (72 bytes) for broader capture before
filtering. Bump hint buffer to 256 for more addresses.
2026-04-05 12:02:05 -10:00
J. Nick Koston
a89a4e1353
Always log EXCVADDR for exception resets
...
A null EXCVADDR (0x00000000) is the key diagnostic for null pointer
crashes (LoadProhibited/StoreProhibited). Suppressing it when zero
hides the most useful information.
2026-04-05 11:59:02 -10:00
J. Nick Koston
73326bce07
Fix stale docstring and extract stack scan limit constant
2026-04-05 11:56:43 -10:00
J. Nick Koston
eb7ce1b684
Replace magic numbers with named constexpr constants
2026-04-05 11:54:37 -10:00
J. Nick Koston
0d93f2fcd1
Increase max backtrace to 8 entries for deep ESP8266 stacks
...
ESP8266 call stacks are typically deep due to Arduino/LWIP/WiFi
layers. 8 entries (36 bytes, 9 RTC blocks) better captures the
WiFi -> LWIP -> socket -> ESPHome -> component call chain.
2026-04-05 11:54:01 -10:00
J. Nick Koston
8dc30bc54d
Reduce RTC memory footprint from 32 to 20 bytes
...
Pack backtrace count into the magic word and reduce max backtrace
entries from 6 to 4, saving 3 RTC blocks (12 bytes).
2026-04-05 11:52:02 -10:00
J. Nick Koston
50073a24b5
[esp8266] Add crash handler for post-mortem diagnostics
...
Add a crash handler for ESP8266 that captures and logs crash data
from previous boots, matching the existing ESP32 and RP2040
implementations. Uses the SDK's rst_info (always available after
reboot) for basic crash info and Arduino's custom_crash_callback
to scan the stack for return addresses stored in RTC user memory.
2026-04-05 11:50:35 -10:00
c7a163441e
[ethernet] Add interface configuration variable for esp-idf ( #10285 )
...
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-04-05 20:57:41 +00:00
ae9068a4c4
[internal_temperature] Add support for LN882X (Lightning LN882H) ( #15370 )
...
Co-authored-by: Bl00d-B0b <Bl00d-B0b@users.noreply.github.com >
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-04-05 09:17:12 -10:00
J. Nick Koston
dae8ea1b04
[mcp23xxx][pi4ioe5v6408] Add optional interrupt pin to eliminate polling ( #15445 )
2026-04-05 08:26:39 -10:00
Javier Peletier
2d7eb116f2
[spi] Enable host-platform builds for unit testing ( #15188 )
2026-04-05 20:11:49 +10:00
J. Nick Koston
9ea27e68ee
[pcf8574][pca9554] Disable loop when all pins are outputs ( #15455 )
2026-04-04 22:52:40 -10:00
Clyde Stubbs and Jonathan Swoboda
4d2062282e
[mipi_spi] Run spi final validation ( #15418 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-04-04 21:11:49 -04:00
J. Nick Koston
2d9a42e4ba
[pcf8574][pca9554] Add optional interrupt pin to eliminate polling ( #15444 )
2026-04-04 13:56:21 -10:00
830517a98f
[mitsubishi_cn105] Add climate component for Mitsubishi A/C units with CN105 connector (Part 3) ( #15437 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: J. Nick Koston <nick+github@koston.org >
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-04-04 12:40:05 -10:00
Clyde Stubbs
1a1725f958
[esp32] Clean build when sdkconfig options change ( #15439 )
2026-04-04 09:11:29 -04:00
J. Nick Koston
297f9c134f
[time] Use set_interval for CronTrigger instead of loop() ( #15433 )
2026-04-04 01:07:16 -10:00
J. Nick Koston
f51871fa6b
[total_daily_energy] Replace loop() with timeout-based midnight reset ( #15432 )
2026-04-04 00:37:50 -10:00
J. Nick Koston
9ee5089891
[time] Support */N syntax in cron expressions ( #15434 )
2026-04-04 00:30:41 -10:00
J. Nick Koston
b0d39aedd3
[hlw8012] Change periodic sensor reading logs to LOGV ( #15431 )
2026-04-04 00:30:29 -10:00
Clyde Stubbs
89de00e7ce
[online_image] Clear LVGL dsc when image size changes. ( #15360 )
2026-04-04 17:04:01 +11:00
alorente and clydebarrow
53b6528cc5
[epaper_spi] Allow runtime rotation change ( #15419 )
...
Co-authored-by: clydebarrow <2366188+clydebarrow@users.noreply.github.com >
2026-04-04 16:02:15 +10:00
Boris Krivonog
16ae753317
[mitsubishi_cn105] Add climate component for Mitsubishi A/C units with CN105 connector (Part 2) ( #15358 )
2026-04-03 19:44:04 -10:00
J. Nick Koston
2337767c38
[modbus_controller] Fix format specifier warnings ( #15429 )
2026-04-03 16:37:31 -10:00
J. Nick Koston
4f2290d548
[web_server] Disable loop when no SSE clients are connected ( #15428 )
2026-04-03 16:37:20 -10:00
Clyde Stubbs
7ab26a4fe0
[ili9xxx][st7735] Add deprecation warnings ( #15416 )
2026-04-04 13:21:58 +11:00
dependabot[bot] and dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
533eeabf1d
Bump aioesphomeapi from 44.8.1 to 44.9.0 ( #15425 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-03 23:17:49 +00:00
Bonne Eggleston and J. Nick Koston
c6bb1fe141
[modbus] Add integration tests for server and server via controller ( #14845 )
...
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-04-03 20:24:02 +00:00
dependabot[bot] and dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
f8f65c1a7b
Bump click from 8.3.1 to 8.3.2 ( #15421 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-03 09:42:37 -10:00
J. Nick Koston
d90e2a6a9a
[core] Use __builtin_ctz for FiniteSetMask bit scanning ( #15400 )
2026-04-03 08:28:54 -10:00
J. Nick Koston
4969fd6e99
[light] Use reciprocal multiply in normalize_color ( #15401 )
2026-04-03 08:28:41 -10:00
J. Nick Koston
95683b7416
[light] Pass LightTraits to avoid redundant virtual get_traits() calls ( #15403 )
2026-04-03 08:28:29 -10:00
J. Nick Koston
38f4dc3217
[uptime] Pass known length to publish_state to avoid redundant strlen ( #15410 )
2026-04-03 08:28:07 -10:00
J. Nick Koston
f2a0d9943d
[benchmarks] Add host platform benchmarks for text_sensor and button ( #15407 )
2026-04-03 08:27:55 -10:00
J. Nick Koston
ea0227a206
[benchmarks] Add host platform benchmarks for number, select, and switch ( #15405 )
2026-04-03 08:27:44 -10:00
J. Nick Koston
5a23669747
[scheduler] Fix unrealistic scheduler benchmarks missing periodic drain ( #15396 )
2026-04-03 08:27:29 -10:00
J. Nick Koston
2a5933e4f7
[host] Add graceful shutdown on SIGINT/SIGTERM ( #15387 )
2026-04-03 08:27:13 -10:00
Jonathan Swoboda
6fecd72049
[ezo_pmp] Fix change_i2c_address action using wrong template type ( #15393 )
2026-04-03 08:35:16 -04:00
Clyde Stubbs
8360502a94
[ci] Fix deprecated-component matcher ( #15417 )
2026-04-03 08:01:04 -04:00
Jonathan Swoboda
5548a32771
[ili9xxx] Fix SPI MOSI pin validation never executing ( #15399 )
2026-04-03 21:15:51 +11:00
Clyde Stubbs
6f05e3d204
[ci] Run ci-custom.py as a pre-commit check ( #15411 )
2026-04-03 12:54:44 +11:00
Jonathan Swoboda and clydebarrow
bcd8ddeabe
[lvgl] Fix ext_click_area property application ( #15394 )
...
Co-authored-by: clydebarrow <2366188+clydebarrow@users.noreply.github.com >
2026-04-03 12:44:54 +11:00
Clyde Stubbs
af662da90d
[mipi_spi] Rotation and buffer size changes ( #15047 )
2026-04-03 12:28:45 +11:00
Keith Burzinski
710186998b
[ota] Use modernized namespace syntax ( #15398 )
2026-04-02 19:12:05 -04:00
J. Nick Koston
be3e0c27bf
[core] Inline fast path for enable_loop ( #15392 )
2026-04-02 21:28:12 +00:00
Jonathan Swoboda
4d0d3cc271
[sen5x] Remove dead voc_baseline config option ( #15391 )
2026-04-02 10:53:53 -10:00
Jonathan Swoboda
4134763f34
[at581x][canbus] Fix walrus operator skipping falsy config values ( #15390 )
2026-04-02 20:32:10 +00:00