Понятно! Были случаи, когда погнутые ножки контактов решали похожие проблемы, поэтом у обращаю внимание.
Неприятны такие плавающие ошибки, конечно.
Эта тема закроется через две недели, но если что-то будет продолжаться, пишите в новую, со ссылкой на эту. Если это вдруг это что-то с контроллером, сможем его по гарантии поменять.
В текущий момент наблюдается проблема с записью в порт.
Скрипт пишет, но результат не записывается в mqtt.
Было так: сначала выход работал, лампа мигала. Видео глазами. Где-то в районе 16 с чем-то часов перестала. Тут я уже глазами не видел само поведение лампы, но видел из админки, что запись в порт пытается, а состояние выхода не меняется (в веб интерфейсе). В этот момент я снял диаг архив.
Прошло время, минут 10-25, смотрю - опять мигает в вебе, как и должен. Опять снял диаг архив (см. по дате, где более поздний)
Запись в журнале перед тем, как всё стало норм:
"19-10-2025 16:20:02.708 INFO: [rule info] Повторная запись выхода "AlarmInd" в 0: wb-gpio/EXT4_K8"
Где-то через полчаса снова подвис, опять запись не проходит. Запись в журнале где опять подвис:
“19-10-2025 16:48:40.251|INFO: [rule info] Повторная запись выхода “AlarmInd” в 1: wb-gpio/EXT4_K8”
Всё, пока почти ничего не делал, в вебе не нажимал на этот выход, не перезапускал сервисы, попробуйте разобраться пока проявляется.
Замечу, что конкретно сегодня я несколько манипуляций с контроллером делал, то есть сначала его вырубили по питанию жёстко, затем два раза перезагрузил вручную по кнопке из админки, он почему-то не хотел изменять состояние выхода на другом внешнем модуле по rs485, и не вел опрос по tcp snmp (или как там этот интерфейс с ИБП). Этот момент я наверное завтра отпишу подробнее, как что подключено и почему.
PS: по состоянию на вечер выход “отвис” примерно в такое время:
“19-10-2025 20:54:24.200 INFO: [rule info] Повторная запись выхода “AlarmInd” в 1: wb-gpio/EXT4_K8”
PPS: пока не было возможности разобрать контроллер.
По логу частые перезапуски:
19-10-2025 20:54:24.892 INFO: [gpio driver] Started
19-10-2025 20:25:59.649 INFO: [gpio driver] Started
19-10-2025 19:55:52.110 INFO: [gpio driver] Started
19-10-2025 18:17:03.873 INFO: [gpio driver] Started
19-10-2025 17:45:18.953 INFO: [gpio driver] Started
19-10-2025 17:16:53.620 INFO: [gpio driver] Started
19-10-2025 16:20:03.618 INFO: [gpio driver] Started
19-10-2025 15:54:24.913 INFO: [gpio driver] Started
19-10-2025 14:25:47.480 INFO: [gpio driver] Started
19-10-2025 13:41:36.707 INFO: [gpio driver] Started
19-10-2025 13:16:00.089 INFO: [gpio driver] Started
Первые три-четыре можно списать на перезагрузку, а вот после 16 часов его не трогали.
В дополнение к сообщению выше. По изменению состояний до текущего момента: в понедельник, и по-моему ночью ещё были проблемы с выходом. Вчера я попробовал добавить ещё один выход, который контроллер бы всё время переключал (раз в секунду), но сбои прекратились. Вернул скрипт обратно - так же без эффекта. То есть за понедельник по несколько раз на дню зависала запись в порт и выход подвисал, а далее куда-то ушло.
Ну и по факту - сегодня я добавил в свое рабочее правило пару выходов, которые быстро переключаю с регулируемой задержкой между пкреключаниями, и достаточно часто ловлю этот глюк. Не знаю как завтра будет, но пока так. При чем я два одинаковых модуля поменял местами физически, плюс выходы взял так же из двух однотипных, но разных физически модулей, никакой разницы, ловится везде и достаточно хаотично.
Так же замечено, что при попытке такой зависший выход разблочить из админки - гарантированно исправляется переключением из админки при втором нажатии. Первое нажатие и запись в mqtt не проходит, второе проходит и разблокирует доступ из правила.
Продолжаю исследования. Для упрощения анализа был сделан отдельный скрипт:
defineVirtualDevice("DIOTest", {
title:"DIOTest",
cells: {
"DIOTest": {
title: "Тест выхода",
type:"switch",
value: 0
},
"DIOTime": {
title: "Тест выхода, время",
type:"value",
value: 0,
readonly: false
},
}
});
var DIOTestTimer = 0;
setInterval(function () {
if (dev["DIOTest/DIOTest"]) {
if (DIOTestTimer)
DIOTestTimer--;
else {
DIOTestTimer = dev["DIOTest/DIOTime"];
dev["wb-gpio/EXT3_K6"] = dev["wb-gpio/EXT3_K6"] ? false : true;
dev["wb-gpio/EXT4_K6"] = dev["wb-gpio/EXT4_K6"] ? false : true;
}
}
}, 500);
И ситуация таки периодически воспроизводится. При чем хаотично, подписают, отвисают, оба два вместе, один и и т.п. Вроде как при меньшем интервале чаще, но жёсткой связи не заметил.
Добрый день! Простите пожалуйста, потерял ваши сообщения. Скажтите, проблема по-прежнему актуальна?










