После 9 лет работы перестали читаться регистры в subj.
Запись проходит нормально, на изменение состояния входа реле реагирует, но состояние входа и в интерфейсе и в mqtt не меняется.
В mqtt у всех линий выставлен meta/eror r= 1.
Вопрос: похоже, проблема аппаратная. Как можно починить за несколько дней (больше у меня нет) ? Смотреть конденсаторы? Что-то ещё типичное для таких ситуаций?
Здравствуйте! Я — автоматический помощник техподдержки Wiren Board.
Сейчас нерабочее время — я постараюсь помочь сразу, а в ближайший рабочий день
инженеры посмотрят тему и ответят.
По этим симптомам аппаратная неисправность пока не подтверждается. Реакция реле на локальный вход не проверяет обратную связь по RS-485. Важно уточнить: под «запись проходит» вы имеете в виду, что реле физически переключается по команде из веб-интерфейса?
Подтверждённого типового дефекта WB-MR14 с такими симптомами и рекомендацией заменить конденсаторы в найденных источниках нет. Паять наугад пока не советую; срок ремонта без диагностики оценить не получится.
Чтобы быстро сузить причину:
Пришлите лог опроса — нужно отличить отсутствие ответа от ошибки Modbus:
journalctl -u wb-mqtt-serial -n 200 --no-pager
Укажите модель контроллера, ревизию MR14 с наклейки и релиз:
cat /etc/wirenboard-release
Напишите, были ли перед отказом обновления, изменения конфигурации или работы на линии, и читаются ли другие устройства на том же RS-485.
Здесь может понадобиться мнение инженера Wiren Board. Для уверенного
ответа мне может не хватить контекста — если можете, приложите логи или
результаты тестов, я уточню гипотезы точнее.
Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны
неточности. Если пришлёте уточняющие данные/логи, я смогу проверить
гипотезы точнее.
Прошивку сбойного реле узнать по понятным причинам нет возможности, но у соседнего точно такого же, обновленного в то же время чтои сбойное стоит Apr 20 201815:40:08
Спасибо, теперь понятно: команды по RS-485 до MR14 доходят и исполняются. Ошибка malformed response: invalid data size означает, что драйвер получил ответ с некорректным размером данных, а не просто не дождался ответа. Это ещё не определяет, виноваты ли электроника модуля, обмен на линии или обработка ответа.
В похожей теме про WB-MR14 при ошибках чтения ручной опрос работал; инженеры проверяли настройки порта и отладочный обмен. Поэтому замену конденсаторов и обновление прошивки пока лучше отложить.
Сейчас полезнее всего:
Пришлите конфигурацию проблемного порта из /etc/wb-mqtt-serial.conf и версию драйвера:
Нужны строки отправленных и принятых байтов вокруг ошибки чтения и одной команды переключения безопасной нагрузки.
По этим пакетам можно будет проверить, что именно не совпадает в ответе, и подготовить ручной тест под ваш порт. Версию соседнего реле пока считаем лишь ориентиром, а не подтверждённой версией сбойного.
Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.
Вы правы: я слишком широко предложил проверять порт. Работа остальных устройств и исполнение команд MR14 делают неверные параметры связи маловероятной причиной, особенно после многолетней работы на 115200 8N2. Менять их сейчас оснований нет.
Но щелчок реле подтверждает получение команды модулем, а не получение контроллером корректного ответа на запись. Поэтому неисправность передачи со стороны MR14 пока не исключена. Работа соседнего устройства также не проверяет передатчик самого MR14.
Следующий полезный шаг — только короткий отладочный лог чтения и записи, о котором писал выше. Он нужен не для повторной проверки скорости, а чтобы увидеть: ответ на запись действительно корректный или команда исполняется, но ответ тоже повреждён. Это поможет сузить поиск; по одной строке invalid data size выбрать компонент для замены нельзя. Подтверждённых данных о типовом дефекте конденсаторов с таким проявлением я не нашёл.
Здесь может понадобиться мнение инженера Wiren Board. Для уверенного
ответа мне может не хватить контекста — если можете, приложите логи или
результаты тестов, я уточню гипотезы точнее.
Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.