J. Nick Koston
ddbae0dd00
[rp2040] Always show BOOTSEL tip when no BOOTSEL device detected
...
Serial ports in the chooser may belong to other devices (e.g. FT232R),
not the RP2040. Show the BOOTSEL tip whenever no BOOTSEL device is
detected via picotool, regardless of whether serial ports are present.
2026-03-05 13:08:12 -10:00
J. Nick Koston
98e4a9f876
Merge branch 'dev' into rp2040-upload-improvements
2026-03-05 13:06:39 -10:00
J. Nick Koston
aec76fafce
[rp2040] Use picotool for BOOTSEL upload instead of mass storage copy
...
Replace UF2 file copy to mass storage volume with direct picotool upload.
This avoids macOS "disk not ejected properly" warnings caused by the RP2040
resetting immediately after receiving the firmware.
- Use picotool (already installed by PlatformIO) for BOOTSEL detection
and firmware upload via USB
- Upload ELF directly with `picotool load -v -x` for real-time progress
- Remove platform-specific mass storage volume detection (macOS/Linux/Windows)
- Show helpful udev rules message on Linux permission errors
2026-03-05 12:59:07 -10:00
b0be02e16d
[modbus] Fix timing bugs and better adhere to spec ( #8032 )
...
Co-authored-by: brambo123 <52667932+brambo123@users.noreply.github.com >
Co-authored-by: Keith Burzinski <kbx81x@gmail.com >
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: J. Nick Koston <nick+github@koston.org >
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-03-05 20:54:17 +00:00
5c5ea8824e
[audio_file] New component for embedding files into firmware ( #14434 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: Copilot <175728472+Copilot@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@koston.org >
2026-03-05 09:51:08 -10:00
J. Nick Koston
a1ae9fadc2
Merge branch 'dev' into rp2040-upload-improvements
2026-03-05 09:48:55 -10:00
rwrozelle and J. Nick Koston
9518d88a2a
[openthread] static log level code quality improvement ( #14456 )
...
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-03-05 08:35:20 -10:00
Clyde Stubbs
f5c37bf486
[packet_transport] Minimise heap allocations ( #14482 )
2026-03-05 14:24:01 +11:00
J. Nick Koston
5df4fd0a27
[tests] Fix flaky uart_mock integration tests ( #14476 )
2026-03-04 15:51:51 -10:00
J. Nick Koston
f886aa7f9a
[rp2040] Fix firmware.bin.signed creation for nobuild upload
...
Move signed bin creation from post_build script to upload_using_platformio.
The post_build AddPostAction only runs during build, not during nobuild
upload, so the file was missing when PlatformIO tried to upload.
Now create firmware.bin.signed before calling PlatformIO upload.
2026-03-04 14:24:48 -10:00
J. Nick Koston
d856046830
[rp2040] Add test coverage for Linux and Windows mass storage detection
...
Add tests for get_rp2040_mass_storage_volumes() on Linux, Windows,
and unsupported platforms to improve test coverage.
2026-03-04 14:12:39 -10:00
J. Nick Koston
5f79e3e0c2
[rp2040] Fix test assertions for Windows path separators
...
Use str(Path(...)) in test assertions so paths match platform-specific
separators (forward slashes on Unix, backslashes on Windows).
2026-03-04 14:00:35 -10:00
J. Nick Koston
74dd61442a
[rp2040] Improve upload experience with mass storage and BOOTSEL support
...
Add auto-detection of RP2040 BOOTSEL mass storage volumes (RPI-RP2) on
macOS, Linux, and Windows. Show detected volumes as upload targets with
a progress bar for UF2 file copy. Display helpful BOOTSEL instructions
when no RP2040 device is found.
- Add get_rp2040_mass_storage_volumes() to detect mounted RPI-RP2 volumes
- Add PortType.MASS_STORAGE and upload_using_uf2_copy() with progress bar
- Move ProgressBar to helpers.py for shared use
- Wait for USB-CDC serial port after upload for log output
- Auto-select single serial port for logs after mass storage upload
- Create firmware.bin.signed in post_build to fix nobuild upload target
- Show BOOTSEL tip when only OTA options are available
2026-03-04 13:50:52 -10:00
J. Nick Koston
b2e8544c58
[ld2412] Add integration tests with mock UART ( #14448 )
2026-03-04 07:18:31 -10:00
37146ff565
[integration] Add set method to publish and save sensor value ( #13316 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-03-04 09:00:09 -05:00
J. Nick Koston and Claude Opus 4.6
9371159a7e
[core] Replace custom esphome::optional with std::optional ( #14368 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 01:14:05 +00:00
Jesse Hills
989330d6bc
[globals] Fix handling of string booleans in yaml ( #14447 )
2026-03-03 22:54:40 +00:00
Jonathan Swoboda and Claude Opus 4.6
ee78d7a0c0
[tests] Fix integration test race condition in PlatformIO cache init ( #14435 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-03 17:42:41 -05:00
J. Nick Koston
1f1b20f4fe
[core] Pack entity string properties into PROGMEM-indexed uint8_t fields ( #14171 )
2026-03-03 07:03:24 -10:00
b6f0bb9b6b
[speaker] Add off on capability to media player ( #9295 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Kevin Ahrendt <kevin.ahrendt@openhomefoundation.org >
2026-03-03 10:59:01 -05:00
Clyde Stubbs
cfde0613bb
[const][uart][usb_uart][weikai][core] Move constants to components/const ( #14430 )
2026-03-03 07:53:18 -05:00
schrob and Jonathan Swoboda
60d66ca2dc
[openthread] Add tx power option ( #14200 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-03-02 23:28:01 -05:00
J. Nick Koston
2e623fd6c3
[tests] Fix flaky log assertion race in oversized payload tests ( #14414 )
2026-03-02 11:48:50 -10:00
J. Nick Koston
3615a7b90c
[core] Eliminate __udivdi3 in millis() on ESP32 and RP2040 ( #14409 )
2026-03-02 11:42:25 -10:00
J. Nick Koston
a1d91ac779
[core] Compile-time detection of loop() overrides ( #14405 )
2026-03-02 06:59:23 -10:00
J. Nick Koston
82da4935b6
[core] Auto-wrap static strings in PROGMEM on ESP8266 via TemplatableValue ( #13885 )
2026-03-02 06:57:08 -10:00
Copilot and jesserockz
77a7cbcffd
Use cached files on network errors in external_files ( #14055 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: jesserockz <3060199+jesserockz@users.noreply.github.com >
2026-03-02 11:41:20 -05:00
Bonne Eggleston and J. Nick Koston
3160457ca6
Create integration tests for modbus ( #14395 )
...
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-03-01 22:51:27 -10:00
J. Nick Koston
80a2acca4f
[ld2410] Add UART mock integration test for LD2410 component ( #14377 )
2026-03-01 18:19:32 -10:00
J. Nick Koston
48b5cae6c4
[api] Use StringRef for user service string arguments ( #13974 )
2026-03-02 10:32:44 +13:00
J. Nick Koston
067d773aac
[core] Make register_component protected, remove runtime checks ( #14371 )
2026-02-28 07:19:55 -10:00
J. Nick Koston and Claude Opus 4.6
49cc389bf0
[esp32] Wrap printf/vprintf/fprintf to eliminate _vfprintf_r (~11 KB flash) ( #14362 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-27 17:28:05 -10:00
J. Nick Koston
e7d4f2608b
[sen6x] Fix test sensor ID collisions with sen5x ( #14367 )
2026-02-27 16:01:17 -10:00
Jonathan Swoboda and Copilot
298ee7b92e
[gps] Fix codegen deadlock when automations reference sibling sensors ( #14365 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-02-27 19:08:42 -05:00
b9d70dcda2
[sen6x] Add SEN6x sensor support ( #12553 )
...
Co-authored-by: Martin Ebner <martinebner@me.com >
Co-authored-by: Tobias Stanzel <tobi.stanzel@gmail.com >
Co-authored-by: Big Mike <mike@bigmike.land >
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-02-27 16:41:28 -05:00
Clyde Stubbs
2255c68377
[esp32] Enable execute_from_psram for P4 ( #14329 )
2026-02-28 06:40:55 +11:00
J. Nick Koston
29e1e8bdfd
[wifi] Add LibreTiny component test configs ( #14351 )
2026-02-27 18:45:20 +00:00
Michael Cassaniti and Jonathan Swoboda
4ae7633418
[safe_mode] Add feature to explicitly mark a boot as successful ( #14306 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-02-27 13:23:02 -05:00
72ca514cc2
[esp32_hosted] Add configurable SDIO clock frequency ( #14319 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Deirdre <obyrne@rk1.lan >
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-02-27 17:25:53 +00:00
J. Nick Koston and Claude Opus 4.6
0f7ac1726d
[core] Extend fast select optimization to LibreTiny platforms ( #14254 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-27 06:03:37 -10:00
bd3f8e006c
[esp32_ble] allow setting of min/max key_size and auth_req_mode ( #7138 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-02-27 06:02:29 -10:00
4044520ccc
[esp32_touch] Migrate to new unified touch sensor driver (esp_driver_touch_sens) ( #14033 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-02-26 20:38:36 -10:00
J. Nick Koston and Claude Opus 4.6
1ccfcfc8d8
[time] Eliminate libc timezone bloat (~9.5KB flash ESP32, ~2% RAM on ESP8266) ( #13635 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-26 15:12:44 -10:00
Oliver Kleinecke
54edc46c7f
[esp_ldo] Add channels 1&2 support and passthrough mode ( #14177 )
2026-02-27 07:12:52 +11:00
J. Nick Koston
ae16c3bae7
Add socket compile tests for libretiny platforms ( #14314 )
2026-02-26 08:25:36 -10:00
J. Nick Koston
a05d0202e6
[core] ESP32: massively reduce main loop socket polling overhead by replacing select() ( #14249 )
2026-02-26 06:21:27 -10:00
Jonathan Swoboda and Copilot
0d5b7df77d
[sensor] Fix delta filter percentage mode regression ( #14302 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-02-25 19:32:02 -05:00
J. Nick Koston
8bb577de64
[api] Split ProtoVarInt::parse into 32-bit and 64-bit phases ( #14039 )
2026-02-25 12:23:13 -06:00
J. Nick Koston
1dac501b04
[light] Add additional light effect test cases ( #14266 )
2026-02-24 21:39:51 -06:00
Clyde Stubbs
4abbed0cd4
[mipi_dsi] Allow transform disable; fix warnings ( #14216 )
2026-02-24 08:33:33 -05:00