Files
2026-07-12 12:56:02 +00:00

57 lines
1.2 KiB
YAML

# Remember to enable HA API (api.yaml) for the proxy to be available.
esp32:
# Required for BLE.
framework:
type: esp-idf
packages:
# Allow HomeAssistant to use the proxy.
api: !include api.yaml
globals:
- id: ble_scans
type: int
restore_value: no
initial_value: "0"
esp32_ble_tracker:
scan_parameters:
# Recommended scan intervals for esphome.
interval: 1100ms
window: 1100ms
active: true
on_scan_end:
- then:
- sensor.template.publish:
id: ble_scans_finished
state: !lambda "return ++id(ble_scans);"
- script.execute: restart_after_delay
bluetooth_proxy:
id: btproxy
active: true
connection_slots: 4 # recommended limit for ESP32 Ethernet
esp32_ble:
max_connections: 4
script:
- id: restart_after_delay
mode: restart
then:
- delay: 15min
- logger.log:
level: ERROR
format: "No recent successful Bluetooth scan, restarting ESP chip"
- button.press: restart_button
sensor:
- platform: template
name: "BLE scans finished"
id: ble_scans_finished
state_class: "total_increasing"
accuracy_decimals: 0
entity_category: diagnostic
icon: "mdi:bluetooth-settings"