• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Мост BLE-Wi-fi

aloika

Active member
А расскажите, кто знает - как можно сделать мост BLE-Wi-Fi, чтобы BLE-девайсом управлять через какой-нибудь умный дом?
Я нашел пока только 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]
 

pvvx

Активный участник сообщества
Не понятен сам заголовок - Мост ...
Нет такого. И имеющиеся, называемые "шлюзом" или "gateway" ими не являются.

Вы лучше опишите хотя-бы направление, что хотите от так называемого "моста ...". Тогда можно будет что-то сказать...
 

aloika

Active member
Не понятен сам заголовок - Мост ...
Нет такого. И имеющиеся, называемые "шлюзом" или "gateway" ими не являются.

Вы лучше опишите хотя-бы направление, что хотите от так называемого "моста ...". Тогда можно будет что-то сказать...
Хочу чтобы было устройство, которое бы "пробрасывало" BLE в Home Assistant, например. Или в другую какую систему. Функции: сканирование, соединение с нужным девайсом, запись в характеристику, нотификация из характеристики. В целом хотелка типа такой - "управлять BLE-девайсом через интернет".
 

sL0n1k

Member
Ха, однако правильные вопросы задаете ))
Для этого не нужен хоме асс, как и любой другой асс))


Ставите одноплатник, на нем удаленно (с помощью ssh) запускаете нужные скрипты, под нужное BT устройство в нужное для вас время. Скрипты, конечно под разное BLE пишите сами, ну или выдергиваете из того же асса, который хоме ))
Написание таких скриптов (bash, питон, перл) - дело нехитрое и недолгое, если есть док, но сейчас док можно на все найти (или отреверсить в крайнем-крайнем) Можете даже эмулировать одноплатником любые девайсы, например Xiaomi термометры, а реально датчики использовать разные.
 

aloika

Active member
Ха, однако правильные вопросы задаете ))
Для этого не нужен хоме асс, как и любой другой асс))


Ставите одноплатник, на нем удаленно (с помощью ssh) запускаете нужные скрипты, под нужное BT устройство в нужное для вас время. Скрипты, конечно под разное BLE пишите сами, ну или выдергиваете из того же асса, который хоме ))
Написание таких скриптов (bash, питон, перл) - дело нехитрое и недолгое, если есть док, но сейчас док можно на все найти (или отреверсить в крайнем-крайнем)
Не, скрипты по ssh - не вариант. Есть устройство BLE, бытовое, для домохозяек. Есть приложения для управления им, для андроида и айОс, написанные на флаттере. Всё работает, но некоторым людям хочется управлять устройством вообще удаленно, с работы, например. И одновременно ещё наблюдать через камеру, что там происходит. На каком-то едином интерфейсе. И вот я и подумал, что Хоум Ассистант - как вариант.
 

pvvx

Активный участник сообщества
WiFi мешает BLE, BLE мешает WiFi.
В итоге антенны надо разносить от пол метра.
Иначе выйдет бяка с дисконектами и работать с BLE/WiFi только рядом.

Существует такое - CH32V208W. У него есть Ehternet. В примерах есть одновременная работа BLE + Ehternet + MQTT. Остается соединить, т.к. в примерах они почему-то не передают между собой ничего. Так китайцы примеры там задумали :)
Из другого примера вписываете DHCP и соединение с BLE. Делов-то на пару вечеров с отладкой полного шлюза.
Частично уже проверил - всё пашет
 

pvvx

Активный участник сообщества
Не, скрипты по ssh - не вариант.
Зачем на SSH?
Проше в любом OpenWRT на чем угодно накалякать.
Но это на 100 руб дороже в комплектации.
Есть несколько вариантов.
1. Немного сложный, но уже корпус и всё есть
1707485949521.png
В него модуль BLE за 100 р к выводам UART и сложная часть - вписать туда OpenWTR на Qualcomm QCA9533, т.к. готового на OpenWTR нет, есть только что-то непонятное от TP-Link...
2. На али куча разных плат от старых мелких WiFi роутеров yна которые сеть готовые OpenWTR ценами около 200..300 руб (если покупать 1 шт :) ).
1707486637538.png
Но это надо паять, корпус и БП лепить...:cautious: Включал - всё хорошо с OpenWTR, но далее лень...
Жрут они меньше ESP, WiFi и Ethernet есть, где как - с разъемом или без...
 

pvvx

Активный участник сообщества
"от старых" - в смысле платы новые, но чипы устаревшие - RT5350... 32MB RAM, SPI Flash какая нибудь, но старых OpenWRTна них тьма..
 

pvvx

Активный участник сообщества
WiFi ретранслятор на Qualcomm QCA9533 - 2x2 MIMO - 4-ре встроенных антенны, 32MB RAM, SPI-Flash...
 

pvvx

Активный участник сообщества
И цены указаны с доставкой из истории пришедшего с али хлама за последний месяц...
 

pvvx

Активный участник сообщества
Роутер Yoobao YB-658
Сообщение с али
  • Это плата от powerbank со встроенным Wifi-роутером Yoobao YB-658. Питается от 5 Вольт, питание подается на первый (+) и пятый пин (gnd). При включении поднимает точку доступа YOOBAO_XXXX c паролем YOOBAO123. UART работает на скорости 57600. Дальше пока не разбирался

 

pvvx

Активный участник сообщества
Грузится 30 сек с подключением к другому роутеру и своей AP.
1707536486634.png
ток по 5В.
 
Сверху Снизу