J. Nick Koston
66be2805e4
Merge branch 'dev' into noise-spare-ephemeral
2026-09-08 23:09:24 +02:00
J. Nick Koston
6c5ab89d5f
[esphome][core] Give a lost OTA chunk ack time to be retransmitted ( #19041 )
2026-09-09 09:08:16 +12:00
J. Nick Koston
8f511a365a
[noise] Bump noise-c to 0.1.26 and libsodium to 1.10021.8 ( #19030 )
2026-09-09 09:07:06 +12:00
Kevin Ahrendt
006f31af93
[i2s_audio] Fix spurious driver failure ( #19045 )
2026-09-09 09:05:02 +12:00
Kevin Ahrendt
5bb112f407
[audio][i2s_audio][micro_wake_word][microphone][mixer][resampler][speaker] Replace use_count() checks with lock and null test ( #19046 )
2026-09-09 09:04:34 +12:00
dependabot[bot]
4ab9298ab3
Bump esptool from 5.3.1 to 5.4.0 ( #19023 )
2026-09-08 22:11:36 +02:00
Kevin Ahrendt and Copilot Autofix powered by AI
3926612281
[core] Fix use-after-free when deleting a running StaticTask ( #19048 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-09-09 07:46:17 +12:00
J. Nick Koston
1ce0bed3f6
[core] Share compiled binaries across modbus integration tests ( #18945 )
2026-09-08 18:10:45 +02:00
esphome[bot]
f91486305f
Bump bundled esphome-device-builder to 1.14.5 ( #19040 )
2026-09-08 15:21:48 +02:00
John and pre-commit-ci-lite[bot]
f191d5e0c3
[atm90e32] Verify offset calibration writes ( #18701 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-09-08 20:02:49 +12:00
Jesse Hills
227ca90aad
[core] Restore the shared git hooks after post-checkout runs script/setup ( #19036 )
2026-09-08 20:00:08 +12:00
Jesse Hills
1700a40b7c
[core] Restore the shared git hooks after post-checkout runs script/setup ( #19036 )
2026-09-08 19:59:55 +12:00
raykholo
28588310e7
[anova] Re-assert temperature unit on every poll cycle ( #17141 )
2026-09-08 18:57:33 +12:00
10a9baff74
[rf_bridge] Fix bucket sniffing with Portisch firmware ( #17683 )
...
Co-authored-by: Bryan Li <bryanli@Bryans-MacBook-Pro.local >
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-09-08 18:36:42 +12:00
Gytis
a23f7bb569
[lvgl] Add missing label dependency to qrcode, keyboard and tabview ( #18387 )
2026-09-08 18:31:30 +12:00
J. Nick Koston
53075e4139
[core] Skip PlatformIO's private-package authorization probe ( #18823 )
2026-09-08 16:42:30 +12:00
Jonathan Swoboda
5722ccba37
[tuya] Build without a network component ( #18948 )
2026-09-08 16:36:04 +12:00
Jesse Hills
94e5c3839d
[udp] Use cv.invalid for relocated packet_transport options ( #19032 )
2026-09-08 16:17:22 +12:00
Davide D M
574762f078
[debug] Check reboot source pref on ESP_RST_WDT and guard against empty source ( #17537 )
2026-09-08 13:59:05 +12:00
Pieter Viljoen and Jesse Hills
d34ffaf392
[ble_client] Report Established from nodes that never read services ( #17920 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2026-09-08 01:57:50 +00:00
Samuel Sieb and Samuel Sieb
e6aa575f2e
[dallas_temp] filter 85 temp from sensor reset ( #17877 )
...
Co-authored-by: Samuel Sieb <samuel@sieb.net >
2026-09-08 13:27:49 +12:00
AndreKR
639ce609bf
[logger] Fix garbled stack traces ( #17939 )
2026-09-08 13:13:51 +12:00
Ryan Ronnander
62eafc477d
[mqtt] Restore brightness flag in light discovery ( #18950 )
2026-09-08 13:09:02 +12:00
mipa87 and Claude
56c3361b9a
[audio] Do not treat MP3_STREAM_INFO_CHANGED as a fatal decoder error ( #19028 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2026-09-08 12:13:03 +12:00
50ca381198
[i2s_audio] Keep a start request that arrives while the speaker task stops ( #19027 )
...
Co-authored-by: Claude <noreply@anthropic.com >
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-09-08 12:10:55 +12:00
dependabot[bot]
89a56298c2
Bump prek from 0.5.1 to 0.5.2 ( #19021 )
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-09-08 00:00:28 +00:00
390742cf9b
Bump ruff from 0.16.5 to 0.16.6 ( #19022 )
...
Co-authored-by: esphome[bot] <115708604+esphome[bot]@users.noreply.github.com>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
Signed-off-by: dependabot[bot] <support@github.com >
2026-09-07 23:47:46 +00:00
Jesse Hills and pre-commit-ci-lite[bot]
5e37872da2
[ci] Sync pre-commit revs and prek version from requirements files ( #19026 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-09-08 10:32:18 +12:00
J. Nick Koston
c9fb996758
Note the spare key is not wiped on shutdown
2026-09-07 17:04:29 +02:00
J. Nick Koston
6aa6b682df
Share the spare ephemeral key size and note the key stays in RAM until consumed
2026-09-07 17:02:04 +02:00
J. Nick Koston
5cc758dea3
Include noise.h under the spare ephemeral define and assert the empty slot precondition
2026-09-07 16:51:02 +02:00
J. Nick Koston
bf718a28b9
[noise] Assert the spare key reaches the wire, drop the ESP8266 warning threshold
...
The gtest now checks that the responder's message carries the slot's
public key and that the next handshake uses a different one, so a
silently refused spare cannot pass. The api refill sites are guarded by
the feature define they use. The ESP8266 blocking threshold change is
left to a separate core change for operations that cannot be shortened.
2026-09-07 16:35:54 +02:00
J. Nick Koston
a595590386
[api] Inline the connect grace predicate
...
One caller and a two term body: inlined it is 48 bytes smaller on
ESP8266 than the out of line function plus its call.
2026-09-07 16:14:21 +02:00
J. Nick Koston
a0dc5a8d14
[api] Check the network once per loop pass for the refill and the clients
2026-09-07 15:50:14 +02:00
J. Nick Koston
edec6aaf5e
[noise] Declare the noise-c state alias with using
2026-09-07 13:21:19 +02:00
J. Nick Koston
55804e6e16
[noise] Use the clamp bit of the spare key as its ready flag
...
A clamped X25519 private key always has bit 254 set, so byte 31 of the
slot says whether a key is present and a wiped slot reads empty; the
separate flag and its padding go, leaving the slot at exactly 64 bytes.
2026-09-07 12:45:25 +02:00
J. Nick Koston
228f8894a9
[noise] Consume the spare key inside the handshake and let noise own its define
...
NoiseResponderHandshake::init() now hands the slot straight to noise-c and
wipes it, so the api and ota call sites are unchanged, nothing copies the
key pair and no transport has to remember the wipe. The slot compiles
under USE_NOISE_SPARE_EPHEMERAL, which the api component enables as the
refiller, instead of the noise component keying on an api define. The
per tick check sits in loop() with the refill out of line, and the grace
predicate lives next to the handshake timeout it mirrors.
2026-09-07 12:33:50 +02:00
J. Nick Koston
866574ca14
[noise] Keep only the slot flag test inline in the api loop
...
The per tick check is a byte load and branch now; the network check,
client scan and refill live in prepare_spare_ephemeral_slow_(), called
only while the slot is empty.
2026-09-07 12:23:09 +02:00
J. Nick Koston
5747c736c2
[noise] Inline the spare slot check, keep the slot empty if the base multiply fails
...
has_spare_ephemeral() is polled every api loop tick, so the flag is now
an extern and the accessor lives in the header.
2026-09-07 12:21:04 +02:00
Jesse Hills
d34d3994e1
Merge branch 'beta' into dev
2026-09-07 12:50:44 +12:00
Jesse Hills
9a877a067c
Merge pull request #19007 from esphome/bump-2026.9.0b2
...
2026.9.0b2
2026.9.0b2
2026-09-07 12:50:25 +12:00
J. Nick Koston
0f6c266cd7
[noise] Give the refill pass 100 ms before the blocking warning on ESP8266
2026-09-07 00:58:02 +02:00
J. Nick Koston
05dbc5ee59
[noise] Hold the refill only for connections still inside their grace period
...
Gating on the noise handshake alone let the refill land between the
handshake and the hello response, inside the window being optimized; a
connection now holds the slot while it is unauthenticated and younger
than a second, so a fresh client gets through its hello first and a stale
half open one stops holding the slot after that.
2026-09-07 00:47:55 +02:00
Jesse Hills
9ba4477ada
Bump version to 2026.9.0b2
2026-09-07 10:46:22 +12:00
Jesse Hills
8434dc5474
[esp32_hosted] Add ESP-NOW-over-hosted shim for the ESP32-P4 ( #17712 )
2026-09-07 10:46:21 +12:00
J. Nick Koston
e0e85db822
[core] Show the other downloader's progress while a prefetch job waits on its lock ( #18983 )
2026-09-07 10:46:21 +12:00
J. Nick Koston
5d2ddc658c
[mdns] Guard LEAmDNS main loop calls against lwIP re-entrancy on ESP8266 ( #18990 )
2026-09-07 10:46:21 +12:00
J. Nick Koston
c1aa41f276
[noise] Bump noise-c to 0.1.24 and libsodium to 1.10021.6 ( #18989 )
2026-09-07 10:46:21 +12:00
esphome[bot]
96b1a03ea4
Bump bundled esphome-device-builder to 1.14.4 ( #19006 )
2026-09-07 10:46:21 +12:00
J. Nick Koston
95ab3fb4f2
[ota] Offer encryption with the api key so enabling it works over OTA ( #18979 )
2026-09-07 10:46:21 +12:00