Добрый день.
WB7, testing, обновил систему через “apt update && apt upgrade”, затем запустил “wb-mcu-fw-updater update-all”, который в ходе своей работы предложил обновить bootloader у всех устройств. При обновлении MR6C возникли проблемы, устройство стало работать не корректно, в частности, выходы K1 и K5 не реагируют на команды из веб-интерфейса.
Журнал обновления этого модуля:
2024-03-03 12:18:08,994 Bootloader update (v1.2.0 -> v1.4.0) for mr6cG /dev/ttyRS485-1:244 is available! (bootloader updates are highly recommended to install) Do a bootloader update? [Y/N]
2024-03-03 12:18:15,748 Flashing /var/lib/wb-mcu-fw-updater/bootloader/wb-bootloader-updater_mr6cG__1.4.0_master_c654e11.wbfw (36 data chunks)
100%|###########################################################################################################################################################################################################|36/36
2024-03-03 12:18:25,614 Flashing /var/lib/wb-mcu-fw-updater/mr6cG__1.21.1_master_ebe20ba.wbfw (213 data chunks)
100%|#########################################################################################################################################################################################################|213/213
2024-03-03 12:19:13,280 Checksum error in rtu mode: '²X' instead of '\x19k' . The response is: 'ô\x03\x18\x00m\x00r\x006\x00c\x00G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00²X' (plain response: 'ô\x03\x18\x00m\x00r\x006\x00c\x00G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00²X')
2024-03-03 12:19:13,300 No answer from:
2024-03-03 12:19:13,300 WB-MR6C (244, /dev/ttyRS485-1)
2024-03-03 12:19:13,301 Devices are possibly disconnected
Перезагрузка WB7 и повторная попутка дала следующие строки:
2024-03-03 12:21:11,780 Probing WB-MR6C (port: /dev/ttyRS485-1, slaveid: 244, uart_params: 115200N2, response_timeout: 0.50)...
2024-03-03 12:21:12,532 Unhandled exception!
Traceback (most recent call last):
File "/usr/bin/wb-mcu-fw-updater", line 525, in <module>
args.func(args)
File "/usr/bin/wb-mcu-fw-updater", line 205, in update_all
update_monitor._update_all(
File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/update_monitor.py", line 737, in _update_all
probing_result = probe_all_devices(
File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/update_monitor.py", line 690, in probe_all_devices
modbus_connection=get_correct_modbus_connection(
File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/update_monitor.py", line 268, in get_correct_modbus_connection
check_device_is_a_wb_one(modbus_connection)
File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/update_monitor.py", line 221, in check_device_is_a_wb_one
fw_sig = modbus_connection.get_fw_signature()
File "/usr/lib/python3/dist-packages/wb_modbus/bindings.py", line 726, in get_fw_signature
return self.read_string(self.COMMON_REGS_MAP["fw_signature"], self.FIRMWARE_SIGNATURE_LENGTH)
File "/usr/lib/python3/dist-packages/wb_modbus/bindings.py", line 42, in wrapper
return f(self, *args, **kwargs)
File "/usr/lib/python3/dist-packages/wb_modbus/bindings.py", line 69, in wrapper
raise thrown_exc
File "/usr/lib/python3/dist-packages/wb_modbus/bindings.py", line 63, in wrapper
return f(*args, **kwargs)
File "/usr/lib/python3/dist-packages/wb_modbus/bindings.py", line 497, in read_string
ret = minimalmodbus._hexlify(self.device.read_string(addr, regs_lenght, 3))
File "/usr/lib/python3/dist-packages/wb_modbus/minimalmodbus.py", line 743, in read_string
return self._generic_command(
File "/usr/lib/python3/dist-packages/wb_modbus/minimalmodbus.py", line 1139, in _generic_command
payload_from_slave = self._perform_command(functioncode, payload_to_slave)
File "/usr/lib/python3/dist-packages/wb_modbus/minimalmodbus.py", line 1206, in _perform_command
payload_from_slave = _extract_payload(response, self.address, self.mode, functioncode)
File "/usr/lib/python3/dist-packages/wb_modbus/minimalmodbus.py", line 1688, in _extract_payload
raise InvalidResponseError(text)
wb_modbus.minimalmodbus.InvalidResponseError: Checksum error in rtu mode: '²X' instead of '\x19k' . The response is: 'ô\x03\x18\x00m\x00r\x006\x00c\x00G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00²X' (plain response: 'ô\x03\x18\x00m\x00r\x006\x00c\x00G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00²X')