Home assistant container bluetooth

Добавляем поддержку BLE (bluetooth) устройств в Home Assistant

В последней публикации из своей трилогии я расскажу, как добавить поддержку Bluetooth устройств в умный дом на Home Assistant, а также напомню способ установки кастомных компонентов.

Translation to English is here . Также основной канал в telegram .

Первая часть заключалась в том, что я описал купленный стик:

Во второй части я описал как добавить поддержку сервисов Bluetooth в Linux, если таковой у Вас еще нет:

И вот — настало время все соединить воедино. Как я уже объяснил в прошлой статье, на сайте Home Assistant есть как минимум три интеграции, но они нам не нужны. Мы будем использовать интеграцию Passive BLE Monitor integration . Она себя зарекомендовала и множество (тысячи) пользователей установили ее себе и отметили ее на GitHub звездой.

Есть 2 способа установить эту интеграцию: а) Через HACS: писал про это тут:

б) Создаем рядом с файлом конфигурации Home Assistant папку custom_components и копируем в него интеграцию прямо с GItHub из этой папки .

Для копирования файлов на сервер очень удобно использовать ftp. Как его настроить, например, на Windows — писал тут:

1. Копируем файлы в папку или ставим из HACS (↑ описано выше ↑).

2. Далее перезагружаем HA и переходим в интеграции и набираем в поиске BLE. Если пункт №1 выполнен правильно, то найдется интеграция Passive BLE monitor

3. Выберем ее и нажмем «установить»

4. Как только установка закончится, появится менюшка. Если Bluetooth адаптер настроен верно, то мы увидим его в списке ниже(hcl0). Проверим что на нем стоит галка.

Читайте также:  Беспроводные блютуз наушники 2021

4. Я дополнительно установил галку на пункте «авто рестарт», но не уверен, что это требуется — скорее перестраховался.

5. После того, как я нажал кнопку «ок», в квартире мгновенно нашлись 4 устройства. Все устройства были от Xiaomi.

6. Нажимаем «финиш». Интеграция отображается в общем списке. Также показываются устройства и сущности.

7. Давайте нажмем на «устройства»:

8. Давайте нажмем на сущности:

Устройства заведенные в HA таким образом работают точно также как и WiFi или ZigBee устройства. За 2 недели у меня не было пока никаких проблем ни с одним из них. Не требуются никакие сопряжения устройств и прочие танцы с бубном, что я нахожу очень удобным. Всем добра!

Подпишитесь , чтобы не пропускать следующий контент.
Нажмите лайк , если интересно, так я пойму какие публикации больше нужны моей публике.
Также публикации можно найти на других площадках: Instagram , telegram ( RU , EN , DE ), Medium , LiveJournal , YouTube .

Мой блог является некоммерческим, поэтому позитивный комментарий, лайк или репост поможет публикациям выходить чаще ☺.

Источник

Home Assistant Container Part 11: Bluetooth support

You may have purchases some Xiaomi temperature and humidity sensors after reading my blog post from a while back.

Since then, Nabu Casa (the organisation behind Home Assistant) has somewhat taken over the ESPHome project and have been doing their best to incorporate the best of both worlds. One feature that’s of particular relevance is this story, is the native support for Bluetooth LE devices within HA and the addition of the Bluetooth Proxy component to ESPHome.

So from now on, you no longer need to add keys etc. for your Xiaomi BLE sensors to your ESPHome config. You can connect directly from your Home Assistant system, provided it has a bluetooth chip, or sprinkle some ESP32 (configured as BLE proxy) around.

Читайте также:  Мышь razer orochi 2013 bluetooth

The ESPHome method ¶

If you already have some ESP32 around the house, maybe because you were using the method of my old blog post, this is by far the easiest solution.

In your ESP32 you probably had a section looking like this:

esp32_ble_tracker:  sensor:  # LYWSD03MMC - Advertising Type: Mi Like  - platform: xiaomi_lywsd03mmc  mac_address: "XX:XX:XX:XX:XX:XX" # Replace with MAC Address of sensor  bindkey: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" # Replace with bind key, use a dummy value when flashed with custom firmware  temperature:  name: "$ - Temperature"  humidity:  name: "$ - Humidity"  battery_level:  name: "$ - Battery Level" 

All of this can be removed from the ESPHome config and be replaced by:

esp32_ble_tracker:  bluetooth_proxy:  active: false # Default 

Bluetooth devices will now appear as new integrations in Home Assistant. You may need to enter the bindkey from your old ESPHome config when adding the devices to HA, so Home Assistant can decrypt the bluetooth packages.

The built-in Bluetooth method ¶

This method is useful for when the system you’re running Home Assistant on has a built-in Bluetooth chip or you’re using a Bluetooth USB dongle. If you want to use a Bluetooth dongle, make sure you check the Bluetooth Integration documentation for the list of known-working adapters.

To then get Home Assistant to recognize your Bluetooth chip/adapter, follow these steps:

  1. Install DBus-broker package sudo apt install dbus-broker
  2. Enable system service sudo systemctl enable dbus-broker.service
  3. Install BlueZ package sudo apt install bluez
  4. Forward the Dbus socket to HA container by mapping it as a volume in your docker-compose.yaml .
volumes:  - /opt/homeassistant/config:/config  - /etc/localtime:/etc/localtime:ro  - /run/dbus:/run/dbus:ro # 

Once Home Assistant has rebooted, it’ll show a new integration for your Bluetooth adapter. After adding that integration, it’ll start discovering BLE devices and showing them as discovered integrations.

New Bluetooth integration available

This update to ESPHome and Home Assistant has made it even easier to work with Bluetooth sensors.

BTHome ¶

Ideally, you’d also flash the sensors so they would communicate/advertise using the BTHome open standard.

BTHome is an open standard for broadcasting sensor data and button presses over Bluetooth LE

Home Assistant supports it out of the box, and the process for flashing your Xiaomi sensors is the same but it uses an updated Telink Flasher.

Источник

Оцените статью
Adblock
detector