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
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
370cfb8898
[noise] Generate the responder ephemeral key ahead of the handshake
...
The responder's ephemeral key pair was generated inside the handshake
write step, a base point multiply of about 60 ms on ESP8266 that every
connecting client waited for. The noise component now keeps one spare key
pair (64 bytes of static storage, only in builds with an encrypted api
since the api server is the only refiller), the api server refills it from
loop() once the network is up and no api client is mid handshake, and both
the api and ota handshakes take it through noise-c's
noise_handshakestate_set_local_ephemeral(). A handshake that finds the
slot empty, or whose spare noise-c refuses, generates its own key as
before. The host gtest suite covers the slot's single use, the key pair's
consistency, and a full handshake whose message carries the supplied key.
2026-09-07 00:17:20 +02:00
J. Nick Koston
688af60cbf
[noise] Bump noise-c to 0.1.24 and libsodium to 1.10021.6 ( #18989 )
2026-09-07 10:12:52 +12:00
J. Nick Koston
833dd0e812
[ota] Offer encryption with the api key so enabling it works over OTA ( #18979 )
2026-09-06 23:59:40 +02:00
Ricardo Sanz
8e1044e8ea
[climate][template] New template climate component ( #14455 )
2026-09-06 14:03:07 -07:00
ae187f81f2
[wifi] Allow a forced roam check ( #17349 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com >
2026-09-05 21:44:37 +10:00
Jesse Hills
51ea97deff
[esp32_ble] Reference count BLE advertising ( #18943 )
2026-09-05 08:38:55 +12:00
J. Nick Koston and pre-commit-ci-lite[bot]
f65ab5629e
[esp8266] Drop Arduino framework versions before 3.0.0 ( #18917 ) to
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-09-03 15:16:36 -04:00
Keith Burzinski
6b11636491
[remote_transmitter] Fix BK7231N build by limiting the PWM path to BK7238 ( #18958 )
2026-09-03 08:12:36 -04:00
f0e2eb96bd
[snapshot][SDL] Display headless mode and snapshots ( #17917 )
...
Co-authored-by: Claude Opus 5 <noreply@anthropic.com >
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2026-09-03 09:39:32 +12:00
Jesse Hills
ecbde8ddf4
[uart] Migrate check_uart_settings to final validation ( #18940 )
2026-09-03 07:25:08 +12:00
esphome[bot]
da16c01351
[ci] Refresh integration test durations ( #18944 )
2026-09-02 09:32:47 +00:00
379e077b5f
[ds1603l] New sensor DS1603L V1.0 ( #13133 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2026-09-02 10:05:56 +12:00
J. Nick Koston and Jesse Hills
3f68930001
[ota] Add Noise encryption to the OTA platform ( #18489 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2026-09-02 08:11:57 +12:00
0aff9e1c54
[d01] add D01 pm2.5 sensor support ( #17788 )
...
Co-authored-by: Andrej Walilko <awalilko@liquidweb.com >
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2026-09-02 07:33:35 +12:00
fe3788ff47
[esp32][mipi_rgb] Add ESP32-S31 support for execute_from_psram ( #18929 )
...
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com >
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-09-01 08:56:03 -04:00
J. Nick Koston
d6758377d1
[core] Clone git libraries in parallel in the library prefetch ( #18836 )
2026-09-01 14:25:58 +12:00
Jesse Hills
5dbc8ffe4c
[epaper_spi] Add UC8179 mono driver and Seeed reTerminal E1001 model ( #17568 )
2026-09-01 14:17:52 +12:00
J. Nick Koston
0f982f03b2
[core] Prefetch tool-scons by PlatformIO's core spec ( #18831 )
2026-09-01 11:55:53 +12:00
Bonne Eggleston
afb0022dd0
[core] Lint: require braces around single ESP_LOG control-statement bodies ( #18727 )
2026-09-01 11:53:39 +12:00
Clyde Stubbs
24af3fd834
[lvgl] Fix user_ flags ( #18902 )
2026-09-01 07:13:36 +10:00
J. Nick Koston
1ba1aebfa1
[ci] Balance integration test buckets by recorded durations ( #18895 )
2026-08-31 13:20:47 -05:00
J. Nick Koston
ad69718ecc
[core] Configure the platform again after prefetching its packages ( #18830 )
2026-08-31 13:01:13 -05:00
Brandon Harvey
bbe806f1e6
[sen6x] Add VOC/NOx algorithm tuning ( #18779 )
2026-08-31 13:45:38 -04:00
2890afe0e5
[esp32] Fix S31 reserved pins ( #18915 )
...
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com >
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-08-31 12:38:20 +00:00
Clyde Stubbs
5e58b312e2
[mipi_rgb] Add ESP32S31 support ( #18914 )
2026-08-31 07:20:20 -04:00
Jonathan Swoboda
575a540c9f
[esp32] Fix ESP32-S31 GPIO validation ( #18904 )
2026-08-31 07:19:20 -04:00
Keith Burzinski and J. Nick Koston
7b97c87390
[improv_serial] Support non-Wi-Fi network interfaces ( #17598 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-30 20:43:59 -05:00
J. Nick Koston
fbe306f00b
[homeassistant] Add integration test for binary sensor initial state triggers ( #18894 )
2026-08-30 19:30:40 -05:00
J. Nick Koston
fc977b7b5e
[ci] Cache the integration test PlatformIO dir ( #18896 )
2026-08-30 17:34:32 -05:00
J. Nick Koston
2f1d3f8299
[core] Deduplicate the host program path lookup ( #18897 )
2026-08-30 17:34:16 -05:00
Brandon Harvey and J. Nick Koston
fb65096ea3
[api] Add description and example metadata to user-defined actions ( #18881 )
...
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-08-30 13:52:51 -05:00
Clyde Stubbs
b9eda644cd
[lvgl] Add radial and conical gradients ( #18818 )
2026-08-30 21:21:07 +10:00
Bonne Eggleston
a811aa840c
[modbus] Speed up the bus with microsecond-accurate timing ( #12421 )
2026-08-30 03:14:12 -05:00
J. Nick Koston
cd28a8a03e
[internal_temperature] Re-include esp_phy on the original ESP32 so the PHY blob links ( #18884 )
2026-08-29 23:25:25 -05:00
J. Nick Koston
6957576867
[esp32] Skip full rebuild on sdkconfig change with the esp-idf toolchain ( #18876 )
2026-08-29 03:09:12 +00:00
J. Nick Koston
3fea080ed8
[core] Hash downloaded file paths at the default data dir location ( #18824 )
2026-08-28 21:08:15 -05:00
J. Nick Koston
ce163b8258
[ci] Cache clang-tidy idedata and key ESP-IDF cache on Python version ( #18868 )
2026-08-28 20:41:57 -05:00
Bonne Eggleston
1c44cec343
[modbus] Add value_at() and decode registers without the byte round-trip ( #18873 )
2026-08-28 17:44:00 -05:00
Clyde Stubbs
c9848d8fa6
[light] Fix gamma table dead zone collapsing to 0 ( #18845 )
2026-08-29 08:37:20 +10:00
0dc0cf83de
[mk2pvrouter] Add Mk2PVRouter component with sensor support ( #8487 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: J. Nick Koston <nick+github@koston.org >
2026-08-28 21:02:32 +00:00
J. Nick Koston
03147bc3b1
[core] Avoid double promotion in update interval and step formatting ( #18825 )
2026-08-28 15:12:50 -05:00
Bonne Eggleston
246670e22b
[modbus] Add a compile-time register value decoder ( #18863 )
2026-08-28 14:54:31 -05:00
J. Nick Koston
0dce7f4845
[esp8266] Add the native library backend ( #18558 )
2026-08-28 13:50:52 -05:00
J. Nick Koston
1623fe0852
[esp32] Exclude the WiFi and Bluetooth stacks from builds that do not use them ( #18599 )
2026-08-28 18:49:21 +00:00
J. Nick Koston
4333870590
[core] Use uv for the ESP-IDF Python environment when available ( #18838 )
2026-08-28 13:43:48 -05:00
J. Nick Koston
cc41fd0beb
[core] Make rmtree tolerate missing paths and concurrent directory changes ( #18846 )
2026-08-28 13:42:42 -05:00
Bonne Eggleston and J. Nick Koston
59397b4e28
[modbus] Build single-value register writes on a right-sized stack buffer ( #18844 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-28 18:36:24 +00:00
Bonne Eggleston
768ab5b672
[modbus] Hub and helpers cleanup; tighten queue_pdu validation ( #18847 )
2026-08-28 13:16:41 -05:00