mirror of
https://github.com/esphome/esphome.git
synced 2026-09-11 15:27:33 +00:00
Advertising was started when the BLE server came up and never stopped, so a device that auto-loads esp32_ble_server for esp32_improv advertised over BLE forever - even with WiFi connected and Improv never started. Components now request advertising with advertising_start() and release it with advertising_stop(); the radio only advertises while at least one request is held. The BLE server only requests it when the configuration defines services or manufacturer data of its own, Improv holds a request for as long as provisioning is possible, and a beacon holds one permanently. Fixes https://github.com/esphome/esphome/issues/18938