Commit Graph
26602 Commits
Author SHA1 Message Date
J. Nick Koston 2c2b6b893e Merge remote-tracking branch 'upstream/pcf8574-pca9554-interrupt-pin' into integration 2026-04-04 08:38:56 -10:00
J. Nick Koston cf7bed8b6c [gpio_expander] Keep cache valid in interrupt-driven mode
When interrupt_driven_ is set, digital_read() no longer self-invalidates
each pin's cache entry. The cache stays valid until reset_pin_cache_()
is called from loop() when an interrupt fires. This eliminates I2C reads
on every binary sensor loop iteration — only reading when pins actually
change.
2026-04-04 08:38:35 -10:00
J. Nick Koston 3a659233be Merge remote-tracking branch 'upstream/pcf8574-pca9554-interrupt-pin' into integration 2026-04-04 08:29:03 -10:00
J. Nick Koston 79fe3de912 [pcf8574][pca9554] Add optional interrupt pin to eliminate polling
Add interrupt_pin config option to PCF8574 and PCA9554 GPIO expander
components. When configured, the component disables its loop and only
wakes on interrupt, eliminating continuous I2C polling when no pins
have changed state.
2026-04-04 08:22:37 -10:00
J. Nick Koston e4e664a9e6 Revert "[gpio_expander] Remove loop() from all GPIO expander components"
This reverts commit 8403728d4a.
2026-04-04 08:10:27 -10:00
J. Nick Koston c579846b2e Merge remote-tracking branch 'upstream/gpio-expander-remove-loop' into integration 2026-04-04 08:05:39 -10:00
J. Nick Koston 8403728d4a [gpio_expander] Remove loop() from all GPIO expander components
Move cache invalidation into CachedGpioExpander::digital_read() itself,
triggered by detecting a new loop iteration via App.get_loop_component_start_time().
This eliminates the need for a dedicated loop() override in every GPIO expander
component that only existed to call reset_pin_cache_().

Removes loop() from: pcf8574, pca9554, tca9555, pi4ioe5v6408, pca6416a,
mcp23016, mcp23xxx_base. For sx1509, only the reset_pin_cache_() call is
removed (loop() is kept for keypad scanning).
2026-04-04 07:55:38 -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
J. Nick Koston 80296ae6f2 Merge remote-tracking branch 'upstream/api/peel-first-write-iteration' into integration 2026-04-04 00:04:36 -10:00
J. Nick Koston 915f1899ed bot comments 2026-04-04 00:03:50 -10:00
J. Nick Koston b7e666aa9b Merge remote-tracking branch 'origin/api/peel-first-write-iteration' into integration 2026-04-04 00:01:33 -10:00
J. Nick Koston f0c22fc1cd dupe 2026-04-04 00:00:25 -10:00
J. Nick Koston 269c234ac2 Merge remote-tracking branch 'upstream/api/peel-first-write-iteration' into integration 2026-04-03 23:48:58 -10:00
J. Nick Koston 99d080b2a7 preen 2026-04-03 23:35:41 -10:00
J. Nick Koston 8b0e6a3324 preen 2026-04-03 23:34:57 -10:00
J. Nick Koston 392aa0fcbc preen 2026-04-03 23:27:19 -10:00
J. Nick Koston a3febe4a9e fix bloat 2026-04-03 23:20:05 -10:00
J. Nick Koston 5553962eae fix bloat 2026-04-03 23:16:56 -10:00
J. Nick Koston 72df34a507 fix bloat 2026-04-03 23:07:06 -10:00
J. Nick Koston 599f784a90 fix bloat 2026-04-03 22:46:36 -10:00
J. Nick Koston dee78b8a8e fix slowdown 2026-04-03 22:39:19 -10:00
J. Nick Koston 3a564633b7 clean 2026-04-03 22:20:11 -10:00
J. Nick Koston b5989e7a7b clean 2026-04-03 22:15:16 -10:00
J. Nick Koston 7911b9f029 clean 2026-04-03 22:14:07 -10:00
J. Nick Koston d795dc2f1c fix bench 2026-04-03 22:09:46 -10:00
J. Nick Koston 2ec10f2ba7 Merge branch 'dev' into api/peel-first-write-iteration 2026-04-03 22:07:42 -10:00
J. Nick Koston 555804db14 no gap 2026-04-03 22:03:26 -10:00
J. Nick Koston fb4d488864 Merge remote-tracking branch 'upstream/dev' into integration 2026-04-03 21:09:25 -10:00
Clyde Stubbs 89de00e7ce [online_image] Clear LVGL dsc when image size changes. (#15360) 2026-04-04 17:04:01 +11:00
alorenteandclydebarrow 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 f425d8509e Merge remote-tracking branch 'upstream/total-daily-energy-no-loop' into integration 2026-04-03 18:49:02 -10:00
J. Nick Koston 8fc753ce7e Merge branch 'integration' of https://github.com/esphome/esphome into integration 2026-04-03 18:48:46 -10:00
J. Nick Koston e166ee6f60 Merge remote-tracking branch 'upstream/cron-star-slash' into integration 2026-04-03 18:48:32 -10:00
J. Nick Koston 102a3e12fe Merge branch 'integration' of https://github.com/esphome/esphome into integration 2026-04-03 18:22:32 -10:00
J. Nick Koston 06966f5641 Merge branch 'cron-star-slash' into integration 2026-04-03 18:22:20 -10:00
J. Nick Koston c0cac732c7 Merge branch 'cron-trigger-interval' into integration 2026-04-03 18:22:14 -10:00
J. Nick Koston 90df902d09 [time] Support */N syntax in cron expressions 2026-04-03 18:20:53 -10:00
J. Nick Koston c3b8949696 Merge branch 'cron-trigger-interval' of https://github.com/esphome/esphome into cron-trigger-interval 2026-04-03 18:13:39 -10:00
J. Nick Koston f6f07ef147 [time] Use set_interval for CronTrigger instead of loop() 2026-04-03 18:11:45 -10:00
J. Nick Koston 89ff3491b6 [time] Use set_interval for CronTrigger instead of loop() 2026-04-03 18:10:17 -10:00
J. Nick Koston 3921e01cac [total_daily_energy] Replace loop() with timeout-based midnight reset 2026-04-03 18:01:48 -10:00
J. Nick Koston 2447ccb315 Merge remote-tracking branch 'origin/total-daily-energy-no-loop' into integration 2026-04-03 17:57:18 -10:00
J. Nick Koston 5658a2054c [total_daily_energy] Replace loop() with timeout-based midnight reset 2026-04-03 17:51:51 -10:00
J. Nick Koston eb7ef2410b Merge remote-tracking branch 'upstream/hlw8012-logv-fix' into integration 2026-04-03 17:45:03 -10:00
J. Nick Koston 1f098313ae Merge remote-tracking branch 'upstream/total-daily-energy-no-loop' into integration 2026-04-03 17:44:58 -10:00