Files
esphome/templates/btproxy.yaml
T
2026-05-05 19:28:23 +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"