Модуль zigbee2mqtt

Железо, Модули в MajorDoMo, Протоколы Комментариев нет

Модуль для интеграции устройств zigbee в систему MAJORDOMO c использованием zigbee2mqtt

Давно известно, что с zigbee устройствами можно работать не только через шлюз MiHome. Имеется множество других решений, через которые можно получать данные и управлять устройствами (deconz, athom hommey, samsung smartthings, philips hue, Smart home Hommyn Zigbee Хаб (HU-20-Z) и др.). По моему мнению, самым интересным и бюджетным вариантом является проект zigbee2mqtt

Для работы zigbee2mqtt понадобится прошитый usb-стик и компьютер (windows, linux, в том числе микрокомпьютеры на arm-процессорах)

  1. USB-стик CC2531
  2. Отладчик 
  3. Cоединительный кабель 

Желательно все позиции заказывать у одного продавца, тогда мы молучим один трек на все товары. Я имел неосторожность заказать у разных продавцов, в итоге кабель ожидал около 3 месяцев.

Прошивка USB-стика cc2531 через arduino.

Прошивка стика через ардуино  -  очень долгий процесс и занимает около 5 часов. К тому-же очень сложно прошивать, не имея кабель-шнурок. От этого варианта прошивки я отказался.

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

Инструкция по перепрошивке USB-стика cc2531 через отладчик:

Понадобится драйвер для отладчика
Прошивку следует осуществлять по этой инструкции.
Альтернативная инструкция
Ссылка на прошивальщик
Последние версии прошивок можно взять тут

Прошитый usb-стик можно заказать тут.

Инструкция по установке zigbee2mqtt для linux:

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

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, если у вас его еще нет по инструкции 

Также в качестве mqtt брокера, при наличии платной подписки на connect-pac (200р.), вы можете использовать адрес http://connect.smartliving.ru в качестве брокера mqtt. Логик и пароль необходимо использовать реквизиты входа сайта http://connect.smartliving.ru

2) Качаем и устанавливаем git

3) Качаем и устанавливаем node.js для windows

Далее процесс идентичен установке под linux.

 

 Настраиваем конфигурационного файла

Конфигурационный файл обычно расположен по указанному пути /opt/zigbee2mqtt/data/configuration.yaml

Пример вариантов настроек конфигурационного файла

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

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

Список поддерживаемого оборудования.

 

Текущий статус модуля: бетта

 Реализовано:

1) подписка на канал zigbee2mqtt/#
2) автоматическое создание устройств;
3) автоматическое заполнение метрик устройств;
4) привязка метрик к объектам.
5) просмотр логов zigbee2mqtt;
6) конвертирование привязанных переменных в стандартный для мажордомо формат (вместо 1/0 в zigbee2mqtt используется ON/OFF);
7) управление устройствами;
8) создание карты устройств.
9) Добавлено управление и просмотр режимами сопряжения.
10) Добавлено управление (ON OFF) устройствами с главного окна модуля.
11)Подсвечиваются серым потерянные устройства.

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

1) Работа с группами https://www.zigbee2mqtt.io/information/groups.html
2) Заведение отсутствующих метрик, чтобы можно было привязать не описанные события)
3) Отладить работу. Поступают противоречивые данные, у кого-то не отображаются выпадающие списки с картинками и тд.
4) Отладить работу, когда мажордомо и zigbee2mqtt находятся на разных устройствах. Запросил информацию для отвязки от конфигов
5) Настройка прямого управления устройствами

6) Разработка шлюза на базе платы сс2530 и микрокомпьютера raspberry pi nano в едином корпусе.

 

Ссылки:

Форум 

Ссылка на интересный тематический канал в телеграм: https://t.me/zigbeer
Ссылка на репозиторий модуля zigbee2mqtt:
Топики для управления устройствами через mqtt
Топики для управления шлюзом через mqtt

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

Последние версии прошивок можно взять тут 

Обсуждение умных ламп

Поделитесь в соц сетях

Теги: