Zigbee устройства в HomeBridge на Pi3b + CC2531

26 февраля 2021, 16:59

Я не являюсь поклонником решений умного дома с мозгом на Raspberry, однако случайно наткнулся на интересную библиотеку и хочу поделиться результатами эксперимента. В качестве награды мы получим легкую привязку zigbee-устройств (Aqara, Philips, ... список прилагается) без танцев с бубном. На не понадобится искать старый Mi Gateway v2, пайка, открытия портов, выковыривание токена из каждого датчика, все просто как у Apple.

1600x_image.png?1610468580

Нам понадобится Raspberry Pi3 (или выше), Zigbee-стик (подойдет и самый простой CC2531), любое zigbee-устройство из приведенного выше списка, в моем случае это был Aqara WSDCGQ01LM, температура/влажность.

Процесс накатывания HomeBridge повторять не буду, масса статей есть здесь, но я воспользовался самым простым - поднятие готового образа HomeBridge и запуск по инструкции на той же странице. Также легко делается его привязка в HomeKit.

Открываем http://homebridge.local/plugins, ищем в поиске "Zigbee NT" и устанавливаем его. Тут есть нюанс: в данный момент стабильная версия не корректно работает с Aqara, поэтому после установки релиза следует накатить нестабильную версию 2.0 с помощью команды терминала:

npm i homebridge-zigbee-nt@unstable -g

У меня поставилось не с первого раза, но в конечном итоге все завелось. Сама библиотека здесь, подробней о проблеме с датчиками можно почитать в моей переписке с автором в "issue 69".

1600x_image.png?1610469137
1600x_image.png?1610470329

После добавления плагина и перезапуска HomeBridge, у нас появляется 2 кнопки: Permit Join (разрешение на подсоединение новых устройств) и Touchlink - та самая функция легкой привязки! Нажимаем обе кнопки в указанном порядке, зажимаем на 5 секунд и отпускаем кнопку pairing на датчике (в моем случае) и быстро бежим на страницу лога в HomeBridge. Там мы будем наблюдать картину похожую на приведенный срез лога (внизу). Имейте в виду, что устройство может не подвязаться с первого раза. Какой-то точной закономерности нет, я несколько раз сбрасывал датчик (точно такая же процедура, как и подвязка, но необязательно нажимать кнопки разрешений, результат всегда проверяем в логе) и подвязывал снова. Иногда цеплялось с 3-го раза, иногда со 2-го, с первого - ни разу.

Побочный бонус данной библиотеки еще и в том, что с помощью нее вы можете легко вынимать токены своих устройств, достаточно просто 5 секунд подержать кнопку :) Токен будет в поле _ieeeAddr (смотрим опять пример лога).

Также у плагина есть свой веб-интерфейс (адрес homebridge по порту 9000), там можно найти расширенную информацию по своим zigbee-устройствам.

Чтобы устройство корректно "прописалось", автор рекомендует после добавления перезапустить homebridge. В моем случае я видел новые иконки на странице конфига, однако параметры температуры и влажности были нулевыми. После перезапуска все корректно заработало.

[12/01/2021, 17:55:18] [ZigBee] PermitJoin accessory successfully registered
[12/01/2021, 17:55:18] [ZigBee] Reuse accessory from cache with uuid 4994893c-ea77-4292-a4ad-************ and name zigbee:touchlink
[12/01/2021, 17:55:18] [ZigBee] Touchlink accessory successfully registered
[12/01/2021, 17:55:18] [ZigBee] Found ZigBee device:  Device {
  ID: 2,
  _type: 'Unknown',
  _ieeeAddr: '0x00158***********',
  _networkAddress: 3961,
  _manufacturerID: undefined,
  _endpoints: [
    Endpoint ........................

Вуаля! :) Датчик добавился, данные передаются в момент изменений, 2 дня полет нормальный.

В качестве вишенки на торте автор приводит метод добавления произвольного зигби-устройства не из списка в рабочую библиотеку. Лично не проверял, но любой, кто владеет основами программирования без труда разберется, все неплохо документировано и с примерами.


Все новости мира умных домов - t.me/SprutAI_News или Instagram
Остались вопросы? Мы в Telegram - @SprutAI

Хочешь умный дом но нет времени разбираться?
Посмотри примеры работ и выбери себе интегратора.
  1. (SkyManager)
    (SkyManager) 3 месяца назад

    Спасибо за статью!
    На версию 2.0 плагина не откатывал
    Двухкнопочный выключатель Aqara (QBKG12LM) подвязался с первого раза, но почему-то только одна кнопка добавилась. При нажатии кнопки состояние в ХК не обновляется...

  2. (macht59)
    (macht59) 16 дней назад
    Нужно ли как-то прошивать CC2531?
    Я прошил свое устройство прошивкой https://github.com/zigbeer/doc... и теперь не знаю правильно ли поступил. 

К списку блогов

Скидки для сообщества

Интернет-магазин yourhomekit.ru

+7 914 550-51-11
Промокод:
SPRUT-BLG
Размер скидки:
8%
Cамый большой ассортимент в России аксессуаров Apple HomeKit

LifeControl

+7 495 240-81-01
Промокод:
sprut15
Размер скидки:
15%
На весь ассортимент Lifecontrol

Похожие записи

25 марта 2019, 05:02
Нативный Homekit на ESP8266 Relay_8CH
20 января 2019, 17:39
Создание очень бюджетной автоматизации рулонных штор
13 февраля 2019, 22:00
Подключение радио на Xiaomi Gateway к Home Assistant c дальнейшим использованием в автоматизациях
31 марта 2019, 11:37
Нативный HomeKit датчик температуры и влажности своими руками самый бюджетный вариант.
19 января 2019, 20:49
Делюсь новостями по проекту.
20 мая 2019, 20:54
Добавляем Телевизор в Homekit c помощью новых возможностей Home Assistant версии 0.93 и кастом компонента SmartIR MediaPlayer.
23 августа 2020, 10:48
Apple HomeKit аксессуар Домофон на tvOS14.