пока не началась установка устройств, обновляю прошивки. На RS485-1 только одно устройство, WB-MAI6, связь с ним есть, работает корректно.
Запустил обновление, получил вот такую ошибку:
root@wirenboard-A74U7X7Q:~# wb-mcu-fw-updater update-fw /dev/ttyRS485-1 -a43
2024-01-31 00:04:05,327 Will find serial port settings for (/dev/ttyRS485-1 : 43; response_timeout: 0.20)...
2024-01-31 00:04:12,559 Has found serial port settings: {'baudrate': 115200, 'parity': 'N', 'stopbits': 2}
2024-01-31 00:04:18,171 fw (wb-mai6-15 43 on /dev/ttyRS485-1):
2024-01-31 00:04:18,172 Update: 2.0.6 -> 2.0.7 (wb-mai6-15 43 /dev/ttyRS485-1)
2024-01-31 00:04:22,513 Flashing /var/lib/wb-mcu-fw-updater/wb-mai6-15__2.0.7_main_ac58f00.wbfw
100%|###################################################################################################|276/276
2024-01-31 00:05:34,982 Flashing fw to (/dev/ttyRS485-1 43; response_timeout: 0.20s) has failed!
2024-01-31 00:05:34,985
При этом прошивка обновилась, но ошибка смущает. Запустил принудительно обновление, вот результаты с дебагом. Прошу помочь. Спасибо.
root@wirenboard-A74U7X7Q:~# wb-mcu-fw-updater update-fw /dev/ttyRS485-1 -a43 --force --debug
2024-01-31 00:12:54,376 Will run: fuser /dev/ttyRS485-1
2024-01-31 00:12:54,500 Clients of /dev/ttyRS485-1: 22955
2024-01-31 00:12:54,501 Will run: ps -o cmd= 22955
2024-01-31 00:12:54,568 Will run: fuser -k -STOP /dev/ttyRS485-1
2024-01-31 00:12:54,730 Reading /usr/lib/wb-release for releases info
2024-01-31 00:12:54,732 Got releases info:
2024-01-31 00:12:54,733 defaultdict(<function parse_releases.<locals>.<lambda> at 0xb5deec40>, {'RELEASE_NAME': 'wb-2401', 'SUITE': 'stable', 'TARGET': 'wb7/bullseye', 'REPO_PREFIX': ''})
2024-01-31 00:12:54,734 GET: http://fw-releases.wirenboard.com/
2024-01-31 00:12:56,824 Set {'baudrate': 9600, 'parity': 'N', 'stopbits': 2} to /dev/ttyRS485-1
2024-01-31 00:12:56,825 /dev/ttyRS485-1 response_timeout -> 0.20
2024-01-31 00:12:56,826 Set {'baudrate': 9600, 'parity': 'N', 'stopbits': 2} to /dev/ttyRS485-1
2024-01-31 00:12:56,827 /dev/ttyRS485-1 response_timeout -> 0.20
2024-01-31 00:12:56,828 Will find serial port settings for (/dev/ttyRS485-1 : 43; response_timeout: 0.20)...
2024-01-31 00:12:57,033 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2024-01-31 00:12:57,239 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2024-01-31 00:12:57,443 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2024-01-31 00:12:57,647 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2024-01-31 00:12:57,851 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2024-01-31 00:12:57,852 Trying serial port settings: (9600, 'N', 2)
2024-01-31 00:12:57,853 Set {'baudrate': 9600, 'parity': 'N', 'stopbits': 2} to /dev/ttyRS485-1
2024-01-31 00:12:58,056 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2024-01-31 00:12:58,260 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2024-01-31 00:12:58,464 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2024-01-31 00:12:58,668 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2024-01-31 00:12:58,872 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2024-01-31 00:12:58,873 Trying serial port settings: (9600, 'N', 1)
2024-01-31 00:12:58,874 Set {'baudrate': 9600, 'parity': 'N', 'stopbits': 1} to /dev/ttyRS485-1
2024-01-31 00:12:59,077 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2024-01-31 00:12:59,281 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2024-01-31 00:12:59,484 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2024-01-31 00:12:59,688 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2024-01-31 00:12:59,891 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2024-01-31 00:12:59,892 Trying serial port settings: (9600, 'O', 2)
2024-01-31 00:12:59,893 Set {'baudrate': 9600, 'parity': 'O', 'stopbits': 2} to /dev/ttyRS485-1
2024-01-31 00:13:00,097 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2024-01-31 00:13:00,300 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2024-01-31 00:13:00,503 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2024-01-31 00:13:00,707 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2024-01-31 00:13:00,910 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2024-01-31 00:13:00,911 Trying serial port settings: (9600, 'O', 1)
2024-01-31 00:13:00,912 Set {'baudrate': 9600, 'parity': 'O', 'stopbits': 1} to /dev/ttyRS485-1
2024-01-31 00:13:01,115 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2024-01-31 00:13:01,318 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2024-01-31 00:13:01,522 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2024-01-31 00:13:01,730 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2024-01-31 00:13:01,934 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2024-01-31 00:13:01,935 Trying serial port settings: (9600, 'E', 2)
2024-01-31 00:13:01,937 Set {'baudrate': 9600, 'parity': 'E', 'stopbits': 2} to /dev/ttyRS485-1
2024-01-31 00:13:02,140 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2024-01-31 00:13:02,344 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2024-01-31 00:13:02,547 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2024-01-31 00:13:02,750 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2024-01-31 00:13:02,954 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2024-01-31 00:13:02,955 Trying serial port settings: (9600, 'E', 1)
2024-01-31 00:13:02,955 Set {'baudrate': 9600, 'parity': 'E', 'stopbits': 1} to /dev/ttyRS485-1
2024-01-31 00:13:03,159 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2024-01-31 00:13:03,362 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2024-01-31 00:13:03,565 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2024-01-31 00:13:03,768 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2024-01-31 00:13:03,972 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5268>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2024-01-31 00:13:03,972 Trying serial port settings: (115200, 'N', 2)
2024-01-31 00:13:03,974 Set {'baudrate': 115200, 'parity': 'N', 'stopbits': 2} to /dev/ttyRS485-1
2024-01-31 00:13:04,078 Has found serial port settings: {'baudrate': 115200, 'parity': 'N', 'stopbits': 2}
2024-01-31 00:13:04,392 /dev/ttyRS485-1 43:
2024-01-31 00:13:04,706 WBMAI6 161710 wb-mai6-15 2.0.7 149
2024-01-31 00:13:04,811 Removing device: {'slaveid': 43, 'port': '/dev/ttyRS485-1', 'fw_signature': 'wb-mai6-15'}
2024-01-31 00:13:04,917 FW releases files: ['http://fw-releases.wirenboard.com/fw/by-signature/release-versions.yaml']
2024-01-31 00:13:04,918 Looking to http://fw-releases.wirenboard.com/fw/by-signature/release-versions.yaml (suite: stable)
2024-01-31 00:13:04,919 GET: http://fw-releases.wirenboard.com/fw/by-signature/release-versions.yaml
2024-01-31 00:13:07,130 FW version for wb-mai6-15 on release stable: 2.0.7 (endpoint: fw/by-signature/wb-mai6-15/main/2.0.7.wbfw)
2024-01-31 00:13:07,131 GET: http://fw-releases.wirenboard.com/fw/by-signature/wb-mai6-15/main/2.0.7.wbfw
2024-01-31 00:13:08,022 Trying to get fname from content-disposition
2024-01-31 00:13:08,023 Got fname: wb-mai6-15__2.0.7_main_ac58f00.wbfw
2024-01-31 00:13:08,024 http://fw-releases.wirenboard.com/fw/by-signature/wb-mai6-15/main/2.0.7.wbfw => /var/lib/wb-mcu-fw-updater/wb-mai6-15__2.0.7_main_ac58f00.wbfw
2024-01-31 00:13:08,027 fw (wb-mai6-15 43 on /dev/ttyRS485-1):
2024-01-31 00:13:08,029 Force update: 2.0.7 -> 2.0.7 (wb-mai6-15 43 /dev/ttyRS485-1)
2024-01-31 00:13:08,135 Flashing approved for "wb-mai6-15" (/dev/ttyRS485-1 : 43)
2024-01-31 00:13:08,344 Bootloader uses port settings set in firmware
2024-01-31 00:13:09,049 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5a30>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2024-01-31 00:13:09,252 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5a30>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2024-01-31 00:13:09,455 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5a30>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2024-01-31 00:13:09,660 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5a30>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2024-01-31 00:13:09,870 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xb5df5a30>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2024-01-31 00:13:09,872 Set {'baudrate': 115200, 'parity': 'N', 'stopbits': 2} to /dev/ttyRS485-1
2024-01-31 00:13:09,872 /dev/ttyRS485-1 response_timeout -> 0.20
2024-01-31 00:13:09,873 /dev/ttyRS485-1 response_timeout -> 5.00
2024-01-31 00:13:11,929 Flashing /var/lib/wb-mcu-fw-updater/wb-mai6-15__2.0.7_main_ac58f00.wbfw
2024-01-31 00:13:11,933 /dev/ttyRS485-1 response_timeout -> 6.00
2024-01-31 00:13:12,745 /dev/ttyRS485-1 response_timeout -> 5.00
100%|###################################################################################################|276/276
2024-01-31 00:13:45,465 GET: http://fw-releases.wirenboard.com/bootloader/by-signature/wb-mai6-15/main/latest.txt
2024-01-31 00:13:48,819 Flashing fw to (/dev/ttyRS485-1 43; response_timeout: 0.20s) has failed!
2024-01-31 00:13:48,821
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/fw_downloader.py", line 47, in read_remote_file
ret = get_request(url_path)
File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/fw_downloader.py", line 42, in get_request
raise WBRemoteStorageError(url_path)
wb_mcu_fw_updater.fw_downloader.WBRemoteStorageError: http://fw-releases.wirenboard.com/bootloader/by-signature/wb-mai6-15/main/latest.txt
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/bin/wb-mcu-fw-updater", line 90, in _update_alive_device
update_monitor.flash_alive_device(modbus_connection, mode, branch, version, force, erase_settings)
File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/update_monitor.py", line 581, in flash_alive_device
if mode == MODE_FW and not is_bootloader_latest(modbus_connection):
File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/update_monitor.py", line 456, in is_bootloader_latest
remote_version = fw_downloader.RemoteFileWatcher(mode=MODE_BOOTLOADER).get_latest_version_number(fw_sig)
File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/fw_downloader.py", line 140, in get_latest_version_number
return read_remote_file(url_path)
File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/fw_downloader.py", line 50, in read_remote_file
six.raise_from(RemoteFileReadingError, e)
File "<string>", line 3, in raise_from
wb_mcu_fw_updater.fw_downloader.RemoteFileReadingError
2024-01-31 00:13:48,832 Has saved db to /var/lib/wb-mcu-fw-updater/devices.jsondb
2024-01-31 00:13:48,835 Will run: fuser -k -CONT /dev/ttyRS485-1