Инструменты пользователя

Инструменты сайта


iot:software:zigbee2mqtt:windows

Установка и настройка Zigbee2MQTT на Windows

В данной статье1) описана установка и основные настройки Zigbee2MQTT на Windows2). Предполагается, что прочий необходимый софт уже установлен3), а координатор прошит.

Установка

  1. Скачать и установить git;
  2. запустить командную строку от имени администратора;
  3. создать папку, выполнив команду md c:\opt\zigbee2mqtt;
  4. выполнить c:\Progra~1\Git\bin\git clone https://github.com/Koenkk/zigbee2mqtt.git c:\opt\zigbee2mqtt;
  5. перейти в папку, выполнив команду cd с:\opt\zigbee2mqtt;
  6. ввести и выполнить npm install.

Настройка

Для настройки Zigbee2MQTT надо перейти в папку c:\opt\zigbee2mqtt\data\ и открыть файл настроек configuration.yaml. Ниже указаны самые необходимые параметры на примере моего конфига:

# Присутствует по умолчанию.
homeassistant: false
 
# Установить в true для добавления новых устройств.
permit_join: false
 
# Вполне стандартные настройки MQTT.
mqtt:
  base_topic: zigbee2mqtt
  server: 'mqtt://localhost'
  user: RGEHrther
  password: jkyuk56e4t
 
# Установка номера COM-порта.
serial:
  port: \\.\COM3
  disable_led: false
# disable_led в положении true выключит светодиод на анализаторе.
# Чтобы включить обратно, помимо установки false, необходимо передернуть устройство по питанию!
 
# Включение web-интерфейса.
frontend:
  port: 8080
  host: 0.0.0.0
  auth_token: test
# Пароль авторизации в web-интерфейсе.
# У меня цифры в виде токена не заработали, только текст...

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

Тестовый запуск Zigbee2MQTT осуществляется из командной строки4) вводом npm start находясь в папке c:\opt\zigbee2mqtt. А остановка, нажатием там же клавиш Ctrl+C → Y.

Для добавления устройств необходимо поменять флаг false на true для параметра permit_join и не забыть вернуть его назад после настройки. Управлять этим флагом так же можно из web-интерфейса!

Устройства добавляются согласно их инструкции, но обычно, это долгое нажатие на единственную кнопку на корпусе. :-)

При наличии роутера, в web-интерфейсе появляется выбор, к какому из приемников подключать устройство. Автоматического роуминга между ними, кажется, нет… – т.е. к какому датчик подключился, с тем и будет работать до сброса.

Автозапуск

Я не нашел5) нормальных способов автозапуска Zigbee2MQTT на Windows, поэтому пришлось немного поколхозить:

  1. устанавливаем pm2, выполнив npm install pm2 -g;
  2. скачиваем и копируем файл nssm.exe в c:\opt\zigbee2mqtt;
  3. Выполняем команду nssm install ZigBee2MQTT;
  4. в открывшемся окне вводим в «Path» C:\Users\<username>\AppData\Roaming\npm\pm2.cmd6);
  5. в поле «Startup directory» – c:\opt\zigbee2mqtt;
  6. в поле «Arguments» – start c:\opt\zigbee2mqtt\index.js;
  7. и на закладке «Exit actions» в поле «Restart» выбираем «Stop service»;
  8. все, нажимаем «Install service»!

Это несколько кривой вариант, т.к. перезапуск службы не работает, но он самый простой и быстрый.


Дисклеймер

  • Использование материалов данной базы знаний разрешено на условиях лицензии, указанной внизу каждой страницы! При использовании материалов активная гиперссылка на соответствующую страницу данной базы знаний обязательна!
  • Автор не несет и не может нести какую либо ответственность за последствия использования материалов, размещенных в данной базе знаний. Все материалы предоставляются по принципу «как есть». Используйте их исключительно на свой страх и риск.
  • Все высказывания, мысли или идеи автора, размещенные в материалах данной базе знаний, являются исключительно его личным субъективным мнением и могут не совпадать с мнением читателей!
  • При размещении ссылок в данной базе знаний на интернет-страницы третьих лиц автор не несет ответственности за их техническую функциональность (особенно отсутствие вирусов) и содержание! При обнаружении таких ссылок, можно и желательно сообщить о них в комментариях к соответствующей статье.
1)
При изысканиях использовались материалы тут и тут.
2)
Проверено на Windows 10, но разницы, думаю, нет.
3)
Обязательно нужен Node.js и MQTT-брокер, к примеру.
4)
Естественно, с правами администратора!.. наверно… LOL
5)
Но и не сильно искал, т.к. жду Малинку, а это временная вынужденная мера…
6)
Вместо <username> нужно ввести имя текущего пользователя!

Обсуждение

Абырвалг, 2022/12/01 17:23
необходимо указать минимальные системные требования. Например ОС должна быть не ниже 8.1 RC1 чего-то там т.к. Node.js на более низкую версию поставить не получится. привет олдскулам на ХРюше и топоре =)
Николай Солошин, 2022/12/01 18:34
А смысл? ) Вот вы написали, теперь есть. :D
Ваш комментарий:
N H J K F C D᠎ T Y D A F K N T O
 
Последнее изменение: 2022/02/16 21:20 — Николай Солошин