Найти в Дзене

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

Оглавление

Устанавливаем и настраиваем Mosquitto

sudo apt install mosquitto mosquitto-clients

Добавляем службу в автозапуск

sudo systemctl enable mosquitto

Ставим пароль на mosquitto

sudo systemctl stop mosquitto
sudo mosquitto_passwd -c /etc/mosquitto/passwd z2mqtt

Вводим нужный пароль

Редактируем конфиг

sudo nano /etc/mosquitto/mosquitto.conf

Содержимое файла:

password_file /etc/mosquitto/passwd
allow_anonymous false
listener 1883 0.0.0.0

Запускаем службу

sudo systemctl start mosquitto

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

sudo curl -sL [https://deb.nodesource.com/setup_14.x](https://deb.nodesource.com/setup_14.x) | sudo -E bash -
sudo apt-get install -y nodejs git make g++ gcc
sudo git clone [https://github.com/Koenkk/zigbee2mqtt.git](https://github.com/Koenkk/zigbee2mqtt.git) /opt/zigbee2mqtt
cd /opt/zigbee2mqtt
sudo npm ci

Настраиваем z2mqtt

sudo :> /opt/zigbee2mqtt/data/configuration.yaml
sudo nano /opt/zigbee2mqtt/data/configuration.yaml

Содержимое файла

homeassistant: false
permit_join: true
mqtt:
ㅤbase_topic: zigbee2mqtt
ㅤserver: mqtt://localhost
ㅤuser: z2mqtt # Сюда логин из mosquitto
ㅤpassword: "" # Сюда пароль из mosquitto
serial:
ㅤport: /dev/ttyAMA0
experimental:
ㅤoutput: attribute
availability:
ㅤactive:
ㅤㅤtimeout: 10
ㅤpassive:
ㅤㅤtimeout: 120
advanced:
ㅤlog_directory: /opt/zigbee2mqtt/data
ㅤlog_file: log.txt
ㅤlog_rotation: true
ㅤlog_level: info
ㅤnetwork_key: GENERATE
ㅤpan_id: GENERATE
ㅤrtscts: false
ㅤhomeassistant_legacy_entity_attributes: false
ㅤlegacy_api: false
ㅤchannel: 15
ㅤlegacy_availability_payload: true
frontend:
ㅤport: 8090
device_options:
ㅤlegacy: false

Проверяем правильность настройки

cd /opt/zigbee2mqtt
sudo npm start

После успешной настройки останавливаем скрипт комбинацией ctrl+c

Создаем службу zigbee2mqt

sudo nano /etc/systemd/system/zigbee2mqtt.service

Содержимое файла

[Unit]
Description=zigbee2mqtt After=network.target
After=mosquitto.service Requires=mosquitto.service
[Service]
ExecStart=/usr/bin/npm start
WorkingDirectory=/opt/zigbee2mqtt StandardOutput=inherit
StandardError=inherit Restart=always User=root
[Install]
WantedBy=multi-user.target

Разрешаем автозапуск

sudo systemctl enable zigbee2mqtt.service
sudo systemctl start zigbee2mqtt.service