From 63ce23593715dfb85faac2ff6434818a87a82126 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Mon, 10 Aug 2026 17:39:25 -0500 Subject: [PATCH] Request OTA state listeners from the backend that uses them --- esphome/components/bluetooth_connection/__init__.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/esphome/components/bluetooth_connection/__init__.py b/esphome/components/bluetooth_connection/__init__.py index b8db91c1b2..fa1a86be3a 100644 --- a/esphome/components/bluetooth_connection/__init__.py +++ b/esphome/components/bluetooth_connection/__init__.py @@ -92,6 +92,10 @@ async def _esp32_register(backend: cg.MockObj, config: ConfigType) -> None: async def _rp2_register(backend: cg.MockObj, config: ConfigType) -> None: + from esphome.components import ota + + # The backend drops its link when an OTA starts (esp32 tracker parity). + ota.request_ota_state_listeners() # More than one backend outgrows the prebuilt BTstack pools: swap them for # the ESPHOME_BLE_GATT_CLIENT_COUNT-sized ones in rp2040_ble's # btstack_memory.cpp. Keyed to backend registrations (the same event that