16 885
правок
Метка: отменено |
|||
(не показаны 22 промежуточные версии 4 участников) | |||
Строка 2: | Строка 2: | ||
== Описание == | == Описание == | ||
Для использования Zigbee-устройств с контроллером Wiren Board понадобится: | Для использования Zigbee-устройств с контроллером Wiren Board понадобится: | ||
# Модуль расширения [[WBE2R-R-ZIGBEE v. | # Модуль расширения [[WBE2R-R-ZIGBEE v.2 ZigBee Extension Module|WBE2R-R-ZIGBEE v.2]] ([[WBE2R-R-ZIGBEE v.1 ZigBee Extension Module|WBE2R-R-ZIGBEE v.1]]) или любой USB Zigbee стик. | ||
# Дополнительное ПО: | # Дополнительное ПО: | ||
#* zigbee2mqtt — мост, с помощью которого можно управлять Zigbee-устройствами через [[MQTT]], [https://www.zigbee2mqtt.io/supported-devices/ поддерживаемые устройства]. | #* zigbee2mqtt — мост, с помощью которого можно управлять Zigbee-устройствами через [[MQTT]], [https://www.zigbee2mqtt.io/supported-devices/ поддерживаемые устройства]. | ||
Строка 14: | Строка 14: | ||
=== Процесс установки === | === Процесс установки === | ||
Версия пакета zigbee2mqtt в стабильном релизе может отставать от актуальной версии, которая доступна у автора. Самая свежая версия всегда доступна в [[testing | тестовом релизе]]. | Версия пакета zigbee2mqtt в стабильном релизе может отставать от актуальной версии, которая доступна у автора. Самая свежая версия всегда доступна в [[testing | тестовом релизе]]. | ||
Мы рекомендуем устанавливать готовый пакет из нашего репозитория, их там два: | Мы рекомендуем устанавливать готовый пакет из нашего репозитория, их там два: | ||
* zigbee2mqtt — всегда свежая версия, рекомендуем ставить её. | * zigbee2mqtt — всегда свежая версия, рекомендуем ставить её. | ||
Строка 26: | Строка 24: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Чтобы установить 1.18.1, выполните: | |||
:<syntaxhighlight lang="bash"> | :<syntaxhighlight lang="bash"> | ||
apt update && apt install zigbee2mqtt-1.18.1 | apt update && apt install zigbee2mqtt-1.18.1 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Альтернативный способ установки — сборка из исходников по [[Zigbee2mqtt-src | инструкции]]. | Альтернативный способ установки — сборка из исходников по [[Zigbee2mqtt-src | инструкции]]. | ||
Строка 48: | Строка 46: | ||
# Откройте файл конфигурации для редактированияː | # Откройте файл конфигурации для редактированияː | ||
#:<syntaxhighlight lang="bash"> | #:<syntaxhighlight lang="bash"> | ||
nano /mnt/data/root/zigbee2mqtt/data/configuration.yaml | |||
</syntaxhighlight> | </syntaxhighlight> | ||
# | # По умолчанию файл конфигурации выглядит так, в параметре '''port''' укажите порт, куда физически вставлен модуль: | ||
#:<syntaxhighlight lang="bash"> | #:<syntaxhighlight lang="bash"> | ||
homeassistant: false | homeassistant: false | ||
Строка 58: | Строка 56: | ||
server: 'mqtt://localhost' | server: 'mqtt://localhost' | ||
serial: | serial: | ||
port: /dev/ttyMOD4 | port: /dev/ttyMOD4 | ||
advanced: | advanced: | ||
rtscts: false | rtscts: false | ||
Строка 65: | Строка 63: | ||
network_key: GENERATE | network_key: GENERATE | ||
</syntaxhighlight> | </syntaxhighlight> | ||
#: | #: вместо GENERATE после первого запуска моста появятся значения, не изменяйте их. | ||
# | # {{Wbincludes:Save nano}} | ||
# Перезапустите сервис <code>zigbee2mqtt</code>: | # Перезапустите сервис <code>zigbee2mqtt</code>: | ||
#:<syntaxhighlight lang="bash"> | #:<syntaxhighlight lang="bash"> | ||
systemctl restart zigbee2mqtt | systemctl restart zigbee2mqtt | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Теперь вы можете установить конвертер wb-zigbee2mqtt и Zigbee-устройства будут добавлены на вкладку '''Devices''' в стандартном веб-интерфейсе контроллера. | Теперь вы можете установить конвертер wb-zigbee2mqtt и Zigbee-устройства будут добавлены на вкладку '''Devices''' в стандартном веб-интерфейсе контроллера. | ||
Строка 80: | Строка 77: | ||
# Откройте файл <code>configuration.yaml</code> для редактированияː | # Откройте файл <code>configuration.yaml</code> для редактированияː | ||
#:<syntaxhighlight lang="bash"> | #:<syntaxhighlight lang="bash"> | ||
nano /mnt/data/root/zigbee2mqtt/data/configuration.yaml | |||
</syntaxhighlight> | </syntaxhighlight> | ||
# Добавьте в него блок: | # Добавьте в него блок: | ||
Строка 97: | Строка 94: | ||
=== Обновление === | === Обновление === | ||
Для обновления zigbee2mqtt на свежую версию просто обновите программное обеспечение контроллера по [[ | Для обновления zigbee2mqtt на свежую версию просто обновите программное обеспечение контроллера по [[Wiren_Board_Software | инструкции]]. Будут сохранены все настройки и подключенные устройства. | ||
Если у вас старый адаптер [[WBE2R-R-ZIGBEE v.1 ZigBee Extension Module | WBE2R-R-ZIGBEE v.1]], выпущенный до января 2022 года, то новая версия работать не будет, в этом случае у вас есть три варианта: | Если у вас старый адаптер [[WBE2R-R-ZIGBEE v.1 ZigBee Extension Module | WBE2R-R-ZIGBEE v.1]], выпущенный до января 2022 года, то новая версия работать не будет, в этом случае у вас есть три варианта: | ||
* Прошить старый адаптер свежей прошивкой, [[WBE2R-R-ZIGBEE v.1 ZigBee Extension Module#flashing | инструкция]]. | * Прошить старый адаптер свежей прошивкой, [[WBE2R-R-ZIGBEE v.1 ZigBee Extension Module#flashing | инструкция]]. | ||
* Поставить пакет с версией, которая работает с этими адаптерами: | * Поставить пакет с версией, которая работает с этими адаптерами — это возможно сделать только на релизе wb-2207, в более свежих релизах на bullseye этого пакета нет: | ||
*:<syntaxhighlight lang="bash"> | *:<syntaxhighlight lang="bash"> | ||
apt install zigbee2mqtt-1.18.1 | apt install zigbee2mqtt-1.18.1 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
* Заменить адаптер на [[WBE2R-R-ZIGBEE v.2 ZigBee Extension Module | WBE2R-R-ZIGBEE v.2]] или использовать [https://www.zigbee2mqtt.io/guide/adapters/ поддерживаемый USB-стик]. | * Заменить адаптер на [[WBE2R-R-ZIGBEE v.2 ZigBee Extension Module | WBE2R-R-ZIGBEE v.2]] или использовать [https://www.zigbee2mqtt.io/guide/adapters/ поддерживаемый USB-стик]. | ||
Строка 128: | Строка 124: | ||
=== Добавление устройств === | === Добавление устройств === | ||
[[Image: WebUI Add Zigbee Device.png |300px|thumb|right| Добавление устройства, сообщение '' | [[Image: WebUI Add Zigbee Device.png |300px|thumb|right| Добавление устройства, сообщение ''Device '0x00158d0007013f71' is supported.'']] | ||
[[Image: WebUI Add Zigbee Device Unsupported.png |300px|thumb|right| Неподдерживаемое устройство | [[Image: WebUI Add Zigbee Device Unsupported.png |300px|thumb|right| Неподдерживаемое устройство, сообщение ''Device '0x2c1165fffeabe0b8' not supported.'']] | ||
Устройства можно добавлять по одному или все разом. Чтобы добавить новые устройства: | Устройства можно добавлять по одному или все разом. Чтобы добавить новые устройства: | ||
# Перейдите в [[Wiren Board Web Interface | стандартный веб-интерфейс контроллера]]. | # Перейдите в [[Wiren Board Web Interface | стандартный веб-интерфейс контроллера]]. | ||
Строка 136: | Строка 132: | ||
# Включите переключатель '''Permit join'''. | # Включите переключатель '''Permit join'''. | ||
# Следуйте инструкции к Zigbee-устройству: в основном требуется зажать на устройстве кнопку '''pair''' на несколько секунд и дождаться мигания индикатора на устростве. | # Следуйте инструкции к Zigbee-устройству: в основном требуется зажать на устройстве кнопку '''pair''' на несколько секунд и дождаться мигания индикатора на устростве. | ||
# В процессе добавления устройства в карточке '''Zigbee2mqtt''' в поле Log по очереди будут появляться сообщения '' | # В процессе добавления устройства в карточке '''Zigbee2mqtt''' в поле Log по очереди будут появляться сообщения ''Starting interview on 0xN → Device 0xN is supported''. Последнее сообщение означает, что устройство успешно опрошено. | ||
# Повторите шаги 5 и 6 для каждого Zigbee-устройства, которое у вас есть. | # Повторите шаги 5 и 6 для каждого Zigbee-устройства, которое у вас есть. | ||
# Завершите добавление устройств, для этого выключите переключатель '''Permit join'''. | # Завершите добавление устройств, для этого выключите переключатель '''Permit join'''. | ||
Строка 146: | Строка 142: | ||
systemctl restart wb-rules | systemctl restart wb-rules | ||
</syntaxhighlight> | </syntaxhighlight> | ||
# Некоторые устройства не поддерживаются zigbee2mqtt, для таких устройств в сообщении | # Некоторые устройства не поддерживаются zigbee2mqtt, для таких устройств в сообщении будет указано ''Starting interview on 0xN → Device 0xN ... is NOT supported''. В этом случае убедитесь, что устройство есть в [https://www.zigbee2mqtt.io/supported-devices/ списке поддерживаемых] и у вас установлена свежая версия zigbee2mqtt. | ||
Ещё бывает так, что карточка устройства появилась, но пустая — это значит, что устройство добавлено, но данные пока не были получены. Если это датчик, то тут нужно немного подождать, а в случае с выключателем — выключить или включить его. | Ещё бывает так, что карточка устройства появилась, но пустая — это значит, что устройство добавлено, но данные пока не были получены. Если это датчик, то тут нужно немного подождать, а в случае с выключателем — выключить или включить его. | ||
Строка 154: | Строка 150: | ||
# Откройте файл конфигурации для редактированияː | # Откройте файл конфигурации для редактированияː | ||
#:<syntaxhighlight lang="bash"> | #:<syntaxhighlight lang="bash"> | ||
nano /mnt/data/root/zigbee2mqtt/data/configuration.yaml | |||
</syntaxhighlight> | </syntaxhighlight> | ||
# Найдите в секции '''devices''' ваше устройство. | # Найдите в секции '''devices''' ваше устройство. | ||
Строка 162: | Строка 158: | ||
systemctl restart zigbee2mqtt | systemctl restart zigbee2mqtt | ||
</syntaxhighlight> | </syntaxhighlight> | ||
# В стандартном веб- | # В стандартном веб-интерфейсе контроллера на вкладке Devices должно появиться устройство с заданным именем. | ||
# Удалите карточку устройства со старым именем с вкладки Devices, для этого нажмите на корзинку в заголовке. | # Удалите карточку устройства со старым именем с вкладки Devices, для этого нажмите на корзинку в заголовке. | ||
Новое имя устройства должно соответствовать [https://www.zigbee2mqtt.io/guide/configuration/devices-groups.html#common-device-options этим требованиям] и не должно быть одинаковым для нескольких устройств. | Новое имя устройства должно соответствовать [https://www.zigbee2mqtt.io/guide/configuration/devices-groups.html#common-device-options этим требованиям] (плюс нельзя использовать косую черту <code>/</code>) и не должно быть одинаковым для нескольких устройств, а также соответствовать определённым правилам — так называемым соглашениям ([https://github.com/wirenboard/conventions/blob/main/README.md Wiren Board MQTT Conventions]). | ||
<gallery mode="packed" heights="150px" caption="Изменение friendly_name"> | <gallery mode="packed" heights="150px" caption="Изменение friendly_name"> | ||
Строка 181: | Строка 177: | ||
publish("zigbee2mqtt/0x00158d0001f3fc34/set", JSON.stringify({ state: "OFF" }), 2, false); | publish("zigbee2mqtt/0x00158d0001f3fc34/set", JSON.stringify({ state: "OFF" }), 2, false); | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Вместо wb-rules вы можете использовать [[Node-RED]]. | |||
=== Удаление устройств === | === Удаление устройств === | ||
Строка 197: | Строка 195: | ||
Image: WebUI Zigbee Device Remove.png | Корзинка для удаления карточки Zigbee-устройства | Image: WebUI Zigbee Device Remove.png | Корзинка для удаления карточки Zigbee-устройства | ||
</gallery> | </gallery> | ||
=== Как переустановить с сохранением данных === | |||
В некоторых случаях может потребоваться переустановить конвертер с сохранением данных, например, если мост не стартует после обновления. | |||
Инструкция: | |||
# Перейдите в домашний каталог: | |||
#:<syntaxhighlight lang="bash"> | |||
cd ~ | |||
</syntaxhighlight> | |||
# Сохраните настройки: | |||
#:<syntaxhighlight lang="bash"> | |||
cp -R /mnt/data/root/zigbee2mqtt/data data-backup | |||
</syntaxhighlight> | |||
# Удалите zigbee2mqtt командой: | |||
#:<syntaxhighlight lang="bash"> | |||
apt purge zigbee2mqtt | |||
</syntaxhighlight> | |||
# Если остался каталог с node-modules — удалите его: | |||
#:<syntaxhighlight lang="bash"> | |||
rm -r /mnt/data/root/zigbee2mqtt/node_modules | |||
</syntaxhighlight> | |||
# Заново поставьте zigbee2mqtt: | |||
#:<syntaxhighlight lang="bash"> | |||
apt install zigbee2mqtt | |||
</syntaxhighlight> | |||
# Восстановите настройки из архива: | |||
#:<syntaxhighlight lang="bash"> | |||
cp -R data-backup/* /mnt/data/root/zigbee2mqtt/data | |||
</syntaxhighlight> | |||
# Перезапустите сервис: | |||
#:<syntaxhighlight lang="bash"> | |||
systemctl restart zigbee2mqtt | |||
</syntaxhighlight> | |||
== Диагностика неисправностей == | == Диагностика неисправностей == | ||
Строка 274: | Строка 306: | ||
== Полезные ссылки == | == Полезные ссылки == | ||
* [https://www.zigbee2mqtt.io/ Документация zigbee2mqtt] | * [https://www.zigbee2mqtt.io/ Документация zigbee2mqtt] | ||
* [https://habr.com/ru/company/wirenboard/blog/713274/ Работаем с Zigbee-устройствами через Zigbee2mqtt и Node-RED] | |||
* [https://habr.com/ru/companies/wirenboard/articles/750640/ Подключаем Zigbee-устройства к контроллеру Wiren Board и пишем сценарии на wb-rules] | |||
* [[zigbee2mqtt-src| Сборка zigbee2mqtt из исходников]] | * [[zigbee2mqtt-src| Сборка zigbee2mqtt из исходников]] |