Добрый день!
wb-mcu-fw-updater сначала очень долго запускался, потом просканировал устройства, затем снова ушел у раздумье на длительное время и упал.
root@IQ401000:~# wb-mcu-fw-updater update-all
# Тут была пауза около 5ти минут
2023-12-26 09:50:21,583 Will probe all devices on enabled serial ports of /etc/wb-mqtt-serial.conf:
2023-12-26 09:50:21,587 Probing WB-M1W2 (port: /dev/ttyRS485-2, slaveid: 165, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:21,983 Probing WB-MSW v.3 (port: /dev/ttyRS485-2, slaveid: 183, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:29,584 Probing WB-M1W2 (port: /dev/ttyRS485-2, slaveid: 23, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:29,975 Probing WB-M1W2 (port: /dev/ttyRS485-2, slaveid: 124, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:30,357 Probing WB-M1W2 (port: /dev/ttyRS485-2, slaveid: 153, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:30,742 Probing WB-M1W2 (port: /dev/ttyRS485-2, slaveid: 112, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:31,123 Probing WB-M1W2 (port: /dev/ttyRS485-2, slaveid: 208, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:31,503 Probing WB-M1W2 (port: /dev/ttyRS485-2, slaveid: 212, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:31,885 Probing WB-M1W2 (port: /dev/ttyRS485-2, slaveid: 116, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:32,265 Probing WB-M1W2 (port: /dev/ttyRS485-2, slaveid: 239, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:32,648 Probing WB-M1W2 (port: /dev/ttyRS485-2, slaveid: 169, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:33,034 Probing WB-M1W2 (port: /dev/ttyRS485-2, slaveid: 129, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:33,421 Probing WB-MAO4 (port: /dev/ttyRS485-1, slaveid: 43, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:33,775 Probing WB-MAP12E fw2 (port: /dev/ttyRS485-1, slaveid: 17, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:34,136 Probing WB-MAP12E fw2 (port: /dev/ttyRS485-1, slaveid: 16, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:34,490 Probing WB-MR6C (port: /dev/ttyRS485-1, slaveid: 88, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:34,869 Probing WB-MR6C (port: /dev/ttyRS485-1, slaveid: 56, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:35,232 Probing WB-MR3 (port: /dev/ttyRS485-1, slaveid: 33, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:35,600 Probing WB-MR6C (port: /dev/ttyRS485-1, slaveid: 64, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:35,965 Probing WB-MR6C (port: /dev/ttyRS485-1, slaveid: 73, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:50:36,327 Probing WB-MR6C (port: /dev/ttyRS485-1, slaveid: 76, uart_params: 9600N2, response_timeout: 0.50)...
2023-12-26 09:52:51,306 Unhandled exception!
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/serial/serialposix.py", line 490, in read
'device reports readiness to read but returned no data '
serial.serialutil.SerialException: device reports readiness to read but returned no data (device disconnected or multiple access on port?)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/bin/wb-mcu-fw-updater", line 305, in <module>
args.func(args)
File "/usr/bin/wb-mcu-fw-updater", line 134, in update_all
update_monitor._update_all(force=args.force, minimal_response_timeout=args.minimal_response_timeout, allow_downgrade=args.allow_downgrade)
File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/update_monitor.py", line 465, in _update_all
local_device_version = device_info.modbus_connection.get_fw_version()
File "/usr/lib/python3/dist-packages/wb_modbus/bindings.py", line 560, in get_fw_version
return self.read_string(self.COMMON_REGS_MAP['fw_version'], self.FIRMWARE_VERSION_LENGTH)
File "/usr/lib/python3/dist-packages/wb_modbus/bindings.py", line 27, in wrapper
return f(self, *args, **kwargs)
File "/usr/lib/python3/dist-packages/wb_modbus/bindings.py", line 45, in wrapper
return f(*args, **kwargs)
File "/usr/lib/python3/dist-packages/wb_modbus/bindings.py", line 450, 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 755, in read_string
payloadformat=_PAYLOADFORMAT_STRING,
File "/usr/lib/python3/dist-packages/wb_modbus/minimalmodbus.py", line 1170, in _generic_command
payload_from_slave = self._perform_command(functioncode, payload_to_slave)
File "/usr/lib/python3/dist-packages/wb_modbus/minimalmodbus.py", line 1240, in _perform_command
response = self._communicate(request, number_of_bytes_to_read)
File "/usr/lib/python3/dist-packages/wb_modbus/instruments.py", line 180, in _communicate
answer = self._read_from_bus(number_of_bytes_to_read, minimum_silent_period)
File "/usr/lib/python3/dist-packages/wb_modbus/instruments.py", line 36, in _read_from_bus
answer = self.serial.read(number_of_bytes_to_read)
File "/usr/lib/python3/dist-packages/serial/serialposix.py", line 497, in read
raise SerialException('read failed: {}'.format(e))
serial.serialutil.SerialException: read failed: device reports readiness to read but returned no data (device disconnected or multiple access on port?)
root@IQ401000:~#