I struggled with this the past couple days as this is my first go at anything involving esp32. I finally got it squared away and am posting it for anyone in the future that needs some help.
So, I finally managed to get this sorted with some help from a member (Cossid) of the digiblur discord. They held my hand and guided me through what was ultimately a simple process. The yaml ultimately needed updating and then pushed to the s10 via the esphome container running on my unraid server.
Here is a copy of the yaml config I used. Under “substitutions” enter your desired name and friendly_name. Then under the “Ethernet” section enter the IP of your bt proxy in the use_address section. Then save the file as a .yaml. I was told the IP address could be removed once you get this update pushed.
After you have your yaml file, go to esphome, create new device, click continue then drag the yaml file to the popup box. You should have a device created. Click the update button to push the yaml file to your device. This will enable ota updates and your s10 should then update itself.
substitutions:
name: gl-s10-garage
friendly_name: Garage Bluetooth Proxy
esphome:
name: ${name}
friendly_name: ${friendly_name}
name_add_mac_suffix: true
project:
name: gl-s10.bluetooth-proxy
version: "2.1"
# turn on Power LED when esphome boots
on_boot:
then:
- output.turn_on: power_led
esp32:
board: esp32doit-devkit-v1
framework:
type: esp-idf
# Configuration fo V2.3 hardware revision
ethernet:
type: IP101
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
phy_addr: 1
power_pin: GPIO5
use_address: 192.168.10.20
api:
logger:
ota:
- platform: esphome
dashboard_import:
package_import_url: github://blakadder/bluetooth-proxies/gl-s10_v2.yaml@main
esp32_ble_tracker:
scan_parameters:
interval: 1100ms
window: 1100ms
active: true
#
# The LED is disabled for ESPHome 2023.6.0+ since we do not
# decode the advertising packets on device anymore, and adding
# the LED blink would force the device to decode the packets
# just to blink the LED.
#
# Bluetooth LED blinks when receiving Bluetooth advertising
# on_ble_advertise:
# then:
# - output.turn_on: bluetooth_led
# - delay: 0.5s
# - output.turn_off: bluetooth_led
bluetooth_proxy:
active: true
button:
- platform: safe_mode
name: Safe Mode Boot
entity_category: diagnostic
## DEVICE SPECIFIC CONFIGURATION
# network LED (white one) configured as status led
status_led:
pin:
number: GPIO32
inverted: true
# button on the side labeled RESET
binary_sensor:
- platform: gpio
pin:
number: GPIO33
inverted: true
name: "Reset Button"
# output settings for LED's marked Power and Bluetooth
# power LED use: see code line 15
# bluetooth LED use: see code line 60
output:
- platform: gpio
pin: GPIO14
inverted: true
id: power_led
- platform: gpio
pin: GPIO12
inverted: true
id: bluetooth_led
# since these pins are broken out inside and labeled as I2C pins they're configured here
i2c:
sda: 15
scl: 13
scan: true