ESPHome Bluetooth Proxy ESP32-C3 YAML
ESPHome YAML Configuration to create an ESP32-C3 Home Assistant Bluetooth Active Proxy. In layman's terms, it is a remote network attached Bluetooth adapter Home Assistant can use to communicate with Bluetooth devices. For instance, put one in your backyard to pick up temperature sensors in the pool and greenhouse; list of Bluetooth Compatible Devices
Thanks to Cossid on Discord for help with config options to get this booting correctly! This file can be used as a base to adapt to other ESP32-C3 Devices such as SwitchBot Plugs, Bulbs, or even just ESP32-C3 NodeMCU Dev Boards.
The YAML
substitutions:
display_name: esp32c3-btproxy
esphome:
name: ${display_name}
platformio_options:
board_build.mcu: esp32c3
board_build.variant: esp32c3
# added the line below to prevent bootloops when flashing modern bin via serial
board_build.flash_mode: dio
esp32:
variant: ESP32C3
board: esp32-c3-devkitm-1
framework:
type: esp-idf
sdkconfig_options:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED: y
CONFIG_BT_BLE_42_FEATURES_SUPPORTED: y
CONFIG_ESP_TASK_WDT_TIMEOUT_S: "10"
logger:
api:
ota:
platform: esphome
button:
- platform: safe_mode
name: ${display_name} (Safe Mode)
# Change the WiFi config to a non-static IP if needed
wifi:
ssid: !secret wifi_myssid
password: !secret wifi_mypass
manual_ip:
static_ip: !secret ip_esp32c3_btproxy
gateway: !secret ip_gateway
subnet: !secret ip_subnet
dns1: !secret ip_dns1
esp32_ble_tracker:
scan_parameters:
# Adjust timing if the defaults do not work in your environment
# interval: 1100ms
# window: 1100ms
active: true
bluetooth_proxy:
active: true