Skip to content

How to turn an ESP32 board into a Bluetooth proxy for Home Assistant | ESPHome Bluetooth Proxies

ESPHome Bluetooth Proxy label and Kiril Peyanski holding a D1 Mini ESP32 in a 3D printed case

ESPHome Bluetooth Proxies is a brand new way to add Bluetooth support to your Home Assistant or to expand the Bluetooth coverage in your Smart Home. In essence an ESP32 based board is used to communicate with your WIFI, your Home Assistant and your Bluetooth devices.

It is something like a good man in the middle that orchestrate the Bluetooth communication and send it to your Home Assistant over WIFI.

As you might guess in this article I will show you how I managed to make an ESPHome Bluetooth Proxy from start to the very end, step-by-step.

Smart Home Glossary

Meanwhile, if you need some further assistance I have a Smart Home glossary that I put together for you. Download it absolutely for free from my website https://automatelike.pro/glossary and get some useful & simple explanations of the terms & abbreviations that are used in the Smart Home Word in general.

In which cases ESPHome Bluetooth Proxy will be a good fit?

Now without further ado let’s see in which cases the ESPHome Bluetooth Proxies will be a good fit. In general there are two cases:

  1. The first use case will be if your device where Home Assistant is installed doesn’t have a Bluetooth support. That is the case with most of the desktop computers or servers, as well as with the Home Assistant Yellow. So, instead of buying an additional Bluetooth USB Dongle that may turns out to be incompatible or problematic, you better choose the ESPHome Bluetooth Proxy method that I’m about to show you in a minute.
  2. Second use case when the ESPHome Bluetooth Proxy will be a good fit will be, if you want to expand your Bluetooth coverage. As example, imagine that you have a good Bluetooth coverage in two rooms of yours, but the devices in a third room gets disconnected all the time. In such a case ESPHome Bluetooth Proxy will be your saviour. You just have to place the ESPHome Bluetooth Proxy next to that 3rd room or inside it and you will automagically will have a Bluetooth coverage. 
Adding ESPHome Bluetooth Proxy in your Smart Home will expand your Bluetooth coverage
Adding ESPHome Bluetooth Proxy in your Smart Home will expand your Bluetooth coverage

What is needed for the ESPHome Bluetooth Proxies?

If you fell in one of the above categories or you just want to try this out you will need just 3 things to make your own ESPHome Bluetooth Proxy.

  1. The first one is Working Home Assistant. This is essential, as the whole idea here is to add all of your Bluetooth devices in probably the best Smart Home hub available at the moment a.k.a Home Assistant. And If you don’t have Home Assistant yet, why are you still waiting? Go to my Home Assistant webinar available at https://automatelike.pro/webinar and see what are the four official & supported methods to install Home Assistant as well as one super easy way to get started with Home Assistant in under five minutes. The Webinar is completely free and it will take you only around 45 minutes of your time. After that you will know everything to make an informed decision about how to proceed next and what will be best for you. 
  2. Next thing that is needed is an ESP32 board. At the moment 4 boards are supported: A generic ESP32 board, this is for example a D1 Mini ESP32 or similar, M5Stack Atom Lite, Olimex ESP32 ISO that can be powered over ethernet and Wireless-Tag WT32-ETH01. I will use a D1 Mini ESP32 that cost around $7 in AliExpress website, but I will leave some affiliate links of the supported boards in both AliExpress and Amazon. That is if you want to see the current prices of the boards and eventually to buy something.
     D1 Mini ESP32 board
  3. Next, and final thing that is needed is Chrome or Edge Browser, that is because the installation process is supported only with these browsers as well as an USB cable, so you can connect ESP32 based board to your computer.

Installation of ESPHome Bluetooth Proxy

I hope that everything is clear for now, and It is time to start the actual installation of the ESPHome Bluetooth Proxy on a ESP32. The whole installation is very, very easy, as I just have to do the following:

  • To open the following URL in Chrome or Edge browser – https://esphome.github.io/bluetooth-proxies/
  • To connect the ESP32 device (in my case D1 Mini ESP32) to my computer using a data Micro USB cable
  • To click Connect and from the shown dialog select the port on which your ESP32 device is connected and to click on Connect again.

Quick Tip: If you don’t see your device listed in the shown dialog, try to change the Micro USB cable that you are using. Some cables are only for charging and they don’t work, you need a Micro USB data cable. If changing cable doesn’t help, click cancel and you will see links to some Windows & Mac drivers. Try to install them one-by-one until you succeed.

  • Then to click on Install ESP... and then Install buttons. The installation process started and to prevent slow downs or even errors I kept the installation page visible (on focus) all of the time. When I saw the Installation Complete window, I clicked Next button and I entered my WiFI credentials and then I hit Connect button.
  • That is it! Now, I can add the ESPHome Bluetooth Proxy to my Home Assistant.

Add the ESPHome Bluetooth Proxy to Home Assistant

Time to add the ESPHome Bluetooth Proxy In my Home Assistant which again is very easy.

After I successfully installed the ESPHome Bluetooth Proxy I was offered to add the device to Home Assistant by clicking on the link with that text (ADD TO HOME ASSISTANT) when I clicked on it – My Home Assistant link was opened and I was able to add the device to Home Assistant as usual.

The other option was to go to Home Assistant Integrations page and there I saw the ESPHome Bluetooth Proxy ready to be configured.

Configure ESPHome Bluetooth proxy in Home Assistant
Configure ESPHome Bluetooth proxy in Home Assistant

Аfter clicking Configure button and after few more mouse clicks, I had Bluetooth support in Home Assistant. On top, my Bluetooth range was extended.

Where to put the ESPHome Bluetooth Proxy?

The last and final step is to place your ESPHome Bluetooth Proxy somewhere in the middle between your router and your Bluetooth devices and to power it up.

Your ESPHome Bluetooth Proxy (that is the ESP32 device) will try to connect to your WIFI, so you need to have a WIFI coverage on the spot that you want to place it. After that the ESP32 board will start scanning for Bluetooth devices and the recognised and supported ones will start appear in your Home Assistant as new integrations where you just have to configure them.

Recognized Bluetooth devices will be auto discovered by Home Assistant
Recognized Bluetooth devices will be auto discovered by Home Assistant

Then you can start using them in Home Assistant automations & scripts. 

3D Printed case for the ESPHome Bluetooth Proxy

One additional step that is entirely optional and it is up to you will be to print a 3D case for your new ESPHome Bluetooth Proxy.

You can search for a lot of 3D models in a site such as thingiverse.com

For the D1 Mini ESP32 board, I like that one for example:

How to turn an ESP32 board into a Bluetooth proxy for Home Assistant | ESPHome Bluetooth Proxies 1
D1 Mini ESP32 in a 3D printed case

And here is the link to the 3D Model in thingiverse website – https://www.thingiverse.com/thing:3740349

Question for You!

Can you please tell me are you going to try this and for what are you going to use the ESPHome Bluetooth Proxy. Share your answers in the comments and I promise to respond you back.

See you next Wednesday, meanwhile check my recommended article for you.

I’m Kiril and I’m done writing. 

15 thoughts on “How to turn an ESP32 board into a Bluetooth proxy for Home Assistant | ESPHome Bluetooth Proxies”

  1. Hi Peyanski.. I followed your tutorial. all good. but i have some BLE led strips and they dont seem to work with the ESP32 Bluetooth proxy.. any idea why?. Thanks for your amazing tutorials!

  2. Hi Kiril,

    Thanks for your nice work.
    I’m using Bluetooth proxy to extend coverage of Bluetooth devices.
    So far throuth the proxy I can only desciover Alarm Clock Qingping (CGD1), Xiaomi Smart Kettle (YM-K1501) and Xiaomi Temperature/Humidity Sensor (LYWSDCGQ).

    For me most important to use the proxy for Xiaomi MiFlora (Plant monitor – HHCCJCY01. But so far it is only possible through Bluetooth integration (connected to Raspberry Pi 4 B+ directly).

  3. hi
    dose esp Bluetooth proxy support switch-bot motion ,door sensors?
    dose there any list of known supported ble devices for the the esp Bluetooth proxy ?
    thanks

    1. Yes, SwitchBot motion and door sensors are working perfectly with the Bluetooth proxy. I don’t know if there is a list of supported devices anywhere. If there is I also would like to see it 😉

  4. Dumb question … can you use in the same yaml the Bluetooth proxy capabilities to the board as well as something like room assistant?

    1. I tried two Bluetooth related things on one ESP32 board just to see what will happen and exactly as expected only of them worked. So the answer to your question is most probably – No. If you want Bluetooth and some sensor like temperature sensor for example, then it will work 😉 Hope that helps!

  5. Sweet. Took a few tries (and I had to use Chrome instead of Edge) but now I’ve got proxies I can put throughout my condo and solidify my bluetooth access. Thanks for this guide!

Leave a Reply

Your email address will not be published. Required fields are marked *