Некорректная работа датчика WB-MSW v.3 после обновления

wb-mqtt-serial_20221130T122211.log (125.3 КБ)
Добрый день! Поставил крайнее обновление устройств Modbus и после этого один из датчиков перестал корректно работать. Подскажите, что с этим можно сделать?

Добрый день. С какой версии прошивки на какую обновлялись?
Для сета смените скорость порта на 9600 и покажите лог. Ну и попробуйте опросить датчик mobus_client, на 9600 и на 115200.

MSW обновился до 4.23.0, какая прошивка стояла до этого не помню. Лог смогу только вечером подгрузить.

Похоже датчик сдох. Сбросил контроллер до заводских настроек и когда все загрузилось все модули на обеих шинах встали в режим ожидания (индикатор светился не моргая) а у этого датчика индикатор моргает независимо прописан он в WB или нет.


на 9600 ничего не поменялось

wb-mqtt-serial_20221130T232934.log (17.9 КБ)
лог на 9600

опрос датчика mobus_client на 9600

опрос датчика mobus_client на 115200
IMG_1161

А зачем? Ведь достаточно остановить опрос.

Просто остался в bootloader.
Надо загрузить прошивку, так: Обновление прошивки Modbus-устройств Wiren Board — Wiren Board

Не получилось. Нет подключения к датчику. Пробовал разные варианты по инструкции.

Были ли какие-то ошибки связи до обновления? предполагаю что оно, одновление как раз и завершилось неудачно из-за ошибок. Ну и идти надо провереннным путем - подключить устройство к порту единственным, заведомо исправным кабелем и попробовать его восстановить.

После перехода на новый линукс и обновления всех устройств работало все как часики, нарадоваться не мог. Прочитал у Вас в ленте про переход на быстрый modbus и новые прошивки для периферии и не устоял… Сколько раз уже обжигался и все-равно руки чешутся, как итог куча потерянного времени и минус один датчик(((( Вечером домой приду переведу все модули на питание с БП и попробую еще раз… Я правильно понимаю, что алгоритм только этот: Обновление прошивки Modbus-устройств Wiren Board — Wiren Board ?

Да, верно и еще - ввосстановление, так: Утилита обновления прошивок wb-mcu-fw-updater — Wiren Board

Проверить связь с загрузчиком - можно прочитав из него 12 регистров с адреса 290

Не помогло, при попытке recover пишет is not bootloader mode. Залил прошивку на датчик в ручную, тоже не помогло. Может проблема с физикой? Если показатели температуры и влажности датчик показывает, то показатели датчика движения - “0”. Может датчик движения умер?

Так, то есть опрашивается после восстановления?

Если показывает и они меняются, не красные - тогда с прошивкой все хорошо.
В эту сторону можно не копать.
надо прочитать с устрйоства 280-283 регистры и проверить, может в них установлено что-то странное после сбоя при прошивке.
Кстати, вот тут уже самое время узнать, напишите серийный номер устройства и какая в нем сейчас прошивка (можно просто запустить обновление автоматическое - утилита выведет).

Серийный номер 4274158343
Версия прошивки 4.23.0
Датчик работает, как на видео выше, показатели сверху вниз загараются красным, затем черным, как бы “волной” при этом когда они становятся черными, происходи актуализация их показаний, всех кроме движения и так по кругу.
root@wirenboard-AD5G23FW:~# modbus_client --debug -mrtu -pnone -s2 /dev/ttyRS485-2 -a27 -t0x03 -r280

Opening /dev/ttyRS485-2 at 9600 bauds (N, 8, 2)

[1B][03][01][18][00][01][07][CB]

Waiting for a confirmation…

ERROR Connection timed out: select

ERROR occured!

root@wirenboard-AD5G23FW:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-2 -a27 -t0x03 -r128

Opening /dev/ttyRS485-2 at 115200 bauds (N, 8, 2)

[1B][03][00][80][00][01][87][D8]

Waiting for a confirmation…

ERROR Connection timed out: select

ERROR occured!

root@wirenboard-AD5G23FW:~# modbus_client --debug -mrtu -pnone -s2 /dev/ttyRS485-2 -a27 -t0x03 -r290 -c 12

Opening /dev/ttyRS485-2 at 9600 bauds (N, 8, 2)

[1B][03][01][22][00][0C][E6][03]

Waiting for a confirmation…

ERROR Connection timed out: select

ERROR occured!

root@wirenboard-AD5G23FW:~# systemctl status wb-mqtt-serial

wb-mqtt-serial.service - MQTT Driver for serial devices

Loaded: loaded (/lib/systemd/system/wb-mqtt-serial.service; enabled; vendor preset: enabled)

Active: active (running) since Fri 2022-12-02 21:37:36 UTC; 2min 14s ago

Main PID: 8718 (wb-mqtt-serial)

Tasks: 9 (limit: 1146)

Memory: 3.5M

CPU: 12.535s

CGroup: /system.slice/wb-mqtt-serial.service

└─8718 /usr/bin/wb-mqtt-serial

дек 02 21:39:47 wirenboard-AD5G23FW wb-mqtt-serial[8718]: INFO: [modbus] Init: Baud rate: setup register <modbus:27:holding: 110> ← 1152 (0x480)

дек 02 21:39:47 wirenboard-AD5G23FW wb-mqtt-serial[8718]: INFO: [serial device] device modbus:27 is connected

дек 02 21:39:48 wirenboard-AD5G23FW wb-mqtt-serial[8718]: WARNING: [modbus] failed to read 1 input(s) @ 283 of device modbus:27: Serial protocol error: request timed out

дек 02 21:39:48 wirenboard-AD5G23FW wb-mqtt-serial[8718]: WARNING: [modbus] failed to read 1 coil(s) @ 0 of device modbus:27: Serial protocol error: request timed out

дек 02 21:39:48 wirenboard-AD5G23FW wb-mqtt-serial[8718]: WARNING: [modbus] failed to read 2 coil(s) @ 10 of device modbus:27: Serial protocol error: request timed out

дек 02 21:39:48 wirenboard-AD5G23FW wb-mqtt-serial[8718]: WARNING: [modbus] failed to read 2 coil(s) @ 5001 of device modbus:27: Serial protocol error: request timed out

дек 02 21:39:49 wirenboard-AD5G23FW wb-mqtt-serial[8718]: WARNING: [modbus] failed to read 7 coil(s) @ 5100 of device modbus:27: Serial protocol error: request timed out

дек 02 21:39:49 wirenboard-AD5G23FW wb-mqtt-serial[8718]: WARNING: [modbus] failed to read 7 coil(s) @ 5300 of device modbus:27: Serial protocol error: request timed out

дек 02 21:39:49 wirenboard-AD5G23FW wb-mqtt-serial[8718]: WARNING: [modbus] failed to read 1 holding(s) @ 97 of device modbus:27: Serial protocol error: request timed out

дек 02 21:39:50 wirenboard-AD5G23FW wb-mqtt-serial[8718]: WARNING: [modbus] failed to read 1 holding(s) @ 98 of device modbus:27: Serial protocol error: request timed out

root@wirenboard-AD5G23FW:~#

wb-mqtt-serial_20221202T234220.log (37.0 КБ)

Доброе утро!!! Нашел взаимосвязь, датчик начинает корректно работать после того как значение влажности в помещении становиться больше 80%. Теперь что с этим делать не понятно.

Все ж с виду - неконтакт одной из линий Modbus. Устройство стоит на шине крайним? Если да - какая длина линии, что за устрйоства на ней еще?

Для диагностики проблемы пришлите, пожалуйста, архив с диагностической информацией контроллера. Создание архива описано в документации.

Ну и сам файл /etc/wb-mqtt-serial.conf тоже.

Добрый день! Пока у меня два датчика WB-MSW v3 (еще четыре в пути + четыре в плане, всего будет 10 шт.) датчики висят на отдельной шине ttyRS485-2. Изначально, датчик с которым проблема был крайним на шине, после него ничего не было (терминальный резистор не ставился, так как до обновления прошивки все и так работало отлично). Шина сделана на витой паре.


Коммутация, как на фото. Две пары приходит от контроллера по двум другим парам коммутация следующего датчика (через шкаф, т.е. все хвосты возвращаются в шкаф, где коммутируется транзит к следующему датчику - последовательно ). Шкаф с оборудованием находится в соседнем помещении, длина хвостов примерно 5-6 метров, от крайнего датчика до контролера получается 2х6 +/- 12 метров. Заново обжал концы, и поменял последовательность датчиков - проблемный стал посередине, но результат “0”. Штатная работа датчика начинается с влажности помещения от 80 %. При этом и обновить его можно, только когда в помещении влажно.
Может пропаять плату, такое ощущение, что физическое соединение, где-то не стабильное?! С влажностью и температура повышается, может корень зла в этом, а обновление прошивки просто совпадение?