Wirenboar 6 ревизии:6.6.0 появилась потребность обновить прошивку поскольку модули m1w2 постоянно зависают, а команда wb-mcu-fw-updater update-all работает только на свежей прошивке. после обновления на прошивку 202310120850_wb-2307_bullseye_wb6x , с устройства пропали все m1w2 и wb- mr6c, при этом правила остались, все устройства были восстановлены, в ручном режиме реле отрабатывают, но правила больше не работают.
Добрый день.
Пришлите диагностический архив.
Что подразумеваете под не работающими правилами? Каков статус сервиса wb-rules
?
Добрый день, с диагностическим архивом есть некоторые сложности
по неработающим правилам вот такие правила у нас используются
Команда видимо введена некорректно.
wb-diag-collect diag
Просьба вывод терминала и части кода оформлять по рекомендациям, скрины очень трудно читаются.
В глаза бросается использование канала “wb-m1w2_82/Input Voltage”. Есть ли у вас такой в MQTT каналах? И почему используете именно его?
root@wirenboard-AY5ESHRK:~# wb-diag-collect diag -bash: wb-diag-collect: command not found
ситуация та же, по поводу “Input Voltage” да такой имеется, если кратко, используем зависимость от него нежели от изменения датчика температуры так как первый интенсивнее меняет показания и сработка правила идёт оперативнее, и проверять правило удобнее не нужно ждать пока температура отъиграет в ту или иную сторону.
Сейчас важно понимать можно ли без рисков обновить прошивку и далее обновить прошивки преобразователей и реле.
Пришлите вывод команды:
wb-release
root@wirenboard-AY5ESHRK:~# wb-release -bash: wb-release: command not found
Покажите на вкладке “Устройства” веб-интерфейса, как отображается виджет “System”.
Не вижу, чтобы вы были обновлены до wb-2307. Как обновлялись? Обновление прошло без ошибок?
Давайте определимся с проблемой и тем, что хотим решить, последовательно. Иначе будем на одном месте стоять.
- Вы хотите обновить прошивку WB-M1W2. Укажите ревизию модуля и версию прошивки.
- Вы хотите обновить ПО контроллера. Если не ошибаюсь, то с вашей версии контроллера перейти на свежую можно только через флешку. Перед этим сделайте резервную копию пользовательских данных.
если второй пункт верен то беру паузу на проверку, проблемный контроллер обновлял через вэб интерфейс.
Итак обновили контроллер до актуальной версии через usb по инструкции добавили устройства правила всё равно не работают.
Какой статус у сервиса wb-rules?
Если сервис работает, то добавьте в правило логгирование и можно будет посмотреть как работает само правило.
сервис активен
root@wirenboard-AY5ESHRK:~# service wb-rules status
● wb-rules.service - MQTT Rule engine for Wiren Board
Loaded: loaded (/lib/systemd/system/wb-rules.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2023-11-15 05:14:58 UTC; 2h 19min ago
Main PID: 4479 (wb-rules)
Tasks: 17 (limit: 1146)
Memory: 25.9M
CPU: 6min 45.607s
CGroup: /system.slice/wb-rules.service
└─4479 /usr/bin/wb-rules -syslog -editdir /etc/wb-rules/ /usr/share/wb-rules-system/rules/ /etc/wb-rules/ /usr/share/wb-rules/
Nov 15 05:15:05 wirenboard-AY5ESHRK wb-rules[4479]: INFO: driver is ready
Nov 15 05:15:06 wirenboard-AY5ESHRK wb-rules[4479]: INFO: [rule info] using file /var/lib/wirenboard/wbrules-persistent.db for persistent DB
Nov 15 05:15:06 wirenboard-AY5ESHRK wb-rules[4479]: INFO: [wbgo_mqtt] wb-rules-engine-wirenboard-AY5ESHRK-4479: MQTT connection established
Nov 15 05:15:07 wirenboard-AY5ESHRK wb-rules[4479]: INFO: [engine] Starting main loop
Nov 15 05:15:07 wirenboard-AY5ESHRK wb-rules[4479]: INFO: the engine is ready
Nov 15 05:15:07 wirenboard-AY5ESHRK wb-rules[4479]: INFO: [engine] Starting sync loop
Nov 15 05:15:19 wirenboard-AY5ESHRK wb-rules[4479]: WARNING: [rule warning] DAC: no config file
Nov 15 05:15:24 wirenboard-AY5ESHRK wb-rules[4479]: INFO: [rule info] add your rules to /etc/wb-rules/
Nov 15 05:15:25 wirenboard-AY5ESHRK wb-rules[4479]: INFO: all rule files are loaded
Nov 15 05:15:29 wirenboard-AY5ESHRK wb-rules[4479]: WARNING: [device] Unknown metadata for device metrics: 'error'
root@wirenboard-AY5ESHRK:~#>
есть какой то мануал как добавить логирование ?
В примерах правил можно найти вариант с логгированием. Включаете отладку правил и смотрите поэтапно работу правила. Скорее всего что-то в самом правиле не работает.
Но разве в документации не описано? Описано, проверил: GitHub - wirenboard/wb-rules: Rule engine for Wiren Board
дело в том что до обновления правила работали, хотел уточнить не поменялось ли что либо как ранее ( вместо 1 - true вместо 0 -false)
Не припоминается, чтоб были изменения, способные привести к неработоспособности данного правила. Я бы первым делом сверил названия контролов в правиле и в списке каналов MQTT. А также отладил само правило воспользовавшись советами выше.