Рабочая инструкция по подключению и настройке zigbee модуля

Инструкция по подключению и настройке z2m

curl -sL https://deb.nodesource.com/setup_10.x | bash -

apt-get install -y nodejs git make g++ gcc

git clone https://github.com/contactless/zigbee2mqtt /mnt/data/root/zigbee2mqtt

chown -R root:root /mnt/data/root/zigbee2mqtt

cd /mnt/data/root/zigbee2mqtt

npm install

Создать файл по пути
/etc/systemd/system/ создал файл «zigbee2mqtt.service»

[Unit]
Description=zigbee2mqtt
After=network.target

[Service]
ExecStart=/usr/bin/npm start
WorkingDirectory=/mnt/data/root/zigbee2mqtt
StandardOutput=inherit
StandardError=inherit
Restart=always
User=root

[Install]
WantedBy=multi-user.target

systemctl enable zigbee2mqtt.service

по пути /mnt/data/root/zigbee2mqtt/data поменять содержимое configuration.yaml

homeassistant: false
permit_join: true
mqtt:
base_topic: /devices/zigbee2mqtt/controls
server: ‘mqtt://localhost’
serial:
port: /dev/ttyMOD3 зависит от порта с z2m
advanced:
rtscts: false
last_seen: epoch

после чего перезапустить сервис zigbee

service zigbee2mqtt restart

после для автозапуска при перезагрузке

systemctl enable zigbee2mqtt

1 лайк

Сделал по инструкции, только вот в devices пишет zigbee state offline. При попытке сопрячь розетку, индикатор на розетке показывает что сопрягся и нигде не отображается. Что я делаю как не надо :slight_smile: ?

Предполагаю что надо обновить контроллер.

apt update && apt upgrade -y

В конфиге выставили устройство согласно порту?

Кстати, да.
имеется в виду:

port: /dev/ttyMOD3

Да, в третьем порту стоит модуль. Пробовал переустановить по иструкции из wiki статьи- тоже не пошла. прошивку обновил сегодня, с полной установкой, без сброса на заводскую установку.

А порт есть?

ls /dev/ |grep tty

Есть

ttyCONSOLE
ttyGSM
ttyMOD3
ttyRS485-1
ttyRS485-2
ttymxc0
ttymxc1
ttymxc3
ttymxc5

Установил версию прошивки контроллера крайнюю: 202009210602, может в этом загвоздка?

на команду npm start выдает следующее:

zigbee2mqtt@1.2.1 start /mnt/data/root/zigbee2mqtt
node index.js

/mnt/data/root/zigbee2mqtt/lib/util/logger.js:10
const level = settings.get().advanced.log_level;
^

TypeError: Cannot read property ‘log_level’ of null
at Object. (/mnt/data/root/zigbee2mqtt/lib/util/logger.js:10:38)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions…js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Module.require (internal/modules/cjs/loader.js:692:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object. (/mnt/data/root/zigbee2mqtt/lib/mqtt.js:2:16)
at Module._compile (internal/modules/cjs/loader.js:778:30)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! zigbee2mqtt@1.2.1 start: node index.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the zigbee2mqtt@1.2.1 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2020-09-23T09_14_45_463Z-debug.log

Дайте свой полный файл настроек.
Подозреваю что структура xml нарушена.
Судя по документации https://www.zigbee2mqtt.io/information/configuration.html не найден

# Optional: Logging level, options: debug, info, warn, error (default: info)
  log_level: info

Хотя необязателен

Это содержимое zigbee2mqtt.service
[Unit]
Description=zigbee2mqtt
After=network.target

[Service]
ExecStart=/usr/bin/npm start
WorkingDirectory=/mnt/data/root/zigbee2mqtt
StandardOutput=inherit
StandardError=inherit
Restart=always
User=root

[Install]
WantedBy=multi-user.target

Это содержимое configuration.yaml

homeassistant: false
permit_join: true
mqtt:
base_topic: /devices/zigbee2mqtt/controls
server: ‘mqtt://localhost’
serial:
port: /dev/ttyMOD3
advanced:
rtscts: false
last_seen: epoch

У меня такое было, когда глючил node.js, сбрасывал вайрон полностью, factory reset делал, ну и по новой ставил его

curl -sL https://deb.nodesource.com/setup_10.x | bash -

apt-get install -y nodejs git make g++ gcc

git clone https://github.com/contactless/zigbee2mqtt /mnt/data/root/zigbee2mqtt

chown -R root:root /mnt/data/root/zigbee2mqtt

cd /mnt/data/root/zigbee2mqtt

npm install

Как определить, что node.js глючит? что пора сбрасывать вайрон?

Попробуйте выполнить на чистом wb эти команды

Ну если вылезает та ошибка что вы показали, то это уже звонок, у меня 8 вайронов сейчас по этой инструкции работает безпроблемно)

“Чистый” это сброшенный на заводские установки?

Но самое первое, это после хард резета выставить правильно порт в конфиге на вэб морде wb

Да