Подключение внешних модулей
В веб-интерфейсе контроллера перейдите в раздел Настройки → Конфигурационные файлы → Модули расширения и порты. В нем подключаются и настраиваются следующие модули и интерфейсы:
- Внутренние слоты — слоты для установки модулей внутрь самого контроллера.
- Модули WBIO — слоты для модулей ввода-вывода, которые пристыковываются к контроллеру.
- Интерфейсы RS485 — порты RS-485. Их можно отключить. Второй порт можно преобразовать в CAN.
- Слот модема — подключение модема.
- Режимы W1 и W2 — 1-wire датчики либо дискретные входы.
- Источник резервного питания — модули аккумуляторов.
Подключить модуль во внутренний слот
- Разберите корпус контроллера и физически подключите модуль во внутренний слот.
- Добавьте модуль в конфигурацию контроллера. Для этого в веб-интерфейсе перейдите в раздел Настройки → Конфигурационные файлы → Модули расширения и порты и выберите слот с модулем. Затем из списка Тип модуля выберите тип установленного модуля и нажмите кнопку Записать.
Если добавленный модуль больше не нужен, его можно удалить:
- Удалите модуль из конфигурации контроллера. Для этого в веб-интерфейсе перейдите в раздел Настройки → Конфигурационные файлы → Модули расширения и порты и выберите слот с модулем. Затем в списке Тип модуля выберите Не установлен.
- При необходимости разберите корпус контроллера и выньте модуль из внутреннего слота.
Подключить Zigbee-модуль во внутренний слот и настроить его
Установка и подключение модуля WBE2R-R-ZIGBEE v.2
- Разберите корпус контроллера и вставьте модуль, соблюдая полярность: выступ на нем должен попасть в паз на плате контроллера.
- Закрепите с помощью гаек разъем SMA-гнезда в отверстии корпуса над разъемами Ethernet.
- Соберите корпус обратно. Следите за соединительным кабелем от модуля к SMA-гнезду: он не должен пережиматься, сильно изгибаться и попадать между индикатором и световодом на верхней крышке.
- Навинтите внешнюю антенну на SMA-гнездо.
- При монтаже в металлическом щите расположите антенну снаружи — так радиосвязь будет надежнее.
- Добавьте модуль в конфигурацию контроллера. Для этого в веб-интерфейсе перейдите в раздел Настройки → Конфигурационные файлы → Модули расширения и порты и выберите слот с модулем. Затем из списка Тип модуля выберите WBE2R-R-ZIGBEE v.2 и нажмите кнопку Записать. Контроллер включит нужные для работы модуля порты.
Если добавленный модуль больше не нужен, его можно удалить:
- Удалите модуль из конфигурации контроллера. Для этого в веб-интерфейсе перейдите в раздел Настройки → Конфигурационные файлы → Модули расширения и порты и выберите слот с модулем. Затем в списке Тип модуля выберите Не установлен.
- При необходимости разберите корпус контроллера и выньте модуль из внутреннего слота.
Установка программного обеспечения
Понадобятся два пакета:
- zigbee2mqtt — мост, с помощью которого можно управлять Zigbee-устройствами через MQTT.
- wb-zigbee2mqtt — конвертер данных из топиков zigbee2mqtt в Wiren Board MQTT Conventions.
Установите пакеты:
apt update && apt install zigbee2mqtt
Пакет wb-zigbee2mqtt ставится автоматически при установке пакета zigbee2mqtt, но, если этого не произошло, установите его самостоятельно:
apt update && apt install wb-zigbee2mqtt
После установки пакетов сервис будет запущен автоматически и добавлен в автозапуск. Чтобы убедиться, что сервис активен, выполните команду
systemctl status zigbee2mqtt
После установки пакета wb-zigbee2mqtt все Zigbee-устройства добавятся на вкладку Устройства контроллера.
Веб-интерфейс zigbee2mqtt
Веб-интерфейс zigbee2mqtt потребляет память и процессорное время контроллера. Не включайте его, если не используете: добавлять и удалять устройства можно через конвертер wb-zigbee2mqtt.
Если вам не достаточно конвертера wb-zigbee2mqtt и нужен веб-интерфейс zigbee2mqtt, включите его в файле настроек:
Откройте файл configuration.yaml для редактирования:
nano /mnt/data/root/zigbee2mqtt/data/configuration.yaml
Добавьте в него блок:
frontend:
port: 8081
host: 0.0.0.0Сохраните и закройте файл.
Перезапустите сервис zigbee2mqtt
systemctl restart zigbee2mqtt
Веб-интерфейс моста zigbee2mqtt будет доступен по адресу http://<IP-адрес контроллера>:8081/
, где вместо <IP-адрес контроллера>
необходимо указать тот же IP-адрес, который вы указывали для подключения к веб-конфигуратору контроллера.
Конвертер wb-zigbee2mqtt
Конвертер запрашивает у zigbee2mqtt список всех подключенных устройств и подписывается на их топики. При получении данных от физических устройств конвертер анализирует json, создает виртуальное устройство и посылает в него полученную информацию.
Также конвертер создает виртуальное устройство zigbee2mqtt и передает в него логи, версию и состояние (online/offline) моста zigbee2mqtt. Можно включить и выключить режим добавления устройств. Кроме того, в конвертере есть возможность заново инициировать запрос у моста список добавленных устройств: если появились новые, конвертер подпишется на них.
Добавление устройств в wb-zigbee2mqtt
Устройства можно добавлять по одному или все разом. Чтобы добавить новые устройства:
В веб-интерфейсе контроллера перейдите в раздел Устройства. Найдите карточку Zigbee2mqtt и проверьте поле State — статус в нем должен быть online. Если вы только что установили пакет zigbee2mqtt и статус на карточке — offline, подождите пару минут.
Включите переключатель Permit join. Контроллер перейдет в режим поиска Zigbee-устройств.
Переведите Zigbee-устройство, которое вы хотите подключить к контроллеру, в режим сопряжения. Как правило для этого необходимо зажать кнопку Pair на корпусе и дождаться, когда индикатор на устройстве замигает.
Контроллер начнет подключать устройство: на карточке Zigbee2mqtt в поле Log по очереди будут появляться сообщения:
Starting interview of '0xN...
Configuring '0xN...'
Successfully configured '0xN...'..Сообщение
Successfully configured '0xN...'..
означает, что устройство успешно обнаружено и опрошено.Добавьте таким же образом остальные Zigbee-устройства: по очереди переведите каждое в режим сопряжения и дождитесь сообщения
Successfully configured '0xN...'..
на карточке Zigbee2mqtt.После того, как добавите все устройства, выключите переключатель Permit join.
На карточке Zigbee2mqtt нажмите кнопку Update devices. Все добавленные устройства отобразятся в разделе Устройства.
Если устройство не добавляется:
Возможно, при анализе данных от zigbee2mqtt произошла ошибка. Перезапустите движок правил с помощью команды ниже, а затем попробуйте добавить устройство заново.
systemctl restart wb-rules
Если во время обнаружения и опроса Zigbee-устройства в карточке Zigbee2mqtt в поле Log вместо сообщения сообщения
Successfully configured ’0xN...’..
отобразилосьDevice '0xN...' ... is NOT supported
— убедитесь, что устройство есть в списке поддерживаемых и что у вас установлена последняя версия пакета zigbee2mqtt.Если устройство было добавлено и его карточка стала отображаться в списке, но при этом она пустая — это означает, что от устройства пока не были получены данные. Если это датчик, то подождите, когда он сработает, а если это выключатель, то выключить или включить его.
Смена friendly_name устройства
После добавления устройства в его карточке отображается номер, например 0xa4c138fc51d02c20
:
Вы можете указать friendly_name — человекочитаемое название устройства. Для этого:
Откройте файл конфигурации для редактирования:
nano /mnt/data/root/zigbee2mqtt/data/configuration.yaml
Найдите в секции devices ваше устройство и измените значение поля friendly_name. Новое название устройства должно соответствовать требованиям Zigbee2MQTT: недопустимо использовать
/
, названия не должны повторяться и др. Кроме того, новое название должно соответствовать соглашениям Wiren Board MQTT Conventions.Сохраните файл настроек и перезапустите сервис:
systemctl restart zigbee2mqtt
В веб-интерфейсе контроллера на вкладке Устройства появится новое устройство с заданным названием:
На вкладке Устройства удалите старую карточку устройства (с номером вместо человекочитаемого названия). Для этого наведите курсор на заголовок карточки и нажмите значок корзины.
Удаление устройства
В веб-интерфейсе контроллера перейдите в раздел Устройства. Найдите карточку Zigbee2mqtt и убедитесь, что переключатель Permit join находится в положении Выкл.
Разорвите связь Zigbee-устройства с координатором. Как правило, для этого нужно перевести устройство в режим сопряжения: зажать и удерживать кнопку Pair на корпусе, пока индикатор не замигает. Подробнее смотрите в документации к устройству.
Убедитесь, что в карточке устройства Zigbee2mqtt в поле Log появилось сообщение
left the network
:Удалите карточку Zigbee-устройства из веб-интерфейса. Для этого наведите курсор на заголовок карточки и нажмите значок корзины. КОнтроллер запросит подтверждение на выполнение операции — нажмите ОК.
Подключитесь к контроллеру по SSH и перезапустите wb-rules — это заново запустит конвертер wb-zigbee2mqtt:
systemctl restart wb-rules
Переустановка zigbee2mqtt с сохранением данных
Иногда может потребоваться переустановить конвертер с сохранением данных, например, если мост не стартует после обновления. Для этого:
Перейдите в домашний каталог:
cd ~
Сохраните настройки:
cp -R /mnt/data/root/zigbee2mqtt/data data-backup
Удалите zigbee2mqtt командой:
apt purge zigbee2mqtt
Если остался каталог с node-modules — удалите его:
rm -r /mnt/data/root/zigbee2mqtt/node_modules
Заново поставьте zigbee2mqtt:
apt install zigbee2mqtt
Восстановите настройки из архива:
cp -R data-backup/* /mnt/data/root/zigbee2mqtt/data
Перезапустите сервис:
systemctl restart zigbee2mqtt
Подключить модуль ввода-вывода WBIO
Физически подключите модуль в слот контроллера.
Добавьте модуль в конфигурацию контроллера. Для этого в веб-интерфейсе перейдите в раздел Настройки → Конфигурационные файлы → Модули расширения и порты и нажмите на тот Модуль WBIO (External I/O module), в который был установлен модуль WBIO.
Из списка Тип модуля выберите тип установленного модуля и нажмите кнопку Записать.
Убедитесь, что внешний модуль отображается в веб-интерфейсе. Для этого разделе Устройства найдите устройство:
- Relays & FETs, если модуль дискретный.
- ADCs, если модуль аналоговый.
Каналы будут иметь вид
EXTN_YYYY
, гдеN
— порядковый номер модуля, аYYY
— название канала модуля. Адрес MQTT-топика будет иметь вид/devices/wb-gpio/controls/EXTN_YYYY
.
Если добавленный модуль больше не нужен, его можно удалить:
- Удалите модуль из конфигурации контроллера. Для этого в веб-интерфейсе перейдите в раздел Настройки → Конфигурационные файлы → Модули расширения и порты и выберите слот с модулем. Затем в списке Тип модуля выберите Не установлен.
- При необходимости выньте модуль из слота.
Подключить модуль резервного питания
Физически подключите модуль в слот контроллера.
Добавьте модуль в конфигурацию контроллера. Для этого в веб-интерфейсе перейдите в раздел Настройки → Конфигурационные файлы → Модули расширения и порты и выберите Источник резервного питания.
Из списка Тип модуля выберите WBMZ4-BATTERY для модуля резервного питания на Li-ion аккумуляторе или WBMZ4-SUPERCAP для модуля резервного питания на ионисторах. Затем нажмите Записать.
Убедитесь, что внешний модуль отображается в веб-интерфейсе. Для этого разделе Устройства найдите карточку Battery. Для устройства отображаются следующие характеристики:
- Current — ток в амперах. Положительное значение — батарея заряжается, отрицательное — батарея разряжается.
- Percentage — процент заряда аккумулятора (от вычисленного при калибровке объема).
- Voltage — напряжение аккумулятора.
- Charging — показывает, заряжается ли сейчас аккумулятор. Зарядку можно принудительно отключить.
Температура аккумулятора отображается в устройстве HW Monitor, канал hwmon/Battery Temperature. Следите, чтобы температура аккумулятора не выходила за допустимые границы.
Если добавленный модуль больше не нужен, его можно удалить:
- Удалите модуль из конфигурации контроллера. Для этого в веб-интерфейсе перейдите в раздел Настройки → Конфигурационные файлы → Модули расширения и порты и выберите Источник резервного питания. Затем в списке Тип модуля выберите Не установлен.
- При необходимости выньте модуль из слота.