J. Nick Koston
c7bf312b1b
[rp2] Size the lwIP segment pool and heap for concurrent senders
...
Two lwIP values on rp2 were copied from ESP32, where MEM_LIBC_MALLOC=1
and MEMP_MEM_MALLOC=1 make them labels rather than caps. On rp2 they
are static pools and a fixed heap, so they became hard limits.
MEMP_NUM_TCP_SEG is a global pool but was set to TCP_SND_QUEUELEN (17),
which is per-PCB. lwIP's sanity check only demands >=, so that is the
floor for a single connection: one busy PCB could drain the pool for
every other PCB, including the other API connections, mDNS and
web_server. Size it to 2x the per-PCB queue instead, which costs about
340 bytes.
MEM_SIZE stayed at arduino-pico's 16KB. TCP_OVERSIZE defaults to
TCP_MSS, so one PCB holding a full TCP_SND_BUF pins about 6KB; two
connections exhausted the heap while api's max_connections on rp2 is 4.
Raise it to 32KB, which is arduino-pico's own next tier.
Either limit surfaces the same way: ERR_MEM from tcp_write(), then
EWOULDBLOCK, then a refused send_message().
The docstring now records why MEMP_MEM_MALLOC=1 is not the answer here,
since it looks like the obvious fix and is not. lwIP's heap takes its
protection from LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT, which defaults
to 0, so under NO_SYS=1 mem_malloc() and mem_free() are unprotected,
and memp.c calls mem_malloc() outside SYS_ARCH_PROTECT. Routing RX pbuf
allocation through it lets the pendsv IRQ race the main loop on one
unguarded free list; that faults within seconds on CYW43.
Also fixes two stale comments in api_frame_helper.h that still claimed
rp2 uses an 8xMSS send buffer; it has been 4xMSS since #14843 .
RAM cost on tests/components/bluetooth_proxy/test.rp2040-ard.yaml is
16,724 bytes, leaving about 162KB for the heap.
2026-08-10 22:15:42 -05:00
J. Nick Koston
51b0240fb8
[rp2] Fix %f formatting in logs ( #18256 )
2026-08-10 22:05:19 -05:00
Jesse Hills
f697cf2011
[api] Add DeviceCapabilities message for optional-feature flags ( #17984 )
2026-08-11 14:52:19 +12:00
Jesse Hills
8728aaa616
[core] Use MAC address size constants in BLE components ( #18252 )
2026-08-11 14:21:03 +12:00
J. Nick Koston
eab9a47aa2
[bluetooth_proxy] Retry dropped services-done, disconnect and scanner-state notifications ( #18225 )
2026-08-11 14:20:39 +12:00
Jesse Hills
c2ba2fbfc4
[ld24xx] Use MAC address size constants instead of literals ( #18253 )
2026-08-11 14:18:09 +12:00
J. Nick Koston
3de01d2a2e
Bump aioesphomeapi to 45.8.0 ( #18251 )
2026-08-10 19:56:35 -05:00
dependabot[bot]
791d6659c0
Bump platformdirs from 4.11.0 to 4.11.1 ( #18250 )
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-11 00:43:35 +00:00
Boris Krivonog and J. Nick Koston
007c677da1
[mitsubishi_cn105] Refactor property encoding/decoding ( #16709 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-10 18:58:34 -05:00
Bonne Eggleston and Claude Fable 5
2a0f2d59f0
[modbus_server] Add coil/discrete-input support ( #17464 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-10 18:13:12 -05:00
c8d2c3691a
[mitsubishi_cn105] Add vertical vane direction select ( #16723 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-08-10 17:58:37 -05:00
Josef Zweck and J. Nick Koston
82a63658f9
[hoermann_hcp] Add Hörmann HCP garage door component ( #17355 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-10 17:20:20 -05:00
Bonne Eggleston
596827c51c
[modbus_client] Add read/write multiple registers (FC 0x17) ( #18215 )
2026-08-10 15:18:48 -05:00
J. Nick Koston
8a16ead8ce
[web_server] Fix basic auth with long credentials ( #18237 )
2026-08-10 14:49:14 -05:00
dependabot[bot]
334afdefb5
Update argcomplete requirement from >=3.7.0 to >=3.7.2 ( #18243 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-10 15:44:32 -04:00
dependabot[bot]
e7a2980b9c
Bump ruff from 0.16.1 to 0.16.2 ( #18245 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-10 15:44:30 -04:00
dependabot[bot]
b5a78c6c46
Bump CodSpeedHQ/action from 5.0.2 to 5.0.3 ( #18246 )
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-10 19:36:22 +00:00
dependabot[bot]
8650d175f4
Bump aiohappyeyeballs from 2.6.2 to 2.7.1 ( #18244 )
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-10 14:26:41 -05:00
2999e7b925
[modbus] Add API for reading/writing coils and discrete inputs in server mode ( #17264 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-10 14:23:49 -05:00
207ae2e4cb
[bk72xx_ble] Support active scanning by packing the GAPM start command ( #18169 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: bdraco <663432+bdraco@users.noreply.github.com >
2026-08-10 14:02:37 -05:00
Boris Krivonog
9e78a768a2
[mitsubishi_cn105] Extract top-level hub ( #16987 )
2026-08-10 14:02:16 -05:00
J. Nick Koston
e4d08a73b0
[ufm01] Prefix PassiveReadResult enumerators to avoid Realtek SDK macro collision ( #18240 )
2026-08-10 13:03:01 -05:00
J. Nick Koston
4cf7ad9c63
[ble_device_base] Treat a partially bound merger as unbound ( #18235 )
2026-08-10 13:02:27 -05:00
J. Nick Koston
293d0b90d9
[core] Document enum class value naming to avoid platform SDK macro collisions ( #18241 )
2026-08-10 13:02:02 -05:00
J. Nick Koston
8f1e439792
[bluetooth_proxy] Finish the connection scan before reserving a slot ( #18239 )
2026-08-10 12:56:16 -05:00
J. Nick Koston
ad733272e5
[bluetooth_proxy] Pair the advertisement flush time with hub_ to close alignment holes ( #18234 )
2026-08-10 12:40:22 -05:00
J. Nick Koston
b7c6245388
[wifi] Save fast connect settings and reset roaming bookkeeping after driver initiated roams ( #18167 )
2026-08-10 12:39:32 -05:00
2184ec2928
[ethernet] Add CH390 SPI ethernet support ( #18226 )
...
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-10 12:24:16 -05:00
J. Nick Koston
bae7f19323
[core] Extend '/' in names deprecation window to 2027.7.0 ( #18236 )
2026-08-10 11:32:02 -05:00
56ec21d950
[ufm01] Improve startup with reset retry and passive polling fallback ( #17567 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-08-10 12:31:31 -04:00
J. Nick Koston
2798ef4de2
[ota] Enforce the backend contract with a concept ( #18192 )
2026-08-10 11:20:38 -05:00
J. Nick Koston
e90b4abe9c
[core] Enforce the preferences contracts with concepts ( #18191 )
2026-08-10 11:20:24 -05:00
J. Nick Koston
f3d1fc0d64
[bluetooth_proxy] Migrate esp32 onto the neutral GATT backend ( #18198 )
2026-08-10 10:47:56 -05:00
J. Nick Koston
c8c929d487
[ble_device_base] Merge adv and scan response before delivery on rp2 ( #18217 )
2026-08-10 10:06:06 -05:00
J. Nick Koston
d9567b2974
Normalize marker-wrapped callable keys in the schema dump ( #18218 )
2026-08-10 10:05:37 -05:00
J. Nick Koston
02fa18b74f
[core] Skip colorama init for terminal and dashboard runs ( #18224 )
2026-08-10 09:44:01 -05:00
Kevin Ahrendt
3656375516
[sendspin] Bump sendspin-cpp to v0.7.1 ( #18232 )
2026-08-10 09:00:29 -05:00
Mustafa KURU and Jonathan Swoboda
b0a9bfd381
[ld6002b] Add area and zone configuration (5/5) ( #17823 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-08-10 09:59:32 -04:00
J. Nick Koston
25cb440005
[core] Use Happy Eyeballs for remote file downloads ( #18050 )
2026-08-10 17:29:00 +12:00
J. Nick Koston
0f59ef36a9
[core] Store the validated-config cache as JSON to drop YAML off the upload fast path ( #18106 )
2026-08-10 17:26:41 +12:00
esphome[bot]
3de8c7f95c
Bump bundled esphome-device-builder to 1.9.5 ( #18223 )
2026-08-10 01:49:54 +00:00
Jesse Hills
989dbd7550
[ci] Name release runs after the version or dev tag they build ( #18110 )
2026-08-10 10:10:38 +12:00
ab12e5490f
[modbus] Rename send_pdu() to queue_pdu() ( #18196 )
...
Co-authored-by: Claude <noreply@anthropic.com >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-09 17:00:44 -05:00
J. Nick Koston
e9f428983e
[ble_device_base] Bind BLEHub to the build's tracker at compile time ( #18181 )
2026-08-09 08:57:31 -05:00
J. Nick Koston
862b13c8dd
[esp32_ble_tracker] Retire the scanner-state listener interface ( #18179 )
2026-08-08 20:58:48 -05:00
Edu_Coder
2bb01853e0
[tuya] GMT time 0x0C command handler ( #17158 )
2026-08-08 17:53:10 -07:00
J. Nick Koston
c7d6b4aaa4
[esp32_ble_tracker] Retire the raw listener path and parser-type enum ( #18177 )
2026-08-08 19:13:07 -05:00
J. Nick Koston
8c74e3d5ef
[bluetooth_proxy] Deliver scanner state through the hub callback ( #18175 )
2026-08-08 15:59:49 -05:00
J. Nick Koston
04384e0f5b
[ble_device_base] Bind the GATT backend at compile time ( #18185 )
2026-08-08 15:59:32 -05:00
J. Nick Koston
7218aa4803
[bluetooth_connection] Explicit pairing for rp2 ( #18166 )
2026-08-08 09:51:12 -05:00