Описание

Для использования Zigbee-устройств с контроллером Wiren Board понадобится:

  1. Модуль расширения WBE2R-R-ZIGBEE или любой USB Zigbee стик.
  2. Дополнительное ПО:
    • zigbee2mqtt — мост, с помощью которого можно управлять Zigbee-устройствами через MQTT.
    • wb-zigbee2mqtt — конвертер данных из топиков zigbee2mqtt в Wiren Board MQTT Conventions.

Инструкции по установке смотрите ниже на этой странице.

Копируйте команды из инструкции, вставляйте их в консоль контроллера с помощью клавиш Shift+Insert и запускайте клавишей Enter. В случае ошибок, внимательно читайте вывод, там будут инструкции и подсказки.

Установка и настройка zigbee2mqtt

Процесс установки

Версия пакета zigbee2mqtt в стабильном релизе может отставать от актуальной версии, которая доступна у автора. Самая свежая версия всегда доступна в тестовом релизе.

Мы рекомендуем устанавливать готовый пакет из нашего репозитория, их там два:

  • zigbee2mqtt — всегда свежая версия, рекомендуем ставить её.
  • zigbee2mqtt-1.18.1 — версия для старых адаптеров WBE2R-R-ZIGBEE v.1, выпущенных до января 2022 года.

Для установки свежей версии, введите команду:

apt update && apt install zigbee2mqtt

Для установки старой версии 1.18.1 версии, введите команду:

apt update && apt install zigbee2mqtt-1.18.1

Альтернативный способ установки — сборка из исходников по инструкции.

Обновление

Для обновления zigbee2mqtt на свежую версию просто обновите программное обеспечение контроллера по инструкции.


Если у вас старый адаптер WBE2R-R-ZIGBEE v.1, выпущенный до января 2022 года, то новая версия работать не будет, в этом случае у вас есть три варианта:

  • Прошить старый адаптер свежей прошивкой, инструкция.
  • Откатиться на последнюю версию, которая работает с этими адаптерами:
    apt remove zigbee2mqtt && apt install zigbee2mqtt-1.18.1
    
  • Заменить адаптер на WBE2R-R-ZIGBEE v.2 или использовать поддерживаемый USB-стик.

Конфигурация

Если вы используете модуль расширения WBE2R-R-ZIGBEE, убедитесь, что правильно выставили модуль в SettingsConfigsHardware Modules Configuration. При использовании USB-стика порты будут называться /dev/ttyUSB0 и /dev/ttyUSB1.

Настройка:

  1. Откройте файл конфигурации для редактированияː
    mcedit /mnt/data/root/zigbee2mqtt/data/configuration.yaml
    
  2. Приведите его к виду:
    homeassistant: false
    permit_join: false
    mqtt:
      base_topic: zigbee2mqtt
      server: 'mqtt://localhost'
    serial:
      port: /dev/ttyMOD3
    advanced:
      rtscts: false
      last_seen: epoch
    
    в параметре port укажите порт, куда физически вставлен модуль.
  3. Сохраните и закройте файл.
  4. Перезапустите сервис zigbee2mqtt:
    systemctl restart zigbee2mqtt
    

Теперь вы можете установить конвертер wb-zigbee2mqtt и Zigbee-устройства будут добавлены на вкладку Devices в стандартном веб-интерфейсе контроллера.

Управление сервисом

Сервис запускается по умолчанию, но вы можете управлять им с помощью команд:

systemctl start zigbee2mqtt # запуск
systemctl stop zigbee2mqtt # остановка
systemctl restart zigbee2mqtt # перезапуск
systemctl status zigbee2mqtt # получить статус

Веб-интерфейс (Frontend)

Веб-интерфейс zigbee2mqtt потребляет ресурсы контроллера — не включайте его, если не используете: добавлять и удалять устройства можно через наш конвертер wb-zigbee2mqtt.

Если вам всё же нужен родной веб-интерфейс zigbee2mqtt, то его можно включить в файле настроек:

  1. Откройте файл configuration.yaml для редактированияː
    mcedit /mnt/data/root/zigbee2mqtt/data/configuration.yaml
    
  2. Добавьте в него блок:
    frontend:
      port: 8081
      host: 0.0.0.0
    
  3. Сохраните и закройте файл.
  4. Перезапустите сервис zigbee2mqtt:
    systemctl restart zigbee2mqtt
    

Веб-интерфейс моста zigbee2mqtt будет доступен по адресу http://wb-ip-address:PORT, например, если IP-адрес контроллера 192.168.42.1, а порт указан 8081, то веб-интерфейс будет доступен по адресу http://192.168.42.1:8081

Установка конвертера wb-zigbee2mqtt

Описание

Wb-zigbee2mqtt — конвертер данных zigbee2mqtt в топики виртуальных устройств, написан на движке правил wb-rules и устанавливается в папку с системными правилами wb-rules-system.

Принцип работы

Конвертер wb-zigbee2mqtt запрашивает у zigbee2mqtt список всех подключенных устройств и подписывается на их топики. При получении данных от физических устройств конвертер парсит json, создает виртуальное устройство и посылает в него полученную информацию.

Так же конвертер создает виртуальное устройство «zigbee2mqtt» и передает в него логи, версию и состояние (online\offline) моста zigbee2mqtt. Можно включить и выключить режим добавления устройств. Также там расположена кнопка «update devices». При нажатии на эту кнопку конвертер заново запрашивает у моста список добавленных устройств и, если они появились — подписывается на них.

Установка

Подключитесь к контроллеру по SSH и выполните команду:

apt update && apt install wb-zigbee2mqtt

После этого в веб-интерфейса контроллера на вкладке Devices появится устройство «zigbee2mqtt».

Добавление устройств

 
Добавление устройства, сообщение interview_successful

Устройства можно добавлять по одному или все разом. Чтобы добавить новые устройства:

  1. Перейдите в веб-интерфейс контроллера.
  2. Откройте вкладку Devices.
  3. Найдите там карточку устройства Zigbee2mqtt и проверьте статус в поле State — должно быть написано online.
  4. Включите переключатель Permit join.
  5. Следуйте инструкции к Zigbee-устройству: в основном требуется зажать на устройстве кнопку pair на несколько секунд и дождаться «мигания» светодиода.
  6. В процессе добавления устройства в карточке Zigbee2mqtt в поле Log по очереди будут появляться сообщения interview_started → announce → interview_successful. Последнее сообщение означает, что устройство добавлено успешно.
  7. Повторите шаги 5 и 6 для каждого Zigbee-устройства, которое у вас есть.
  8. Завершите добавление устройств, для этого выключите переключатель Permit join.
  9. Нажмите кнопку Update devices.

Добавленные устройства будут доступны на вкладке Devices.

Управление устройствами

Управление устройствами через конвертер wb-zigbee2mqtt пока не реализовано. Но управлять устройствами можно стандартными инструментами zigbee2mqtt через wb-rules (функция publish)

Пример управления устройством в правилах wb-rules:

 publish("zigbee2mqtt/0x00158d0001f3fc34/set", JSON.stringify({ state: "ON" }), 2, false);
 publish("zigbee2mqtt/0x00158d0001f3fc34/set", JSON.stringify({ state: "OFF" }), 2, false);

Удаление устройств

Чтобы удалить устройство нужно:

  1. Разорвать связь устройства с координатором. Обычно для этого нужно зажать кнопку сопряжения на 5 секунд.
  2. Проследить, чтобы в карточке с заголовком Zigbee2mqtt в поле Log появилось сообщение left_network.
  3. Удалить карточку Zigbee-устройства, которое хотите удалить из веб-интерфейса, для этого наведите на него курсор мыши и нажмите на корзинку в заголовке.
  4. Подключиться к контроллеру по SSH и перезапустить wb-rules:
    systemctl restart wb-rules