А расскажите, кто знает - как можно сделать мост BLE-Wi-Fi, чтобы BLE-девайсом управлять через какой-нибудь умный дом?
Я нашел пока только Home Assistant в связке с ESPHome, там что-то даже работает. Но пока там у меня больше вопросов, чем ответов, но какие-то возможности там есть. Может, кто-то что-то уже делал, может, какие-то другие подходы есть?
Я нашел пока только Home Assistant в связке с ESPHome, там что-то даже работает. Но пока там у меня больше вопросов, чем ответов, но какие-то возможности там есть. Может, кто-то что-то уже делал, может, какие-то другие подходы есть?
Код:
substitutions:
name: ble-client
platform: ESP32
board: esp-wrover-kit
esphome:
name: $name
platform: $platform
board: $board
wifi:
ssid: '***'
password: *******
# Fallback portal
captive_portal:
# Logging
logger:
# Uncomment this if you use Home Assistant
api:
ota:
esp32_ble_tracker:
scan_parameters:
interval: 300ms
window: 300ms
active: true
ble_client:
- mac_address: A4:C1:38:3D:E2:FF
id: SWBDdrv_mc5
on_connect:
then:
- lambda: |-
ESP_LOGD("ble_client_lambda", "Connected to BLE device");
on_disconnect:
then:
- lambda: |-
ESP_LOGD("ble_client_lambda", "Disconnected from BLE device");
text_sensor:
- platform: ble_client
ble_client_id: SWBDdrv_mc5
name: "Read from swingbed"
service_uuid: 'ffe0'
characteristic_uuid: 'ffe1'
notify: true
# - platform: ble_scanner
# name: "BLE Devices Scanner"
switch:
- platform: template
name: "Bed verlichting"
id: bed_verlichting
icon: "mdi:lightbulb-outline"
optimistic: true
turn_on_action:
- ble_client.ble_write:
id: SWBDdrv_mc5
service_uuid: ffe0
characteristic_uuid: ffe1
# List of bytes to write.
value: [0x40, 0x20, 0x72, 0x00, 0x08, 0xde, 0x00, 0x01, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x40]
turn_off_action:
- ble_client.ble_write:
id: SWBDdrv_mc5
service_uuid: ffe0
characteristic_uuid: ffe1
# List of bytes to write.
value: [0x40, 0x20, 0x72, 0x00, 0x08, 0xdf, 0x00, 0x01, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x40]