J. Nick Koston
632e8fddf7
Merge rp2-lwip-seg-pool-and-heap into rp2-3-connection-slots for hardware testing
2026-08-10 22:16:29 -05:00
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
J. Nick Koston
4921f6b6e7
Merge branch 'dev' into rp2-3-connection-slots
2026-08-10 21:47:31 -05: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
J. Nick Koston
f28d991ae9
Fix two stale comments
2026-08-10 18:25:41 -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
J. Nick Koston
6c29bbc506
Initiate cached connections at medium parameters and dispose stale successes
2026-08-10 18:05:41 -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
J. Nick Koston
d3dc97d42d
Tear down a handle stamped mid-escalation and pin the wrap flags literally
2026-08-10 17:53:31 -05:00
J. Nick Koston
63ce235937
Request OTA state listeners from the backend that uses them
2026-08-10 17:39:25 -05:00
J. Nick Koston
dcc89ab985
Decide the timeout escalation under the lock and drop links at OTA start
2026-08-10 17:38:16 -05:00
J. Nick Koston
c58e5ad8d5
Settle cached connections to medium parameters on link-up
2026-08-10 17:32:01 -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
J. Nick Koston
9d1506c9e0
Fix the remaining stale pool attribution in the rp2 schema docstring
2026-08-10 17:16:14 -05:00
J. Nick Koston
ff3e14099c
Point the slot range message at rp2040_ble and explain the import split
2026-08-10 17:14:24 -05:00
J. Nick Koston
6ceca44023
Tear down unowned late links and make the cleanup handle reset lock-atomic
2026-08-10 17:02:54 -05:00
J. Nick Koston
5c2c11f6cb
Build the shared rp2350 target on rpipico2w and test the slot accounting
2026-08-10 17:00:43 -05:00
J. Nick Koston
0429d05859
Move BTstack pool ownership into rp2040_ble and count connection slots like esp32_ble
2026-08-10 16:56:57 -05:00
J. Nick Koston
f90027f7c5
Anchor the wrap guards from live code and cover the rp2350 link
2026-08-10 16:48:38 -05:00
J. Nick Koston
7bc02eb25a
Merge branch 'rp2-3-connection-slots' of https://github.com/esphome/esphome into rp2-3-connection-slots
2026-08-10 16:42:47 -05:00
J. Nick Koston
e7412865d6
Merge branch 'dev' of https://github.com/esphome/esphome into rp2-3-connection-slots
2026-08-10 16:38:22 -05:00
J. Nick Koston
b8c0ea14d9
Merge branch 'dev' into rp2-3-connection-slots
2026-08-10 16:38:18 -05:00
J. Nick Koston
c53cc5f7d4
Drop addressed completions that do not match the owner's peer
2026-08-10 16:18:04 -05:00
J. Nick Koston
5b7a6d4e81
Anchor all four wrap symbols, add 2-slot coverage, log outside the lock
2026-08-10 16:09:17 -05:00
J. Nick Koston
03a39597e8
Bound a lost cancel completion to a short budget and re-issue the cancel on escalation
2026-08-10 16:06:37 -05:00
J. Nick Koston
14f6f834f1
Route connection-complete events by ownership, not address
2026-08-10 15:59:50 -05:00
J. Nick Koston
af1bbd16e5
Restart the connect timer when a client cancel lands at the deadline
2026-08-10 15:54:30 -05:00
J. Nick Koston
16bcba31ed
Enter CONNECTING before the lock releases so an instant completion routes
2026-08-10 15:41:34 -05:00
J. Nick Koston
2a936c8b76
Move peer_addr_type_ to the word-sized member group
2026-08-10 15:35:27 -05:00
J. Nick Koston
4f98bc4baf
Apply review feedback: owner-matched release, retry throttle, wrap link guards, slot-tagged logs
2026-08-10 15:31:58 -05:00
J. Nick Koston
d5497f3c43
Simplify pool wrap init and connect serialization paths
2026-08-10 15:19:55 -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
ff56ba16bd
[bluetooth_connection] Support 3 connection slots on rp2
2026-08-10 15:12:30 -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