Published on

Bluetooth Proxy In Home Assistant Using ESPHome

Authors
  • avatar
    Name
    Tal
    Twitter

In this post, I'll walk you through installing ESPHome and flashing Bluetooth Proxy on an ESP32 device. We'll then connect a BLE device to Home Assistant for a seamless integration. Let's dive in!

What Is a Bluetooth Proxy?

A Bluetooth proxy is a type of gateway software that listens for Bluetooth traffic and forwards it to your Home Assistant instance, essentially acting as a bridge between Bluetooth Low Energy (BLE) and WiFi networks. In other words, the Bluetooth proxy enables devices with Bluetooth capabilities to communicate with your Home Assistant hub even if they are not within Bluetooth range. By relaying the Bluetooth signals over WiFi, the proxy effectively extends the range of your Bluetooth network.

Use Cases For a Bluetooth Proxy

The ESPHome Bluetooth Proxy is useful in two cases:

  1. If your Home Assistant hub lacks Bluetooth support, it's a better option than buying an additional Bluetooth USB dongle because you can connect multiple proxies to create a "mesh" like network.
  2. If you want to expand your Bluetooth coverage, the proxy can be placed in a different room to automatically extend the coverage utilizing your WIFi network.

Required Hardware For The ESPHome Bluetooth Proxy

To successfully complete this project, you'll need a few items:

  1. ESP32 development board: This board features an ESP32 chip with integrated Bluetooth and WiFi capabilities, along with a USB interface for power and flashing.

ESP32S Board

M5Stack Atom Lite

  1. 5V USB power supply: You'll need a power supply that can provide at least 0.5 amps. An old cellphone charger can work well for this purpose.
  2. Micro USB cable: You'll need a micro USB cable to connect the ESP32 development board to your computer or power supply.
  3. Optional: Plastic enclosure or 3D printed case: If you want to protect your ESP32 devkit, you may consider using a plastic enclosure or a 3D printed case that fits the dimensions of the board.

Installing ESPHome Bluetooth Proxies

Firstly, open the following URL in Chrome or Edge browser - https://esphome.github.io/bluetooth-proxies/. This page will allow you to connect your ESP32 device to your computer using a USB data cable.

Next, click the "Connect" button and select the port on which your ESP32 device is connected. If you don't see your device listed, try changing the USB cable to a data cable. If this still doesn't work, you can try installing Windows or Mac drivers from the provided links.

Once you've successfully connected your ESP32 device, click on the INSTALL ESP32 GENERIC button:

INSTALL ESP32 GENERIC

followed by the Install button. This will start the installation process, and to ensure no slow-downs or errors, keep the installation page visible and on focus throughout the process.

Confirm popup

When the installation is complete, click the Next button and enter your Wi-Fi credentials. Then click the Connect button:

INSTALL ESP32 GENERIC

And you're done! You can now add the ESPHome Bluetooth Proxy to your Home Assistant.

Troubleshooting

If you recieved this error:

error message

Make sure to hold the boot button before installing.

Adding Bluetooth Proxy To Home Assistant

Now that you've successfully installed the ESPHome Bluetooth Proxy, it's time to add it to your Home Assistant.

Once you have completed the installation process, you will be prompted to add the device to Home Assistant by clicking on the "Add to Home Assistant" button. You will be able to add your Bluetooth proxy from there.

error message

Alternatively, you can go to the Home Assistant Integrations page, where you'll find the ESPHome Bluetooth Proxy ready to be configured. Simply click the "Configure" button to add it to Home Assistant.

discover message

Where to place the ESPHome Bluetooth Proxy?

Positioning your ESPHome Bluetooth Proxy correctly is crucial for reliable connectivity with your BLE devices. Place the proxy between your router and Bluetooth devices, ensuring that it's in range of your Wi-Fi network. With the proxy in the right position, you can take full control of your bluetooth devices and enjoy seamless automation with Home Assistant.

Conclustion

The ESPHome Bluetooth Proxy is a great solution to extend your Bluetooth range and integrate your devices into Home Assistant. After installation and configuration, the proxy should pass all Bluetooth device data directly to Home Assistant. It's reliable and stable, and you can easily expand the range by adding more proxy devices throughout your home.