J. Nick Koston
dde66ff1e1
Merge remote-tracking branch 'upstream/dev' into integration
2026-04-12 16:39:30 -10:00
J. Nick Koston
93a5984a95
Merge branch 'ld24xx-lazy-sensor-dedup' into integration
2026-04-12 15:31:21 -10:00
J. Nick Koston
5d8dc8e62c
fix missing semis
2026-04-12 15:30:30 -10:00
J. Nick Koston
099a45cf2e
bot comments
2026-04-12 15:19:27 -10:00
Jesse Hills
dc1dd9ebb7
Merge branch 'beta' into dev
2026-04-13 12:45:02 +12:00
Jesse Hills
0c06d78a4f
Merge pull request #15675 from esphome/bump-2026.4.0b2
...
2026.4.0b2
2026.4.0b2
2026-04-13 12:44:27 +12:00
schrob and J. Nick Koston
41c9ed28cd
[esp32] Use static stack memory for loop task instead of heap ( #15659 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-04-12 23:23:01 +00:00
J. Nick Koston
49e3bea13c
Merge branch 'esp32-static-task-stack' into integration
2026-04-12 13:08:53 -10:00
J. Nick Koston
40c2ac2f8f
Merge remote-tracking branch 'upstream/dev' into integration
2026-04-12 13:08:40 -10:00
J. Nick Koston
3188111da9
Merge branch 'dev' into esp32-static-task-stack
2026-04-12 12:49:36 -10:00
Jesse Hills
5608aa10a5
[CI] Don't run label workflow on closed/merged PRs ( #15678 )
2026-04-12 12:46:49 -10:00
J. Nick Koston
dd4a367088
Merge branch 'ld24xx-lazy-sensor-dedup' into integration
2026-04-12 12:40:11 -10:00
J. Nick Koston
931ef66a2f
Rename LazySensorWithDedup to SensorWithDedup
...
There is no lazy allocation to justify the name — it's just inline
with a null check. Drop the Lazy prefix.
2026-04-12 12:36:10 -10:00
Javier Peletier
daa68a2a60
[packages] fix support packages: !include mypackages.yaml ( #15677 )
2026-04-13 09:48:30 +12:00
J. Nick Koston
66a3e3a705
[ld24xx] Replace heap-allocated SensorWithDedup with inline LazySensorWithDedup
...
Replace heap-allocated SensorWithDedup wrapper with inline
LazySensorWithDedup that stores the sensor pointer and deduplicator
directly in the component, eliminating heap allocations and reducing
RAM usage for configured sensors.
2026-04-12 11:04:17 -10:00
J. Nick Koston
eb7799631d
Merge remote-tracking branch 'origin/ltr390-reduce-blocking' into integration
2026-04-12 10:50:48 -10:00
Jesse Hills
a408b5a4fe
Bump version to 2026.4.0b2
2026-04-13 08:48:19 +12:00
Clyde Stubbs and Jesse Hills
e264c97454
[lvgl] Fix use of rotation on host SDL ( #15611 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2026-04-13 08:48:19 +12:00
J. Nick Koston
8790dec137
[packages] Fix false deprecation warning and wrong error paths in nested packages ( #15605 )
2026-04-13 08:48:19 +12:00
Jonathan Swoboda
6480868e6e
[esp32] Bump platform to 55.03.38, Arduino to 3.3.8, ESP-IDF to 5.5.4 ( #15666 )
2026-04-13 08:48:19 +12:00
Jonathan Swoboda
0578e43352
[canbus] Fix canbus.send can_id compile error ( #15668 )
2026-04-13 08:48:19 +12:00
Jonathan Swoboda
2a89d4835f
[mdns] Bump espressif/mdns to 1.11.0 ( #15670 )
2026-04-13 08:48:19 +12:00
dependabot[bot]
5084c61016
Bump aioesphomeapi from 44.13.2 to 44.13.3 ( #15641 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-13 08:48:19 +12:00
dependabot[bot]
b45f94d511
Bump aioesphomeapi from 44.13.1 to 44.13.2 ( #15637 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-13 08:48:18 +12:00
J. Nick Koston and Copilot
66a4752e13
[rp2040] Fix W5500 Ethernet pbuf corruption by mirroring LWIPMutex semantics ( #15624 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-04-13 08:48:18 +12:00
Jonathan Swoboda
4d4f78de81
[sx127x][cc1101][sx126x] Use GPIO interrupt to wake loop ( #15627 )
2026-04-13 08:48:18 +12:00
Kevin Ahrendt
0faa641c8a
[micro_wake_word] Pin esp-nn version ( #15628 )
2026-04-13 08:48:18 +12:00
J. Nick Koston
0f16d27a72
[api] Add (inline_encode) proto option for sub-message inlining ( #15599 )
2026-04-13 08:48:18 +12:00
J. Nick Koston
835ee456a5
[mcp23016] Add interrupt pin support ( #15616 )
2026-04-13 08:48:18 +12:00
J. Nick Koston
17f3b7dbd5
[pca6416a] Add interrupt pin support ( #15614 )
2026-04-13 08:48:18 +12:00
J. Nick Koston
171a429526
[tca9555] Add interrupt pin support ( #15613 )
2026-04-13 08:48:18 +12:00
Jesse Hills
e4ee2b7c04
[hbridge] Move light pin switching to loop ( #15615 )
2026-04-13 08:48:18 +12:00
Jonathan Swoboda
c85a062e23
[sx127x][cc1101] Disable loop when packet mode is inactive ( #15606 )
2026-04-13 08:48:18 +12:00
J. Nick Koston
873378fa1f
[gdk101] Increase reset retries for slow-booting sensor MCU ( #15584 )
2026-04-13 08:48:18 +12:00
dependabot[bot]
4f00ad409e
Bump aioesphomeapi from 44.12.0 to 44.13.1 ( #15600 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-13 08:48:18 +12:00
J. Nick Koston
20b516ff11
[api] Fix ListEntitiesRequest not read due to LWIP rcvevent tracking ( #15589 )
2026-04-13 08:48:18 +12:00
Clyde Stubbs and Jesse Hills
8754bbfa89
[lvgl] Fix use of rotation on host SDL ( #15611 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2026-04-12 20:29:11 +00:00
J. Nick Koston
6d92cc3d2b
[packages] Fix false deprecation warning and wrong error paths in nested packages ( #15605 )
2026-04-13 08:24:23 +12:00
J. Nick Koston
09e544125a
Merge remote-tracking branch 'upstream/dev' into integration
2026-04-12 10:07:28 -10:00
Jonathan Swoboda
2f684bf4f3
[esp32] Bump platform to 55.03.38, Arduino to 3.3.8, ESP-IDF to 5.5.4 ( #15666 )
2026-04-12 10:07:04 -10:00
Jonathan Swoboda
45af21bf38
[canbus] Fix canbus.send can_id compile error ( #15668 )
2026-04-12 09:58:51 -10:00
Jonathan Swoboda
e6318a2d16
[mdns] Bump espressif/mdns to 1.11.0 ( #15670 )
2026-04-12 09:54:30 -10:00
J. Nick Koston
b286a67334
Merge remote-tracking branch 'upstream/fast-millis-esp32' into integration
2026-04-12 09:50:55 -10:00
J. Nick Koston
e5a0246c80
[core] Document clock divergence between millis() and millis_64_from_()
...
On ESP32, millis() uses xTaskGetTickCount (tick clock) but
millis_64_from_() discards the 32-bit value and calls millis_64()
(esp_timer clock). Safe because scheduling only compares millis_64
against millis_64. On ESP8266, both use the same accumulator clock.
2026-04-12 09:49:28 -10:00
J. Nick Koston
0249c30cbf
[esp32] Document why millis_64() uses a different clock than millis()
...
millis() uses xTaskGetTickCount (tick clock) while millis_64() uses
esp_timer_get_time (hardware timer). Safe because they are never
cross-compared: Scheduler::millis_64_from_() on ESP32 discards the
32-bit millis parameter and calls millis_64() directly, keeping all
64-bit scheduling on the esp_timer clock.
2026-04-12 09:48:23 -10:00
J. Nick Koston
e06c54d100
Merge branch 'fast-millis-esp32' into integration
2026-04-12 09:37:12 -10:00
J. Nick Koston
2cd54b209d
Merge branch 'fast-millis-esp8266' into integration
2026-04-12 09:37:02 -10:00
J. Nick Koston
b5a2d58b80
[esp32] Keep millis() out-of-line with IRAM_ATTR, add ISR context check
...
Revert the inline hal.h approach — millis() must remain IRAM_ATTR
because Wiegand and ZyAura call it from IRAM_ATTR ISR handlers on
all platforms including ESP32.
Use xPortInIsrContext() to dispatch to xTaskGetTickCountFromISR()
from ISR or xTaskGetTickCount() from task context, satisfying the
FreeRTOS API contract. ISR check is [[unlikely]] so the hot path
stays fast.
Benchmarked: 686 ns -> 361 ns (1.9x faster). Correctness verified.
2026-04-12 09:07:08 -10:00
J. Nick Koston
c155f41110
[esp32] Inline millis() in hal.h, drop IRAM_ATTR
...
Move millis() to an inline function in hal.h that just returns
xTaskGetTickCount() -- eliminates the function call entirely at every
call site. No IRAM consumed, no flash function call.
Drop IRAM_ATTR from the fallback path. The original IRAM placement was
inherited from ESP8266 where Arduino millis() is called from ISR
handlers (Wiegand, ZyAura). ESPHome does not call millis() from ISR
on ESP32.
2026-04-12 08:49:04 -10:00
J. Nick Koston
a8cb5b44cd
[esp8266] Address review: fix misleading comment, add named constants
...
- Remove 'No __umulsidi3' claim from top comment — the rare path
does use it via /1000. Reworded to 'pure 32-bit ops on the common
path'.
- Extract MILLIS_RARE_PATH_THRESHOLD_US and US_PER_MS constants to
replace magic numbers 10000 and 1000.
2026-04-12 00:03:23 -10:00