Wb-mqtt-serial: terminate called after throwing an instance of 'TRegisterValueException

Добрый день.
После установки последнего апдейта (apt update && apt upgrade && wb-mcu-fw-updater update-all):

Быстрая реакция на датчик движения WB-MSW в правилах!
В прошивке 4.31.0 и wb-mqtt-serial 2.95.1 появилась поддержка опроса регистров датчика движения через события в быстром Modbus.
Это регистры:
280 “Max motion”
283 “Current motion”

Wb-mqtt-serial стал вылетать и сыпятся ошибки, до обновления все работало исправно ошибок не было:

Aug 17 15:04:45 wirenboard-ACZVEF3I wb-mqtt-serial[3992]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:04:45 wirenboard-ACZVEF3I wb-mqtt-serial[3992]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:04:45 wirenboard-ACZVEF3I wb-mqtt-serial[3992]: INFO: [modbus] Init: Input 1 set input 1 to 1-wire: setup register <modbus:207:holding: 275> <-- 0 (0x0)
Aug 17 15:04:45 wirenboard-ACZVEF3I wb-mqtt-serial[3992]: INFO: [serial device] device modbus:207 is connected
Aug 17 15:04:45 wirenboard-ACZVEF3I wb-mqtt-serial[3992]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:04:45 wirenboard-ACZVEF3I wb-mqtt-serial[3992]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:04:45 wirenboard-ACZVEF3I wb-mqtt-serial[3992]: terminate called after throwing an instance of 'TRegisterValueException'
Aug 17 15:04:45 wirenboard-ACZVEF3I wb-mqtt-serial[3992]: INFO: [modbus] Continuous read enabled [slave_id is 205]
Aug 17 15:04:45 wirenboard-ACZVEF3I wb-mqtt-serial[3992]:   what():  Value is not Integer @ src/register_value.cpp:156
Aug 17 15:04:45 wirenboard-ACZVEF3I mosquitto[1531]: 1692259485: Client wb-modbus closed its connection.
Aug 17 15:04:45 wirenboard-ACZVEF3I systemd[1]: wb-mqtt-serial.service: Main process exited, code=killed, status=6/ABRT
Aug 17 15:04:45 wirenboard-ACZVEF3I systemd[1]: wb-mqtt-serial.service: Failed with result 'signal'.
Aug 17 15:04:45 wirenboard-ACZVEF3I systemd[1]: wb-mqtt-serial.service: Consumed 5.017s CPU time.
Aug 17 15:04:46 wirenboard-ACZVEF3I systemd[1]: wb-mqtt-serial.service: Scheduled restart job, restart counter is at 6.
Aug 17 15:04:46 wirenboard-ACZVEF3I systemd[1]: Stopped MQTT Driver for serial devices.
Aug 17 15:04:46 wirenboard-ACZVEF3I systemd[1]: wb-mqtt-serial.service: Consumed 5.017s CPU time.
Aug 17 15:04:46 wirenboard-ACZVEF3I systemd[1]: Started MQTT Driver for serial devices.

Перезапускается и сразу падает:

Aug 17 15:08:46 wirenboard-ACZVEF3I wb-mqtt-serial[6935]: terminate called after throwing an instance of 'TRegisterValueException'
Aug 17 15:08:53 wirenboard-ACZVEF3I wb-mqtt-serial[6996]: terminate called after throwing an instance of 'TRegisterValueException'
Aug 17 15:09:01 wirenboard-ACZVEF3I wb-mqtt-serial[7127]: terminate called after throwing an instance of 'TRegisterValueException'                
Aug 17 15:09:08 wirenboard-ACZVEF3I wb-mqtt-serial[7207]: terminate called after throwing an instance of 'TRegisterValueException'                                         
Aug 17 15:09:15 wirenboard-ACZVEF3I wb-mqtt-serial[7287]: terminate called after throwing an instance of 'TRegisterValueException'                              
Aug 17 15:09:22 wirenboard-ACZVEF3I wb-mqtt-serial[7353]: terminate called after throwing an instance of 'TRegisterValueException'

приложен диагностический архив, доступен только сотрудникам поддержки
(187,9 КБ)

Отключил MSW, теперь не вылетает но в логи такое летит непрерывно:

Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 1
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 1
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:48 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 17 15:37:49 wirenboard-ACZVEF3I wb-mqtt-serial[24850]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc

Это как раз причина.
То есть - проверьте шину.
А по поводу исключения - сейчас позову разработчика.

До обновления все работало нормально уже больше полгода ошибок не было, а тут резко появились? Все возможно конечно, буду проверять, почему до этого таких ошибок не было вот непонятно, видимо MSW доп нагрузку создают на шину.

Нужна помощь.

Локализовал проблему, отключая модбас шины (всего их 3 у меня), нашел ту изза которой происходят ошибки.

Отключая устройства нашел, что ошибки появляются когда включаю WB-MWAC.
Конфигурация шины: контроллер - 6х WB-MSW - WB-M1W2 - WB-MWAC - WB-MAP6S (+резистор 120Ом)
Отключил от WB-MWAC все клемники (чтобы исключить паразитное влияние датчиков или счетчиков), кроме питания + модбас, ошибки начинают сыпаться сразу после подключения, подключал этим же клемником соседний MAP6S ошибок нет. По питанию проблем быть не может +24В в шине.

image

Момент подключения WB-MWAC (id:60)

Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: INFO: [serial device] device modbus:60 is disconnected
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: INFO: [modbus] Continuous read enabled [slave_id is 60]
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: INFO: [modbus] Init: Baud rate: setup register <modbus:60:holding: 110> <-- 576 (0x240)
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: INFO: [modbus] Init: disable legacy input mode control: setup register <modbus:60:holding: 5> <-- 0 (0x0)
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: INFO: [serial device] device modbus:60 is connected
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: INFO: [serial client] Events are enabled for <modbus:60:coil: 0>
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: INFO: [serial client] Events are enabled for <modbus:60:coil: 1>
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: INFO: [serial client] Events are disabled for <modbus:60:coil: 2>
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: INFO: [serial client] Events are disabled for <modbus:60: reboot>
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:54 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:55 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:55 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 18 15:52:55 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:55 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 18 15:52:55 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:55 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:55 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:55 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:55 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 18 15:52:55 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:52:55 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0
Aug 18 15:52:55 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc

Тут я отключил и ошибки сразу прекратились:
Aug 18 15:52:58 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [modbus] failed to read 6 discrete(s) @ 0 of device modbus:60: Serial protocol error: request timed out
Aug 18 15:53:00 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [modbus] failed to read 1 coil(s) @ 2 of device modbus:60: Serial protocol error: request timed out
Aug 18 15:53:00 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: INFO: [serial device] device modbus:60 is disconnected
Aug 18 15:53:04 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 15:53:04 wirenboard-ACZVEF3I wb-mqtt-serial[1864]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid packet size: 0

Но при этом само устройство работает, становится активным в Устройствах и можно включать/выключать реле кранов. И это началось после обновления MSW, до этого ошибок в логах не было, я бы заметил.

Что может быть?

Обновил прошивки у всех MSW на предыдущую:

# wb-mcu-fw-updater update-fw  /dev/ttyRS485-1 --version 4.29.11 -a 16
2023-08-18 16:52:07,796 Will find serial port settings for (/dev/ttyRS485-1 : 16; response_timeout: 0.20)...
2023-08-18 16:52:51,542 Has found serial port settings: {'baudrate': 57600, 'parity': 'N', 'stopbits': 2}
2023-08-18 16:52:53,091 fw (msw3G419 16 on /dev/ttyRS485-1):
2023-08-18 16:52:53,092 Downgrade: 4.31.0 -> 4.29.11 (msw3G419 16 /dev/ttyRS485-1)
2023-08-18 16:52:56,894 Flashing /var/lib/wb-mcu-fw-updater/fw/msw3G419__4.29.11_master_7712742.wbfw

Подключил “проблемное” устройство MWAC и ошибок нету, но для теста перенес его к контроллеру.

Aug 18 16:59:22 wirenboard-ACZVEF3I wb-mqtt-serial[26529]: INFO: [serial device] device modbus:60 is disconnected
Aug 18 16:59:23 wirenboard-ACZVEF3I wb-mqtt-serial[26529]: INFO: [modbus] Continuous read enabled [slave_id is 60]
Aug 18 16:59:23 wirenboard-ACZVEF3I wb-mqtt-serial[26529]: INFO: [modbus] Init: Baud rate: setup register <modbus:60:holding: 110> <-- 576 (0x240)
Aug 18 16:59:23 wirenboard-ACZVEF3I wb-mqtt-serial[26529]: INFO: [modbus] Init: disable legacy input mode control: setup register <modbus:60:holding: 5> <-- 0 (0x0)
Aug 18 16:59:23 wirenboard-ACZVEF3I wb-mqtt-serial[26529]: INFO: [serial device] device modbus:60 is connected
Aug 18 16:59:23 wirenboard-ACZVEF3I wb-mqtt-serial[26529]: INFO: [serial client] Events are enabled for <modbus:60:coil: 0>
Aug 18 16:59:23 wirenboard-ACZVEF3I wb-mqtt-serial[26529]: INFO: [serial client] Events are enabled for <modbus:60:coil: 1>
Aug 18 16:59:23 wirenboard-ACZVEF3I wb-mqtt-serial[26529]: INFO: [serial client] Events are disabled for <modbus:60:coil: 2>
Aug 18 16:59:23 wirenboard-ACZVEF3I wb-mqtt-serial[26529]: INFO: [serial client] Events are disabled for <modbus:60: reboot>

Решил обновлять на новую версию по одному и смотреть за ошибками (MWAC подключен к шине).
Обновил id:19 ошибок нет, обновил id:151 ошибок нет, обновляю id:12 и после старта mqtt-serial начинают сыпаться ошибки. Делаю наунгрейд прошивки для id:19, ошибки “почти” пропадают…

WBMSW3	4265579509	12	/dev/ttyRS485-1 57600 8N2	4.31.0
WBMSW3	4264756553	151	/dev/ttyRS485-1 57600 8N2	4.31.0
WBMSW3	4265586330	16	/dev/ttyRS485-1 57600 8N2	4.29.11
WBMSW3	4265590763	19	/dev/ttyRS485-1 57600 8N2	4.29.11
WBMSW3	4264910750	176	/dev/ttyRS485-1 57600 8N2	4.29.11
WBMSW3	4264914054	220	/dev/ttyRS485-1 57600 8N2	4.29.11
Aug 18 17:13:35 wirenboard-ACZVEF3I wb-mqtt-serial[5285]: INFO: [modbus] Init: disable legacy input mode control: setup register <modbus:60:holding: 5> <-- 0 (0x0)
Aug 18 17:13:35 wirenboard-ACZVEF3I wb-mqtt-serial[5285]: INFO: [serial device] device modbus:60 is connected
Aug 18 17:13:35 wirenboard-ACZVEF3I wb-mqtt-serial[5285]: INFO: [serial client] Events are enabled for <modbus:60:coil: 0>
Aug 18 17:13:35 wirenboard-ACZVEF3I wb-mqtt-serial[5285]: INFO: [serial client] Events are enabled for <modbus:60:coil: 1>
Aug 18 17:13:35 wirenboard-ACZVEF3I wb-mqtt-serial[5285]: INFO: [serial client] Events are disabled for <modbus:60:coil: 2>
Aug 18 17:13:35 wirenboard-ACZVEF3I wb-mqtt-serial[5285]: INFO: [serial client] Events are disabled for <modbus:60: reboot>
Aug 18 17:14:14 wirenboard-ACZVEF3I wb-mqtt-serial[5285]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
Aug 18 17:14:14 wirenboard-ACZVEF3I wb-mqtt-serial[5285]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc

Aug 18 17:19:46 wirenboard-ACZVEF3I wb-mqtt-serial[5285]: WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc

Вернул MWAC на место в конец шины и снова посыпались ошибки… пришлось сделать downgrade всем MSW и тогда ошибок нет.

Интересно.
А все MSW имеют синнатуру msw3G419? Или часть из них - другую?
в WB-MWAC прошивка - уже с поддержкой быстрого Modbus?
Если да - то прочитайте из него значение 113 регистра пожалуйста.
Ну и из MSW тоже.

Вроде бы да все, но нет один другой:

2023-08-18 16:43:49,807 Downgrade: 4.31.0 -> 4.29.11 (msw3G419 12 /dev/ttyRS485-1)
2023-08-18 16:46:00,722 Downgrade: 4.31.0 -> 4.29.11 (msw3-49gd_oa 151 /dev/ttyRS485-1)
2023-08-18 16:48:29,118 Downgrade: 4.31.0 -> 4.29.11 (msw3G419 220 /dev/ttyRS485-1)
2023-08-18 16:50:42,559 Downgrade: 4.31.0 -> 4.29.11 (msw3G419 176 /dev/ttyRS485-1)
2023-08-18 16:52:53,092 Downgrade: 4.31.0 -> 4.29.11 (msw3G419 16 /dev/ttyRS485-1)
2023-08-18 17:11:48,905 Downgrade: 4.31.0 -> 4.29.11 (msw3G419 19 /dev/ttyRS485-1)

Через сканер ищется со значком молнии “1.20.1”, думаю с поддержкой уже.

# modbus_client --debug -mrtu -b57600 -pnone -s2 /dev/ttyRS485-1 -r113 -t0x03 -a60
Opening /dev/ttyRS485-1 at 57600 bauds (N, 8, 2)
[3C][03][00][71][00][01][D0][FC]
Waiting for a confirmation...
<3C><03><02><00><00><D5><81>
SUCCESS: read 1 of elements:
        Data: 0x0000 

Если правильно команду нашел, то ответ у всех “Data: 0x0000”, но я перевел все MSW на версию 4.29.11.

Еще было бы полезно в логах wb-mqtt-serial писать порт где ошибка случилась:

WARNING: [serial client] Reading events failed: Serial protocol error: malformed response: invalid crc
1 Like

Бага воспроизвелась, у разработчиков.

Эта тема была автоматически закрыта через 7 дней после последнего ответа. В ней больше нельзя отвечать.

Фикс в wb-mqtt-serial=2.121.3

1 Like