[Модуль] zigbee2mqtt (zigbee2mqtt)

Разработка дополнительных модулей, подключение различных приложений.

Модераторы: Bagir, Ivan, immortal, Vit, PAV

directman66
Сообщения: 2069
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 304 раза
Поблагодарили: 400 раз
Контактная информация:

[Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение directman66 » Ср янв 09, 2019 7:02 am

Давно известно, что с zigbee устройствами можно работать не только через шлюз MiHome. Имеется множество других решений, через которые можно получать данные и управлять устройствами (deconz, athom hommey, samsung smartthings, philips hue, Smart home Hommyn Zigbee Хаб (HU-20-Z) etc). По моему мнению, самым интересным и бюджетным вариантом является проект zigbee2mqtt https://github.com/Koenkk/zigbee2mqtt.
Для работы c проектом нужен прошитый стик и компьютер на линукс (подойдет любой одноплатник типа малины)
СпойлерПоказать
стик https://ru.aliexpress.com/store/product ... 26435.html
дебаггер https://ru.aliexpress.com/store/product ... 22195.html
шнурок https://ru.aliexpress.com/store/product ... 31081.html


Желательно все заказывать у одного продавца, тогда будет один трек на все товары. Я имел неосторожность заказать у разных продавцов, в итоге шнурок ждал около 3 месяцев без пробивания трека.
Прошитый стик можно заказать у спрута https://sprut.ai/client/projects/105 (нажать кнопку помочь проекту, выбрать прошитый стик и указать цену 1000 руб.)

Есть возможность прошить стик через ардуино https://github.com/kirovilya/ioBroker.z ... B7-Arduino, но это очень геморный процесс и занимает около 5 часов. К тому-же очень сложно прошивать, не имея кабель-шнурок. От этого варианта прошивания я отказался.

Также стик можно прошить у коллег в вашем городе, например в Екате я могу прошить стик за символическую плату в размере 500 руб )

В модуле mqtt от @SergeJey доступно только чтение параметров, поэтому для управления устройствами начал писать новый модуль zigbee2mqtt

Инструкция по перепрошивке стика:
Мне понадобился драйвер для дебагера https://github.com/kirovilya/files/blob ... rc212a.zip
Прошивал по этой инструкции: https://koenkk.github.io/zigbee2mqtt/ge ... c2531.html
Еще инструкция https://github.com/kirovilya/ioBroker.z ... 0%BA%D0%B0
Прошивальщик https://yadi.sk/d/RxIVtu3YTCBDyw
Последние версии прошивок можно взять тут https://github.com/Koenkk/Z-Stack-firmw ... ordinator/


Инструкция по установке zigbee2mqtt для linux:
https://koenkk.github.io/zigbee2mqtt/ge ... 2mqtt.html

Если вам нужна поддержка разрабатываемого в данный момент железа, можно установить девелоперскую ветку. Тогда вместо

Код: Выделить всё

sudo git clone https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt 
sudo chown -R pi:pi /opt/zigbee2mqtt
cd /opt/zigbee2mqtt
npm install
нужно выполнить

Код: Выделить всё

sudo git clone --single-branch --branch dev  https://github.com/Koenkk/zigbee2mqtt/   /opt/zigbee2mqtt
sudo chown -R pi:pi /opt/zigbee2mqtt
cd /opt/zigbee2mqtt
npm install
Установка zigbee2mqtt для windows
1) Устанавливаем брокер mqtt, если у вас его еще нет по инструкции http://www.steves-internet-guide.com/in ... to-broker/

Кому лениво устанавливать или держать у себя брокер, а также пользователям windows, у которых нет брокера, при наличии платной подписки на connect (200р.), вы можете использовать адрес http://connect.smartliving.ru в качестве брокера mqtt.

2) Качаем и устанавливаем git
https://git-scm.com/download/win
3) Качаем и устанавливаем node.js для windows
https://nodejs.org/en/download/


Далее процесс идентичен установке под linux https://koenkk.github.io/zigbee2mqtt/ge ... 2mqtt.html

Пока только не понятно, как управлять и перезагружать сервис под виндой.

Настраиваем конфигурационный файл /opt/zigbee2mqtt/data/configuration.yaml
пример вариантов настроек конфигурационного файла https://koenkk.github.io/zigbee2mqtt/co ... ation.html
СпойлерПоказать

Код: Выделить всё

homeassistant: false
permit_join: true
advanced:
  channel: 26
  log_level: debug
mqtt:
  base_topic: zigbee2mqtt
   #   server: 'mqtt://192.168.178.32:1900'
   server: 'mqtt://192.168.1.39'
  
serial:
  port: /dev/ttyACM1
26 канал выбран для livolo выключателя (работают только на 26 канале https://github.com/Koenkk/zigbee2mqtt/issues/592). При отсутствии ливоло выключателей, можно удалить эту строку.

Если вы настраиваеет систему под windows, порт необходимо указать в следующем формате:
СпойлерПоказать

Код: Выделить всё

serial:
  port: COM4
Запускаем командой sudo systemctl start zigbee2mqtt

Обновление локального zigbee2mqtt до актуальной версии:

Код: Выделить всё


# Stop zigbee2mqtt and go to directory
sudo systemctl stop zigbee2mqtt
cd /opt/zigbee2mqtt

# Backup configuration
cp -R data data-backup

# Update
git checkout HEAD -- npm-shrinkwrap.json
git pull
rm -rf node_modules
npm install

# Restore configuration
cp -R data-backup/* data
rm -rf data-backup

# Start zigbee2mqtt
sudo systemctl start zigbee2mqtt



Чтобы сервис стартовал автоматически, не забудьте после п. 5 (Optional) Running as a daemon with systemctl выполнить

Код: Выделить всё

sudo systemctl enable zigbee2mqtt
(сервис будет запускаться автоматически при старте системы)

Список поддерживаемого оборудования:
https://koenkk.github.io/zigbee2mqtt/in ... vices.html

Текущий статус модуля: разработка, пре-альфа
Реализовано:
1) подписка на канал zigbee2mqtt/#
2) автоматическое создание устройств;
3) автоматическое заполнение метрик устройств;
4) привязка метрик к объектам.
5) просмотр логов zigbee2mqtt;
6) конвертирование привязанных переменных в стандартный для мажордомо формат (вместо 1/0 в zigbee2mqtt используется ON/OFF);
7) управление устройствами;
8) создание карты устройств.


Что планируется:

1) Работа с группами https://github.com/Koenkk/zigbee2mqtt/b ... /groups.md

Ссылка на интересный тематический канал в телеграм: https://t.me/zigbeer
Ссылка на репозиторий модуля zigbee2mqtt: http://github.com/directman66/majordomo-zigbee2mqtt/
Топики для управления через mqtt https://koenkk.github.io/zigbee2mqtt/in ... stant.html


Драйвера для smartRF04EB начинаются на swrc* есть в репозитории Кирова Ильи https://github.com/kirovilya/files
Огромная благодарность Илье @goofyk за помощь в освоении материала )

Последние версии прошивок можно взять тут https://github.com/Koenkk/Z-Stack-firmw ... ordinator/

Обсуждение умных ламп http://majordomo.smartliving.ru/forum/v ... 733#p95733
Последний раз редактировалось directman66 Пт фев 08, 2019 6:52 am, всего редактировалось 46 раз.
За это сообщение автора directman66 поблагодарили (всего 9):
Denis_k (Ср янв 09, 2019 7:37 am) • VooDooN (Ср янв 09, 2019 8:34 am) • skysilver (Ср янв 09, 2019 9:53 am) • woow (Ср янв 09, 2019 11:15 am) • chimik (Ср янв 09, 2019 11:22 am) • ZhenyaRUS39 (Чт янв 10, 2019 9:30 pm) • newz20 (Пт янв 11, 2019 3:08 pm) • ypiter2006 (Сб янв 12, 2019 11:23 pm) • SrFatCat (Ср янв 16, 2019 2:37 pm)
Рейтинг: 12.33%
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram | +79122962262 Whatsap
directman66
Сообщения: 2069
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 304 раза
Поблагодарили: 400 раз
Контактная информация:

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение directman66 » Ср янв 09, 2019 7:06 am

Привязка устройств https://koenkk.github.io/zigbee2mqtt/ge ... vices.html

Xiaomi
Разные устройства требуют разных методов сопряжения.

Большинство устройств MiJia: нажмите и удерживайте кнопку сброса на устройстве в течение + - 5 секунд (пока синий индикатор не начнет мигать). ВАЖНО : Отпустите и начните нажимать кнопку сброса каждую секунду. Это сохраняет устройство активным, иначе сопряжение не удастся!

Большинство устройств Aqara: нажмите и удерживайте кнопку сброса на устройстве в течение + - 5 секунд, пока синий индикатор не мигнет три раза, отпустите кнопку сброса (синий индикатор будет мигать еще раз) и подождите.

Большинство настенных выключателей Aqara: нажмите и удерживайте кнопку на устройстве в течение + - 10 секунд (пока синий индикатор не начнет мигать и не перестанет мигать), отпустите и подождите.


Кубик: https://www.youtube.com/watch?v=uhMrcIA ... e=youtu.be
1. набраться терпения :)
2. снимаю крышку, вынимаю батарейку минуты на 2 -3, чтобы все кондеры разрядились и тд - может и не надо;
3. Жму кнопку - пока три раза не моргнет
4. каждую секунду жму кнопку чтобы поддерживалось соединение и так примерно минут 5!!!
Там видимо чем больше переменных передается, приходится дольше ждать
то есть он реально ОЧЕНЬ медленно сопрягается
потом примерно минут через 5 начинаю кубик трясти и как правило появляется - Shake
ну и дальше он постепенно подтягивает все параметры типа переворота с ребра на ребро и так далее
но реально долго...

Настенный пульт WXKG02LM https://www.youtube.com/watch?v=4iOKtfG ... e=youtu.be

Ну, как сказал @Koenkk , это может быть немного сложно, и я только что закончил спаривать всю свою прошлую ночь. Лучший способ, который я понял, - это выполнить следующие шаги:

Убедитесь, что переключатель находится рядом с ним. Я уже установил мой, поэтому должен был удалить их все и поместить их в пределах 50-100 см от анализатора (ну, может быть, у меня был мой где-то в углу).
Нажмите левую и удерживайте ее
Подождите, пока оба индикатора не начнут мигать
Продолжайте удерживать его и не отпускайте, пока оба индикатора не перестанут мигать, а левый светодиод не мигнет один раз.
Подожди и расслабься, и пусть все сделает свое волшебство
Был соблазн продолжать нажимать кнопку, чтобы «поддерживать ее работу», особенно после кошмара соединения моих датчиков Mija, которые требовали этого. но не делай этого, потому что я думаю, что это еще хуже. Просто оставьте его, как только увидите всплывающее сообщение ..._lock[](извините, не помню точно, что оно говорит)
Последний раз редактировалось directman66 Сб фев 02, 2019 5:10 pm, всего редактировалось 3 раза.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram | +79122962262 Whatsap
directman66
Сообщения: 2069
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 304 раза
Поблагодарили: 400 раз
Контактная информация:

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение directman66 » Вс янв 13, 2019 3:12 pm

1) Добавлен просмотр логов
2) Привязка метрик устройств
3) Конвертирование метрик ON/OFF -> 1/0
4) Отправка команд.

Модуль пока тестирую, поэтому не публикую. Кто сильно заинтересован, можете установить вручную.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram | +79122962262 Whatsap
Aven
Сообщения: 338
Зарегистрирован: Сб мар 12, 2016 6:33 pm
Откуда: Ухта, Россия
Благодарил (а): 0
Поблагодарили: 69 раз

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение Aven » Вс янв 13, 2019 10:44 pm

давай скриншоты )))
directman66
Сообщения: 2069
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 304 раза
Поблагодарили: 400 раз
Контактная информация:

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение directman66 » Пн янв 14, 2019 6:44 am

Пока особо нечего показывать
Вложения
z1.png
z1.png (16.41 КБ) 984 просмотра
z2.png
z2.png (24.25 КБ) 984 просмотра
z3.png
z3.png (75.38 КБ) 984 просмотра
z4.png
z4.png (75.94 КБ) 984 просмотра
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram | +79122962262 Whatsap
directman66
Сообщения: 2069
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 304 раза
Поблагодарили: 400 раз
Контактная информация:

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение directman66 » Пн янв 14, 2019 3:01 pm

1) Добавлено определение типа устройства. Вывод фотографии.
zz1.png
zz1.png (25.37 КБ) 945 просмотров
2) Проверка статуса сервиса zigbee2mqtt. Управление сервисом (start, stop, restart). Работает при наличии прав sudo
zz2.png
zz2.png (57.98 КБ) 945 просмотров
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram | +79122962262 Whatsap
SrFatCat
Сообщения: 41
Зарегистрирован: Пн янв 07, 2019 6:55 pm
Благодарил (а): 4 раза
Поблагодарили: 1 раз

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение SrFatCat » Ср янв 16, 2019 2:45 pm

Очень своевременное и нужное дополнение! Огромное спасибо. К сожалению, пока только в теории изучаю, свисток еще не пришел.
Два вопроса.
- можно у брокера указать порт или бридж работает только по стандартному 1883?
- какое отношение выключатели Livolo имеют к теме? Разве они не по RF433? Или я отстал от жизни и есть Livolo zigbee (не нашел в поддерживаемых устройствах никакого упоминания Livolo)
Denis_k
Сообщения: 445
Зарегистрирован: Сб мар 19, 2016 7:24 pm
Благодарил (а): 222 раза
Поблагодарили: 20 раз

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение Denis_k » Ср янв 16, 2019 6:20 pm

тоже с интересом смотрю за темой, до сяоми так и не дойду ввиду нежелания лишних устройств, но вопрос у меня несколько иной:
этот модуль подразумевает наличие где то в системе брокера mqtt (например попытка установить сервер blynk на тот же raspberry у меня не удалась (точнее сервер работал, но не долго и с танцами) и пришлось отказываться от модуля blynk), т.е. иными словами позволит ли установка этого модуля и прошитого "свистка" управлять перечисленными устройствами?
MD на raspberry pi2
directman66
Сообщения: 2069
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 304 раза
Поблагодарили: 400 раз
Контактная информация:

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение directman66 » Ср янв 16, 2019 9:45 pm

1) Для работы модуля необходим mqtt брокер
2) Брокер может работать на любом порту
3) Есть livolo zigbee выключатель https://ru.aliexpress.com/item/Livolo-E ... 33edDDAEYN, но реверс протокола пока не привел к нужному результату, но попытки не прекращаются https://github.com/Koenkk/zigbee2mqtt/issues/592
За это сообщение автора directman66 поблагодарили (всего 2):
Denis_k (Ср янв 16, 2019 9:53 pm) • andrey040670 (Вт янв 22, 2019 12:32 am)
Рейтинг: 2.74%
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram | +79122962262 Whatsap
SrFatCat
Сообщения: 41
Зарегистрирован: Пн янв 07, 2019 6:55 pm
Благодарил (а): 4 раза
Поблагодарили: 1 раз

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение SrFatCat » Чт янв 17, 2019 12:10 am

directman66 писал(а):
Ср янв 16, 2019 9:45 pm
1) Для работы модуля необходим mqtt брокер
2) Брокер может работать на любом порту
Не очень понятно. Вот у меня брокер поднят локально, работает на несдантартном порту, как клиент бриджа zigbee2mqtt (а я правильно понимаю, что бридж выступает mqtt клиентом?) узнает этот порт, если в настройках задается только домен, имя клиента и пользователь/пароль?
directman66 писал(а):
Ср янв 16, 2019 9:45 pm
3) Есть livolo zigbee выключатель https://ru.aliexpress.com/item/Livolo-E ... 33edDDAEYN, но реверс протокола пока не привел к нужному результату, но попытки не прекращаются https://github.com/Koenkk/zigbee2mqtt/issues/592
Спасибо! Очень интересно
Ответить