При перезапуске сервиса wb-mqtt-serial некоторые выходы инвертируются. К mqtt брокеру больше ничего не подключено.
Каждый раз инвертируются одни и те же выходы. Модели устройств тоже разные MDM3, MRGBW-D, MR3.
Подскажите пожалуйста куда копать
Прошивка везде testing latest
Добрый день. Что такое “инвертируются”?
Пожалуйста опишите конфигурацию устройств, настройки ПО для того чтобы можно было воспроизвести описанное поведение.
инверируются - это если было включено до после рестарта будет выключено после и наоборот
сбросить конфиг wb-mqtt-serial?
Не воспроизводится.
Покажите, при остановленном wb-mqtt-serial
- результаты чтения регистра который , предположительно, изменяется
- и логи (с включенным debug) wb-mqtt-serial с момента запуска и до изменения состояния регистра включительно.
wb-mqtt-serial_20230607T122532.log.zip (96.9 KB)
07-06-2023 12:25:13.798 - рестарт
wb-mr3_208/K3 - канал который изменяется
догло держать дебаг не могу, слишком много данных
Я наблюдаю всего 6 записей для modbus:208:coil: 2
при этом такое впечатление что реле было перезагружено, почему?
Ну и
2023-06-07T09:25:25.744Z [wb-mqtt-serial] DEBUG: [modbus] write 1 coil(s) @ 2 of device modbus:208
Setup-секция?
PS: А как и, главное, зачем лог идет наоборот, внизу более старые события?
реле не перегружал, вот пруф, смотрите uptime
не понял. скинуть конфиг?
Гораздо лучше описать все-все условия которые нужно выполнить для воспроизведения поведения.
прикол в том, что нет условий. Просто рестарт сервиса и каждый раз инвертируются выходы.
Главное что не все выходы, а только определенные и всегда одни и те же.
Я понимаю, насколько это странно звучит.
Меня больше всего удивляет, что инвертирует выход. Ладно, если бы каждый раз включало и только включало. Но оно каждый раз меняет состояние на противоположное
Может у вас какое-нибудь правило написано, которое меняет состояние на противоположное?
да у меня правил практически нет.
их много не нужно, достаточно одного. ) Как вариант при рестарте происходит “безусловное” выполнение правила, а там возможно внутри написано dev["...."] = ! dev["...."]