Help on how to add "toys" to my BLE proxy

Hello,

Long time user of tasmota, total newbie to ESPHome.

I got some bluetooth esp8266’s (I think), and I followed the quick instructions from the ESPHome site to make them into BT proxies. I got 3 of them working great, and at the moment they are only connecting to mmwave sensors and sending the info to HA.

I have learned that to find good tutorials it helps to have keywords, and I don’t seem to have the correct ones since I am not finding what I am looking for.

The Esp;s I have set up as proxies are ONLY working as proxies, so not using any of the pins. How would I go about getting control of some of those pins to connect to relays, buttons, etc?

Also, interested in using the BT proxies to detect cell phones BT signal. Thinking of automation based on the different cell phone movements around the house.

I didn’t think esp8266’s had bluetooth as standard(I could be wrong). Post a picture of the devices and someone may be able to help

In the back of my head I was thinking about what you mentioned, and doubted if I was using 8266’s or not, which is why I added the “I think” part lol.

I am actually using Live Mini Kit ESP32’s for my BT or BLE (not sure which is the correct term) proxies.

Specifically the CH9102 Type-C USB

GPIO relay

Search the documents in esphome. It does all that stuff about using the rest of the gpio pins. Bluetooth shares 2.4ghz with wifi so not ideal to use both wifi and bluetooh together for alot of stuff. How have you setup your proxies? Written the yaml yourself or adopted a device in? Proxies probably not good for phones as bluetooth changes mac frequently for phones for security apparently. Bluethooth proxy only good for some stuff an not all bluetooth things.

I used the ready made installer Ready-Made Projects — ESPHome on a generic ESP. It took care of the flashing of the esp and then took care of the HA integration. It was so easy I had no idea what it did, nor which would be the yaml files I would modify in order to use the other pins.

Not sure what you mean not a good idea to use bt and wifi togehter for a lot of things. If I am understanding correctly, currently my esp’s are getting info from my mmWave sensors, and sending that info to HA via wifi. I am assuming I could also send commands/input to the ESP via wifi to control the onboard pins, ie turn on a relay. Or is much more complicated than that so I am better of using those ESP’s as Bluetooth proxies only, and flash some 8266s if I need more pins for my setup?

Also, didn’t understand about the phones BT mac address. The Mac address of the BT the phones send change often?

substitutions:
  name: esp32-bluetooth-proxy
  friendly_name: Bluetooth Proxy

esphome:
  name: ${name}
  friendly_name: ${friendly_name}
  name_add_mac_suffix: true
  project:
    name: esphome.bluetooth-proxy
    version: "1.0"

esp32:
  board: esp32dev
  framework:
    type: esp-idf

wifi:
  ap:

api:
logger:
ota:
improv_serial:

dashboard_import:
  package_import_url: github://esphome/firmware/bluetooth-proxy/esp32-generic.yaml@main

esp32_ble_tracker:
  scan_parameters:
    # We currently use the defaults to ensure Bluetooth
    # can co-exist with WiFi In the future we may be able to
    # enable the built-in coexistence logic in ESP-IDF
    active: true

bluetooth_proxy:
  active: true

button:
  - platform: safe_mode
    name: Safe Mode Boot
    entity_category: diagnostic

This is the yaml your adopted device uses. Adjust it and reflash your esp32 as a new device if you can’t access the yaml of the current device on esphome.

Esphome page Bluetooth proxy explains a lot about it. I believe many phones have a mac that changes over a period of time/when restarted so may not be useable as a presence detector.

You can turn this off on Android by going to Settings > Wifi > (your network) > Privacy > Use device MAC.

There’s also another option hidden in Developer Options called WiFi non persistent MAC randomisation, but I believe that’s switched off by default

1 Like