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
Jonathan Swoboda and Claude Opus 4.6
d11e7cab46
[xiaomi_ble][pvvx_mithermometer][atc_mithermometer] Add BLE service data bounds checks ( #14514 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-05 20:18:54 +00:00
e25d740968
[wifi] Cache is_connected() for cheap inline access ( #14463 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-03-05 09:58:58 -10:00
Jonathan Swoboda and Claude Opus 4.6
291679126f
[nfc] Fix off-by-one in NDEF message parsing ( #14485 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-05 09:55:54 -10:00
dependabot[bot]
99a805cba6
Bump the docker-actions group across 1 directory with 2 updates ( #14520 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-05 09:52:10 -10:00
Jonathan Swoboda and Copilot
bb37887a8c
[wled][lcd_base][touchscreen][ee895] Fix off-by-one, buffer overrun, empty deref, and uninitialized pointers ( #14513 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-05 09:51:32 -10: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
Jonathan Swoboda and Claude Opus 4.6
22d90d702d
[usb_cdc_acm][scd4x][pulse_counter][mopeka_std_check][ruuvi_ble] Fix assorted one-liner bugs ( #14495 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-05 09:47:55 -10:00
9961c8180a
[alpha3][mpu6886][emc2101] Fix copy-paste bugs ( #14492 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-03-05 09:47:32 -10:00
d6f3186b3d
[haier][bedjet][vbus][lightwaverf] Fix buffer overflow bugs ( #14493 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-03-05 09:47:10 -10:00
05ddc85412
[rc522][sml][kamstrup_kmp] Fix buffer bounds checks ( #14515 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-03-05 09:46:56 -10:00
Jonathan Swoboda and J. Nick Koston
6f0460b0ee
[sim800l][tormatic][tx20] Fix OOB access, div-by-zero, and off-by-one ( #14512 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-03-05 09:46:47 -10:00
Olivier ARCHER
44d314d069
[GPS] fix component Python declaration to match C++ implementation ( #14519 )
2026-03-05 09:22:37 -10:00
J. Nick Koston
e210e414bd
[ota] Devirtualize OTA backend calls ( #14473 )
2026-03-05 19:15:02 +00:00
Jonathan Swoboda and Claude Opus 4.6
cce7a09fa9
[pn532_spi] Fix preamble check logic and OOB access when full_len is zero ( #14486 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-05 14:09:34 -05:00
e1d0c6da09
[dfplayer][ufire_ise][ufire_ec][qmp6988][atm90e26] Fix wrong operators and masks ( #14491 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-03-05 14:09:23 -05: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
Jonathan Swoboda and Claude Opus 4.6
4a5d8449fd
[sht4x][grove_tb6612fng] Fix logic bugs ( #14497 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-05 08:33:12 -10:00
Jonathan Swoboda and Claude Opus 4.6
3df4ef9362
[ssd1322][ssd1325][ssd1327] Fix nibble mask bug in grayscale draw_pixel ( #14496 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-05 08:31:26 -10:00
Jonathan Swoboda and Claude Opus 4.6
01f4275202
[veml7700] Fix initial settling timeout using raw enum instead of milliseconds ( #14487 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-05 13:16:33 -05:00
Jonathan Swoboda and Claude Opus 4.6
a061397469
[dfrobot_sen0395][sx1509] Fix structural bugs ( #14494 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-05 13:16:06 -05:00
J. Nick Koston
2777d35990
[api] Devirtualize frame helper calls when protocol is fixed at compile time ( #14468 )
2026-03-05 07:21:44 -10:00
J. Nick Koston and Copilot
c49c23d5d9
[network] Inline network::is_connected() and ethernet is_connected() ( #14464 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-05 07:21:04 -10:00
rwrozelle and J. Nick Koston
0e2a10c5f0
[openthread] Cache is_connected() for cheap inline access ( #14484 )
...
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-03-04 17:34:13 -10:00
Clyde Stubbs
f5c37bf486
[packet_transport] Minimise heap allocations ( #14482 )
2026-03-05 14:24:01 +11:00
J. Nick Koston and Claude Opus 4.6
0ff5270632
[ci] Fix codeowner approval label workflow for fork PRs ( #14490 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 16:57:19 -10:00
J. Nick Koston
5df4fd0a27
[tests] Fix flaky uart_mock integration tests ( #14476 )
2026-03-04 15:51:51 -10:00
c0143ac6d6
[ai] Add docs note about keeping component index pages in sync ( #14465 )
...
Co-authored-by: Brandon Harvey <bharvey88@users.noreply.github.com >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-03-04 15:46:40 -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
c6c0dc62eb
[rp2040] Address review feedback for upload improvements
...
- Fix _wait_for_serial_port to use get_serial_ports() instead of
os.access() so it works on Windows COM ports
- Snapshot serial ports before upload and wait for new ports to appear,
preventing false matches on pre-existing serial devices
- Auto-select only newly appeared ports after mass storage upload
- Guard against ZeroDivisionError if UF2 file is empty
2026-03-04 14:03:28 -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
Jonathan Swoboda and Claude Opus 4.6
c8e7f78a25
[zwave_proxy] Fix uint8_t overflow for buffer index and frame end ( #14480 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 18:32:50 -05:00
Jonathan Swoboda and Claude Opus 4.6
b6d7e8e14d
[sgp30] Fix serial number truncation from 48-bit to 24-bit ( #14478 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 18:18:28 -05:00
Jonathan Swoboda and Claude Opus 4.6
55103c0652
[ds2484] Fix read64() using uint8_t accumulator instead of uint64_t ( #14479 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 18:18:14 -05:00
J. Nick Koston and Copilot
61ea6c3b2f
[ci] Add missing issues: write permission to codeowner approval workflow ( #14477 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-04 17:46:26 -05:00
e11a91411b
[esp32_improv][rf_bridge][esp32_ble_server][display][lvgl][pipsolar] Fix unsigned integer underflows ( #14466 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: Clyde Stubbs <2366188+clydebarrow@users.noreply.github.com >
2026-03-04 16:36:52 -05:00
Jonathan Swoboda and Claude Opus 4.6
0c883b80c4
[inkplate][ezo_pmp][ezo][packet_transport] Fix use-after-free bugs ( #14467 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 16:05:49 -05:00
Kevin Ahrendt
4928e678d1
[mixer][resampler][speaker] Use core static task manager ( #14454 )
2026-03-04 14:37:22 -05:00
Jonathan Swoboda and Claude Opus 4.6
22fc3aab39
[ld2420] Fix buffer overflows in simple mode, energy mode, and calibration ( #14458 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 08:19:46 -10:00
Jonathan Swoboda and Claude Opus 4.6
c37ab1de84
[fingerprint_grow] Fix OOB write and uint16 overflow ( #14462 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 12:58:52 -05:00
Jonathan Swoboda and Claude Opus 4.6
246a8bff0c
[pn7160][pn7150][pn532] Fix tag purge skipping, NDEF bounds check, and NDEF length byte order ( #14460 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 12:58:42 -05:00
Jonathan Swoboda and Claude Opus 4.6
9abba79c54
[remote_base][remote_receiver] Fix OOB access in pronto comparison and RMT buffer allocation ( #14459 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 12:58:24 -05:00
Jonathan Swoboda and Claude Opus 4.6
5ba880f19b
[sx127x] Fix preamble MSB register always written as zero ( #14457 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 12:57:45 -05:00
J. Nick Koston
b2e8544c58
[ld2412] Add integration tests with mock UART ( #14448 )
2026-03-04 07:18:31 -10:00