Установка zigbee2mqtt и xiaomi-zb2mqtt на Raspberry PI 3
zigbee2mqtt
Правильный порядок действий пока запомнить не удалось.При установке есть проблема с serialport, у него поменялся адрес репозитария и скрипт установки завершается с ошибкой, поэтому исходники я подставил вручную в нужную папку, и только после этого что-то начало получаться.
Для корректной работы нужен nodejs и serialport.
Краткая инструкция:
# Setup Node.js repository sudo curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - # Install Node.js sudo apt-get install -y nodejs git make g++ gcc # Verify that the correct nodejs and npm (automatically installed with nodejs) # version has been installed node --version # Should output v8.X.X (at time of writing v8.11.2) npm --version # Should output > 5.X.X (at time of writing 5.6.0) # Clone zigbee2mqtt repository sudo git clone https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt sudo chown -R pi:pi /opt/zigbee2mqtt # Install dependencies cd /opt/zigbee2mqtt npm install
Настройки хранятся в файле /opt/zigbee2mqtt/data/configuration.yaml
После установки мне не пришлось ничего в этом файле править.
Далее настраиваем запуск:
Создаем файл /etc/systemd/system/zigbee2mqtt.service командой:
sudo nano /etc/systemd/system/zigbee2mqtt.service
[Unit]
Description=zigbee2mqtt
After=network.target
[Service]
ExecStart=/usr/bin/npm start
WorkingDirectory=/opt/zigbee2mqtt
StandardOutput=inherit
StandardError=inherit
Restart=always
User=pi
[Install]
WantedBy=multi-user.target
Сохраняем и закрываем файл.Проверяем работоспособность.
Запускаем:
sudo systemctl start zigbee2mqtt
systemctl status zigbee2mqtt.service
sudo systemctl enable zigbee2mqtt.service
Некоторые полезные команды:
# Остановка zigbee2mqtt
sudo systemctl stop zigbee2mqtt
# Запуск zigbee2mqtt
sudo systemctl start zigbee2mqtt
# Просмотр лога zigbee2mqtt
sudo journalctl -u zigbee2mqtt.service -f
xiaomi-zb2mqtt
Установка:
cd /optgit clone https://github.com/starkun/xiaomi-zb2mqtt.git
cd xiaomi-zb2mqtt
npm install
Настройка:
в файле index.js указать правильно имя сервера и адрес USB dongle сс2531
Адрес узнать можно командой:
serialport-list
Результат выполнения будет приблизительно такой:
/dev/ttyAMA0
/dev/ttyACM0 usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B041202265E-if00 Texas Instruments
Запуск:
node index.js
Запуск с отладкой:
DEBUG=* node index.js
Автозапуск через crone.
Запускаем редактор конфигурации крона:
crontab -e
и в конце файла дописываем строку:
@reboot node /opt/xiaomi-zb2mqtt/index.js
Источник1 : https://github.com/starkun/xiaomi-zb2mqtt
Комментарии
Отправить комментарий