MR3 публикация неизменившихся значений

Добрый день.

Данные о состоянии входов и выходов MR3, опрашиваются WB7 и далее отправляются на верхний уровень. Актуальность этих данных на момент опроса критична для системы мониторинга верхнего уровня. В предыдущих прошивках (до 1.20.1), при соответствующей настройке WB7 (Интервал публикации неизменившихся значений) данные о состоянии и входа и выхода обновлялись при каждом опросе. После обновления прошивки данные о состоянии входа обновляются, а данные о состоянии выхода - нет. Только при изменении положения реле. Это можно как то поправить?

Добрый день.
Не очень пока понятно, как прошивка реле влияет на работу wb-mqtt-db.
Пробую воспроизвести.
wb-mqtt-db=
Конфигурирую группу:


В период 18:35 - 18:43 состояние канала не меняю.
в 18:44 публикую неизменившееся:

mosquitto_pub  -t "/devices/wb-mr6c_45/controls/K1" -m 0

Получаю ожидаемое:


Точку 16 февр. 2024 г. 18:44:03:194 со значением “0”

Я не упоминал про wb-mqtt-db. В верхний уровень данные попадают посредством Telegraf’а. Если я правильно понимаю, то wb-mqtt-db тут не при чем. И по всей видимости в БД WB попадают не все данные:

  1. К контроллеру WB7 (предварительно установлено ПО Telegraf) подключаю реле MR3-LV (id 187) по RS-485-1.

  2. В конфигурационный файл /etc/wb-mqtt-serial.conf вношу соответствующие изменения (кроме устройства изменяю «Интервал публикации неизменившихся значений» на 10, сохраняю.

  3. В ПО верхнего уровня (Grafana), кроме прочего, пошли соответствующие данные:
    A) /devices/wb-mr3_187/controls/Input 0 — значение 0,
    B) /devices/wb-mr3_187/controls/Input 0 counter — значение 0,
    C) /devices/wb-mr3_187/controls/K1 — значение 0,
    причем по топикам A и B данные (неизменившиеся) поступают непрерывно, с одинаковым интервалом, а по топику C поступило только одно значение (при рестарте драйвера).

  4. Проверяю соответствующие данные в веб-интерфейсе из БД WB (страница «история»):

обновление данных происходит только по топику A, по топикам B и C данные не обновляются.
Причем после «26 февр. 2024 г. 13:22:11:713» и по топику A данные перестали обновляться.
Изменение значения топика C произошло после переключения контакта реле. Данные топиков A и B по прежнему не обновляются.

Но в ПО верхнего уровня данные как по A, так и по и B продолжают поступать непрерывно:


Не понятно поведение БД WB – по топику A в начале шла запись данных (неизменившихся), а потом прекратилась. По топику B – в БД записалось только одно значение.

Про прошивку упомянул, поскольку с реле с версиями ПО 1.20.1 и ниже такого поведения не наблюдалось. В БД WB не заглядывал, меня устраивало что на верхний уровень с каждым опросом поступали все необходимые значения.
Сейчас зашел на другой контроллер, видно что в БД WB неизменившиеся значения не обновляются, сохраняются значения только при их изменении:

но наверх они поступают с каждым опросом:

Проблема больше не в том что WB в БД записывает или нет, а в том что данные на верхний уровень по топикам /wb-mr3_…/controls/K… передаются только при изменении этих данных.

Сейчас к другому контроллеру через MGE по одной шине подключены несколько реле с версиями выше 1.20.1 и одно реле с версией 1.17.8. С реле со старой прошивкой данные по топику controls/K… последовательно обновляются, а данные с других реле нет. С чем это может быть связано?

Для модулей реле с 1.20.0 добавлен быстрый модбас, скорее всего связано с тем что после добавления - модель стала целиком событийной.

Как сделать так, чтобы значения и по Input и по Output обновлялись, независимо от того изменились они или нет? Если это решается только откатом прошивки, то где ее можно взять?
В репозитории прошивок для реле ниже версий 1.20.2 нет.

А что за задача? То есть - к чему перепубликация не изменившегося?

Для мониторинга на верхний уровень должны поступать неизменившиеся значения. Странно что для Input они приходят, а для Output (…/K…) нет.

А вот это - да, напишу разработчикам.

Да, воспроизводится. Прошивка 1.20.4 WB-MR3 id 36

mosquitto_sub -v -t "/devices/wb-mr3_36/#"
/devices/wb-mr3_36/meta {"driver":"wb-modbus","title":{"en":"WB-MR3 36"}}
/devices/wb-mr3_36/meta/driver wb-modbus
/devices/wb-mr3_36/meta/name WB-MR3 36
/devices/wb-mr3_36/controls/Input 0 0
/devices/wb-mr3_36/controls/Input 0/meta {"order":1,"readonly":true,"title":{"ru":"Вход 0"},"type":"switch"}
/devices/wb-mr3_36/controls/Input 0/meta/order 1
/devices/wb-mr3_36/controls/Input 0/meta/readonly 1
/devices/wb-mr3_36/controls/Input 0/meta/type switch
/devices/wb-mr3_36/controls/Input 0 counter 0
/devices/wb-mr3_36/controls/Input 0 counter/meta {"order":2,"readonly":true,"title":{"ru":"Счетчик 0"},"type":"value"}
/devices/wb-mr3_36/controls/Input 0 counter/meta/order 2
/devices/wb-mr3_36/controls/Input 0 counter/meta/readonly 1
/devices/wb-mr3_36/controls/Input 0 counter/meta/type value
/devices/wb-mr3_36/controls/Input 1 0
/devices/wb-mr3_36/controls/Input 1/meta {"order":3,"readonly":true,"title":{"ru":"Вход 1"},"type":"switch"}
/devices/wb-mr3_36/controls/Input 1/meta/order 3
/devices/wb-mr3_36/controls/Input 1/meta/readonly 1
/devices/wb-mr3_36/controls/Input 1/meta/type switch
/devices/wb-mr3_36/controls/Input 1 counter 0
/devices/wb-mr3_36/controls/Input 1 counter/meta {"order":4,"readonly":true,"title":{"ru":"Счетчик 1"},"type":"value"}
/devices/wb-mr3_36/controls/Input 1 counter/meta/order 4
/devices/wb-mr3_36/controls/Input 1 counter/meta/readonly 1
/devices/wb-mr3_36/controls/Input 1 counter/meta/type value
/devices/wb-mr3_36/controls/Input 2 0
/devices/wb-mr3_36/controls/Input 2/meta {"order":5,"readonly":true,"title":{"ru":"Вход 2"},"type":"switch"}
/devices/wb-mr3_36/controls/Input 2/meta/order 5
/devices/wb-mr3_36/controls/Input 2/meta/readonly 1
/devices/wb-mr3_36/controls/Input 2/meta/type switch
/devices/wb-mr3_36/controls/Input 2 counter 0
/devices/wb-mr3_36/controls/Input 2 counter/meta {"order":6,"readonly":true,"title":{"ru":"Счетчик 2"},"type":"value"}
/devices/wb-mr3_36/controls/Input 2 counter/meta/order 6
/devices/wb-mr3_36/controls/Input 2 counter/meta/readonly 1
/devices/wb-mr3_36/controls/Input 2 counter/meta/type value
/devices/wb-mr3_36/controls/Input 3 0
/devices/wb-mr3_36/controls/Input 3/meta {"order":7,"readonly":true,"title":{"ru":"Вход 3"},"type":"switch"}
/devices/wb-mr3_36/controls/Input 3/meta/order 7
/devices/wb-mr3_36/controls/Input 3/meta/readonly 1
/devices/wb-mr3_36/controls/Input 3/meta/type switch
/devices/wb-mr3_36/controls/Input 3 counter 0
/devices/wb-mr3_36/controls/Input 3 counter/meta {"order":8,"readonly":true,"title":{"ru":"Счетчик 3"},"type":"value"}
/devices/wb-mr3_36/controls/Input 3 counter/meta/order 8
/devices/wb-mr3_36/controls/Input 3 counter/meta/readonly 1
/devices/wb-mr3_36/controls/Input 3 counter/meta/type value
/devices/wb-mr3_36/controls/K1 0
/devices/wb-mr3_36/controls/K1/meta {"order":9,"readonly":false,"type":"switch"}
/devices/wb-mr3_36/controls/K1/meta/order 9
/devices/wb-mr3_36/controls/K1/meta/readonly 0
/devices/wb-mr3_36/controls/K1/meta/type switch
/devices/wb-mr3_36/controls/K2 0
/devices/wb-mr3_36/controls/K2/meta {"order":10,"readonly":false,"type":"switch"}
/devices/wb-mr3_36/controls/K2/meta/order 10
/devices/wb-mr3_36/controls/K2/meta/readonly 0
/devices/wb-mr3_36/controls/K2/meta/type switch
/devices/wb-mr3_36/controls/K3 0
/devices/wb-mr3_36/controls/K3/meta {"order":11,"readonly":false,"type":"switch"}
/devices/wb-mr3_36/controls/K3/meta/order 11
/devices/wb-mr3_36/controls/K3/meta/readonly 0
/devices/wb-mr3_36/controls/K3/meta/type switch
/devices/wb-mr3_36/controls/Serial 4270430206
/devices/wb-mr3_36/controls/Serial/meta {"order":12,"readonly":true,"title":{"ru":"Серийный номер"},"type":"text"}
/devices/wb-mr3_36/controls/Serial/meta/order 12
/devices/wb-mr3_36/controls/Serial/meta/readonly 1
/devices/wb-mr3_36/controls/Serial/meta/type text
/devices/wb-mr3_36/controls/Input 1 counter 0
/devices/wb-mr3_36/controls/Input 2 counter 0
/devices/wb-mr3_36/controls/Input 3 counter 0
/devices/wb-mr3_36/controls/Input 0 counter 0
/devices/wb-mr3_36/controls/Serial 4270430206
/devices/wb-mr3_36/controls/Input 1 0
/devices/wb-mr3_36/controls/Input 2 0
/devices/wb-mr3_36/controls/Input 3 0
/devices/wb-mr3_36/controls/Input 0 0
/devices/wb-mr3_36/controls/Input 1 counter 0
/devices/wb-mr3_36/controls/Input 2 counter 0
/devices/wb-mr3_36/controls/Input 3 counter 0
/devices/wb-mr3_36/controls/Input 0 counter 0
/devices/wb-mr3_36/controls/Serial 4270430206
/devices/wb-mr3_36/controls/Input 1 0
/devices/wb-mr3_36/controls/Input 2 0
/devices/wb-mr3_36/controls/Input 3 0
/devices/wb-mr3_36/controls/Input 0 0
/devices/wb-mr3_36/controls/Input 1 counter 0
/devices/wb-mr3_36/controls/Input 2 counter 0
/devices/wb-mr3_36/controls/Input 3 counter 0
/devices/wb-mr3_36/controls/Input 0 counter 0
/devices/wb-mr3_36/controls/Serial 4270430206
/devices/wb-mr3_36/controls/Input 1 0
/devices/wb-mr3_36/controls/Input 2 0
/devices/wb-mr3_36/controls/Input 3 0
/devices/wb-mr3_36/controls/Input 0 0
/devices/wb-mr3_36/controls/Input 1 counter 0
/devices/wb-mr3_36/controls/Input 2 counter 0
/devices/wb-mr3_36/controls/Input 3 counter 0
/devices/wb-mr3_36/controls/Input 0 counter 0
/devices/wb-mr3_36/controls/Serial 4270430206
/devices/wb-mr3_36/controls/Input 1 0
/devices/wb-mr3_36/controls/Input 2 0
/devices/wb-mr3_36/controls/Input 3 0
/devices/wb-mr3_36/controls/Input 0 0

Сделал багрепорт.

Отлично. Видимо это будет исправлено только с новой прошивкой. Пришлите пожалуйста старую (до 1.20.0), чтобы откатить обновления. Это очень важно. Спасибо.

Нет, старых прошивок под эти модули нет.
Можете отключить sporadic в шаблоне.

Спасибо.