Ошибка обновления устройств

Контроллер A6RC2UEN на testing. При попытке обновления устройства на шине выходит ошибка, ниже кусок лога:

10-12-2023 14:55:29.187 [session-c1.scope] Will run: fuser -k -CONT /dev/ttyRS485-2
10-12-2023 14:55:29.184 [session-c1.scope] Has saved db to /var/lib/wb-mcu-fw-updater/devices.jsondb
10-12-2023 14:55:29.175 [session-c1.scope]
Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/wb_mcu_fw_updater/fw_flasher.py”, line 102, in _send_info
self.instrument.write_u16_regs(self.INFO_BLOCK_START, regs_row)
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 274, in write_u16_regs
self.device.write_registers(beginning, values)
File “/usr/lib/python3/dist-packages/wb_modbus/minimalmodbus.py”, line 885, in write_registers
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 1203, in _perform_command
response = self._communicate(request, number_of_bytes_to_read)
File “/usr/lib/python3/dist-packages/wb_modbus/instruments.py”, line 161, in _communicate
self._write_to_bus(request)
File “/usr/lib/python3/dist-packages/wb_modbus/instruments.py”, line 251, in _write_to_bus
raise minimalmodbus.NoResponseError(“No communication with the instrument (no answer)”)
wb_modbus.minimalmodbus.NoResponseError: No communication with the instrument (no answer)

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 577, in flash_alive_device
_do_flash(modbus_connection, downloaded_fw, mode, erase_settings, force=force)
File “/usr/lib/python3/dist-packages/wb_mcu_fw_updater/update_monitor.py”, line 515, in _do_flash
direct_flash(fw_fpath, modbus_connection, erase_settings, force=force)
File “/usr/lib/python3/dist-packages/wb_mcu_fw_updater/update_monitor.py”, line 385, in direct_flash
flasher.flash_in_bl(fw_fpath)
File “/usr/lib/python3/dist-packages/wb_mcu_fw_updater/fw_flasher.py”, line 160, in flash_in_bl
self._send_info(info_block)
File “/usr/lib/python3/dist-packages/wb_mcu_fw_updater/fw_flasher.py”, line 106, in _send_info
six.raise_from(FlashingError, e)
File “”, line 3, in raise_from
wb_mcu_fw_updater.fw_flasher.FlashingErrorŊ
10-12-2023 14:55:29.148 [session-c1.scope] Flashing bootloader to (/dev/ttyRS485-2 49; response_timeout: 0.20s) has failed!
10-12-2023 14:55:29.148 [session-c1.scope] Flashing bootloader to (/dev/ttyRS485-2 49; response_timeout: 0.20s) has failed!
10-12-2023 14:54:58.842 [session-c1.scope] Flashing /var/lib/wb-mcu-fw-updater/bootloader/wb-bootloader-updater_wb-mai6__1.3.0_master_c13691c.wbfw
10-12-2023 14:54:54.122 [session-c1.scope] Flashing approved for “wb-mai6” (/dev/ttyRS485-2 : 49)
10-12-2023 14:54:54.012 [session-c1.scope] e[32;10mUpdate:e[0m 1.2.2 → 1.3.0 (wb-mai6 49 /dev/ttyRS485-2)
10-12-2023 14:54:54.006 [session-c1.scope] bootloader (wb-mai6 49 on /dev/ttyRS485-2):
10-12-2023 14:54:54.001 [session-c1.scope] http://fw-releases.wirenboard.com/bootloader/by-signature/wb-mai6/main/1.3.0.wbfw => /var/lib/wb-mcu-fw-updater/bootloader/wb-bootloader-updater_wb-mai6__1.3.0_master_c13691c.wbfw
10-12-2023 14:54:53.996 [session-c1.scope] Got fname: wb-bootloader-updater_wb-mai6__1.3.0_master_c13691c.wbfw
10-12-2023 14:54:53.989 [session-c1.scope] Trying to get fname from content-disposition
10-12-2023 14:54:52.919 [session-c1.scope] GET: http://fw-releases.wirenboard.com/bootloader/by-signature/wb-mai6/main/1.3.0.wbfw

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

Здравствуйте. Вот что подключено.

Устройство Серийный номер Адрес Порт Прошивка
WBMR2m 4264129205 11 /dev/ttyRS485-1 115200 8N2 1.20.3
WBMAI6 110166 49 /dev/ttyRS485-2 115200 8N2 2.0.5
WBMR2m 132885 152 192.168.4.61:23 115200 8N2 1.20.1
WB-LED 126239 16 /dev/ttyRS485-2 115200 8N2 3.4.1
MAP3E 4264814397 23 192.168.4.61:23 115200 8N2 2.6.2
WBMD3 4262567359 36 /dev/ttyRS485-2 115200 8N2 2.7.0
MAP3E 4264840549 38 192.168.4.61:23 115200 8N2 2.6.2
Выполняю команду: wb-mcu-fw-updater update-all
[diag_A6RC2UEN_2023-12-11-20.35.41.zip attachment](upload://4zitTrz6NuH4PYtuEgpz09du4YJ.zip) (154,6 КБ)

Сделайте так же debug-лог

wb-mcu-fw-updater update-all --debug 

и выложите здесь файлом полный вывод

Очень много строк…
Новый текстовый документ.txt (62,0 КБ)

у меня та же проблема

вот дебаг лог
log (16.0 KB)

Пробовали обновлять устройства по отдельности?
Покажите вывод, например, для WB-MAI6:

wb-mcu-fw-updater update-fw /dev/ttyRS485-2 -a49 --debug

Пробовал, все абсолютно точно так же, только лог покороче

root@wirenboard-A6RC2UEN:~# wb-mcu-fw-updater update-fw /dev/ttyRS485-2 -a49 --debug
2023-12-12 01:48:09,958 Will run: fuser /dev/ttyRS485-2
2023-12-12 01:48:11,136 Clients of /dev/ttyRS485-2: 29056
2023-12-12 01:48:11,166 Will run: ps -o cmd= 29056
2023-12-12 01:48:11,620 Will run: fuser -k -STOP /dev/ttyRS485-2
2023-12-12 01:48:12,167 Reading /usr/lib/wb-release for releases info
2023-12-12 01:48:12,174 Got releases info:
2023-12-12 01:48:12,192         defaultdict(<function parse_releases.<locals>.<lambda> at 0xa5ffeb68>, {'RELEASE_NAME': 'unstable.latest', 'SUITE': 'testing', 'TARGET': 'wb6/bullseye', 'REPO_PREFIX': ''})
2023-12-12 01:48:12,197 GET: http://fw-releases.wirenboard.com/
2023-12-12 01:48:13,529 Set {'baudrate': 9600, 'parity': 'N', 'stopbits': 2} to /dev/ttyRS485-2
2023-12-12 01:48:13,532 /dev/ttyRS485-2 response_timeout -> 0.20
2023-12-12 01:48:13,553 Set {'baudrate': 9600, 'parity': 'N', 'stopbits': 2} to /dev/ttyRS485-2
2023-12-12 01:48:13,555 /dev/ttyRS485-2 response_timeout -> 0.20
2023-12-12 01:48:13,557 Will find serial port settings for (/dev/ttyRS485-2 : 49; response_timeout: 0.20)...
2023-12-12 01:48:13,780 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2023-12-12 01:48:14,004 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2023-12-12 01:48:14,223 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2023-12-12 01:48:14,441 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2023-12-12 01:48:14,648 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2023-12-12 01:48:14,650 Trying serial port settings: (9600, 'N', 2)
2023-12-12 01:48:14,652 Set {'baudrate': 9600, 'parity': 'N', 'stopbits': 2} to /dev/ttyRS485-2
2023-12-12 01:48:14,860 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2023-12-12 01:48:15,069 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2023-12-12 01:48:15,294 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2023-12-12 01:48:15,545 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2023-12-12 01:48:15,818 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2023-12-12 01:48:15,822 Trying serial port settings: (9600, 'N', 1)
2023-12-12 01:48:15,836 Set {'baudrate': 9600, 'parity': 'N', 'stopbits': 1} to /dev/ttyRS485-2
2023-12-12 01:48:16,131 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2023-12-12 01:48:16,353 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2023-12-12 01:48:16,562 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2023-12-12 01:48:16,798 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2023-12-12 01:48:17,005 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2023-12-12 01:48:17,007 Trying serial port settings: (9600, 'O', 2)
2023-12-12 01:48:17,010 Set {'baudrate': 9600, 'parity': 'O', 'stopbits': 2} to /dev/ttyRS485-2
2023-12-12 01:48:17,224 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2023-12-12 01:48:17,432 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2023-12-12 01:48:17,654 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2023-12-12 01:48:17,874 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2023-12-12 01:48:18,116 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2023-12-12 01:48:18,118 Trying serial port settings: (9600, 'O', 1)
2023-12-12 01:48:18,121 Set {'baudrate': 9600, 'parity': 'O', 'stopbits': 1} to /dev/ttyRS485-2
2023-12-12 01:48:18,345 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2023-12-12 01:48:18,555 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2023-12-12 01:48:18,809 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2023-12-12 01:48:19,020 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2023-12-12 01:48:19,238 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2023-12-12 01:48:19,245 Trying serial port settings: (9600, 'E', 2)
2023-12-12 01:48:19,249 Set {'baudrate': 9600, 'parity': 'E', 'stopbits': 2} to /dev/ttyRS485-2
2023-12-12 01:48:19,459 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2023-12-12 01:48:19,669 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2023-12-12 01:48:19,877 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2023-12-12 01:48:20,083 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2023-12-12 01:48:20,352 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2023-12-12 01:48:20,355 Trying serial port settings: (9600, 'E', 1)
2023-12-12 01:48:20,358 Set {'baudrate': 9600, 'parity': 'E', 'stopbits': 1} to /dev/ttyRS485-2
2023-12-12 01:48:20,576 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2023-12-12 01:48:20,782 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2023-12-12 01:48:21,101 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2023-12-12 01:48:21,348 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2023-12-12 01:48:21,556 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa60092b0>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2023-12-12 01:48:21,562 Trying serial port settings: (115200, 'N', 2)
2023-12-12 01:48:21,578 Set {'baudrate': 115200, 'parity': 'N', 'stopbits': 2} to /dev/ttyRS485-2
2023-12-12 01:48:21,691 Has found serial port settings: {'baudrate': 115200, 'parity': 'N', 'stopbits': 2}
2023-12-12 01:48:22,077 /dev/ttyRS485-2 49:
2023-12-12 01:48:22,471         WBMAI6 110166 wb-mai6 2.0.5 11909
2023-12-12 01:48:22,594 Removing device: {'slaveid': 49, 'port': '/dev/ttyRS485-2', 'fw_signature': 'wb-mai6'}
2023-12-12 01:48:22,715 FW releases files: ['http://fw-releases.wirenboard.com/fw/by-signature/release-versions.yaml']
2023-12-12 01:48:22,732 Looking to http://fw-releases.wirenboard.com/fw/by-signature/release-versions.yaml (suite: testing)
2023-12-12 01:48:22,734 GET: http://fw-releases.wirenboard.com/fw/by-signature/release-versions.yaml
2023-12-12 01:48:26,482 FW version for wb-mai6 on release testing: 2.0.7 (endpoint: fw/by-signature/wb-mai6/main/2.0.7.wbfw)
2023-12-12 01:48:26,489 GET: http://fw-releases.wirenboard.com/fw/by-signature/wb-mai6/main/2.0.7.wbfw
2023-12-12 01:48:27,599 Trying to get fname from content-disposition
2023-12-12 01:48:27,608 Got fname: wb-mai6__2.0.7_main_ac58f00.wbfw
2023-12-12 01:48:27,613 http://fw-releases.wirenboard.com/fw/by-signature/wb-mai6/main/2.0.7.wbfw => /var/lib/wb-mcu-fw-updater/wb-mai6__2.0.7_main_ac58f00.wbfw
2023-12-12 01:48:27,622 fw (wb-mai6 49 on /dev/ttyRS485-2):
2023-12-12 01:48:27,626 Update: 2.0.5 -> 2.0.7 (wb-mai6 49 /dev/ttyRS485-2)
2023-12-12 01:48:27,745 Flashing approved for "wb-mai6" (/dev/ttyRS485-2 : 49)
2023-12-12 01:48:28,098 f = write_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6009b80>, 131, 1) not succeed (try 1/5): Slave reported illegal data address
2023-12-12 01:48:28,420 f = write_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6009b80>, 131, 1) not succeed (try 2/5): Slave reported illegal data address
2023-12-12 01:48:28,731 f = write_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6009b80>, 131, 1) not succeed (try 3/5): Slave reported illegal data address
2023-12-12 01:48:29,049 f = write_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6009b80>, 131, 1) not succeed (try 4/5): Slave reported illegal data address
2023-12-12 01:48:29,404 f = write_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6009b80>, 131, 1) not succeed (try 5/5): Slave reported illegal data address
2023-12-12 01:48:29,410 Switching to bootloader with same port settings failed: Slave reported illegal data address. Try to use 9600N2
2023-12-12 01:48:30,262 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6009b80>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2023-12-12 01:48:30,490 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6009b80>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2023-12-12 01:48:30,703 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6009b80>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2023-12-12 01:48:30,910 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6009b80>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2023-12-12 01:48:31,243 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6009b80>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2023-12-12 01:48:31,252 Set {'baudrate': 115200, 'parity': 'N', 'stopbits': 2} to /dev/ttyRS485-2
2023-12-12 01:48:31,256 /dev/ttyRS485-2 response_timeout -> 0.20
2023-12-12 01:48:31,259 /dev/ttyRS485-2 response_timeout -> 5.00
2023-12-12 01:48:36,118 Flashing /var/lib/wb-mcu-fw-updater/wb-mai6__2.0.7_main_ac58f00.wbfw
2023-12-12 01:48:36,126 /dev/ttyRS485-2 response_timeout -> 6.00
2023-12-12 01:48:42,207 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6017268>, 4096, [38688, 58153, 39239, 31546, 9535, 6399, 62634, 59027, 41359, 61597, 28844, 20671, 6688, 43178, 11437, 33337]) not succeed (try 1/5): No communication with the instrument (no answer)
2023-12-12 01:48:48,270 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6017268>, 4096, [38688, 58153, 39239, 31546, 9535, 6399, 62634, 59027, 41359, 61597, 28844, 20671, 6688, 43178, 11437, 33337]) not succeed (try 2/5): No communication with the instrument (no answer)
2023-12-12 01:48:54,347 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6017268>, 4096, [38688, 58153, 39239, 31546, 9535, 6399, 62634, 59027, 41359, 61597, 28844, 20671, 6688, 43178, 11437, 33337]) not succeed (try 3/5): No communication with the instrument (no answer)
2023-12-12 01:49:00,393 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6017268>, 4096, [38688, 58153, 39239, 31546, 9535, 6399, 62634, 59027, 41359, 61597, 28844, 20671, 6688, 43178, 11437, 33337]) not succeed (try 4/5): No communication with the instrument (no answer)
2023-12-12 01:49:06,447 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa6017268>, 4096, [38688, 58153, 39239, 31546, 9535, 6399, 62634, 59027, 41359, 61597, 28844, 20671, 6688, 43178, 11437, 33337]) not succeed (try 5/5): No communication with the instrument (no answer)
2023-12-12 01:49:06,449 /dev/ttyRS485-2 response_timeout -> 5.00
2023-12-12 01:49:06,456 Flashing fw to (/dev/ttyRS485-2 49; response_timeout: 0.20s) has failed!
2023-12-12 01:49:06,462 
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/fw_flasher.py", line 102, in _send_info
    self.instrument.write_u16_regs(self.INFO_BLOCK_START, regs_row)
  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 274, in write_u16_regs
    self.device.write_registers(beginning, values)
  File "/usr/lib/python3/dist-packages/wb_modbus/minimalmodbus.py", line 885, in write_registers
    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 1203, in _perform_command
    response = self._communicate(request, number_of_bytes_to_read)
  File "/usr/lib/python3/dist-packages/wb_modbus/instruments.py", line 161, in _communicate
    self._write_to_bus(request)
  File "/usr/lib/python3/dist-packages/wb_modbus/instruments.py", line 251, in _write_to_bus
    raise minimalmodbus.NoResponseError("No communication with the instrument (no answer)")
wb_modbus.minimalmodbus.NoResponseError: No communication with the instrument (no answer)

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 577, in flash_alive_device
    _do_flash(modbus_connection, downloaded_fw, mode, erase_settings, force=force)
  File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/update_monitor.py", line 515, in _do_flash
    direct_flash(fw_fpath, modbus_connection, erase_settings, force=force)
  File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/update_monitor.py", line 385, in direct_flash
    flasher.flash_in_bl(fw_fpath)
  File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/fw_flasher.py", line 160, in flash_in_bl
    self._send_info(info_block)
  File "/usr/lib/python3/dist-packages/wb_mcu_fw_updater/fw_flasher.py", line 106, in _send_info
    six.raise_from(FlashingError, e)
  File "<string>", line 3, in raise_from
wb_mcu_fw_updater.fw_flasher.FlashingError
2023-12-12 01:49:06,513 Has saved db to /var/lib/wb-mcu-fw-updater/devices.jsondb
2023-12-12 01:49:06,519 Will run: fuser -k -CONT /dev/ttyRS485-2

Поменяйте скорость обмена на 9600 и после этого снова попробуйте обновиться. Отпишитесь о результате.

Прошивка не прошла, устройство не отвечает…
root@wirenboard-A6RC2UEN:~# wb-mcu-fw-updater update-fw /dev/ttyRS485-1 -a11 --debug
2023-12-12 21:08:16,121 Will run: fuser /dev/ttyRS485-1
2023-12-12 21:08:17,413 Clients of /dev/ttyRS485-1: 1620
2023-12-12 21:08:17,423 Will run: ps -o cmd= 1620
2023-12-12 21:08:18,017 Will run: fuser -k -STOP /dev/ttyRS485-1
2023-12-12 21:08:19,503 Reading /usr/lib/wb-release for releases info
2023-12-12 21:08:19,510 Got releases info:
2023-12-12 21:08:19,540 defaultdict(<function parse_releases.. at 0xa6004b68>, {‘RELEASE_NAME’: ‘unstable.latest’, ‘SUITE’: ‘testing’, ‘TARGET’: ‘wb6/bullseye’, ‘REPO_PREFIX’: ‘’})
2023-12-12 21:08:19,550 GET: http://fw-releases.wirenboard.com/
2023-12-12 21:08:21,497 Set {‘baudrate’: 9600, ‘parity’: ‘N’, ‘stopbits’: 2} to /dev/ttyRS485-1
2023-12-12 21:08:21,511 /dev/ttyRS485-1 response_timeout → 0.20
2023-12-12 21:08:21,535 Set {‘baudrate’: 9600, ‘parity’: ‘N’, ‘stopbits’: 2} to /dev/ttyRS485-1
2023-12-12 21:08:21,569 /dev/ttyRS485-1 response_timeout → 0.20
2023-12-12 21:08:21,580 Will find serial port settings for (/dev/ttyRS485-1 : 11; response_timeout: 0.20)…
2023-12-12 21:08:21,752 Has found serial port settings: {‘baudrate’: 9600, ‘parity’: ‘N’, ‘stopbits’: 2}
2023-12-12 21:08:22,273 /dev/ttyRS485-1 11:
2023-12-12 21:08:22,670 WBMR2m 4264129205 mr2mG 1.20.3 81701
2023-12-12 21:08:22,855 Removing device: {‘slaveid’: 11, ‘port’: ‘/dev/ttyRS485-1’, ‘fw_signature’: ‘mr2mG’}
2023-12-12 21:08:23,000 FW releases files: [‘http://fw-releases.wirenboard.com/fw/by-signature/release-versions.yaml’]
2023-12-12 21:08:23,017 Looking to http://fw-releases.wirenboard.com/fw/by-signature/release-versions.yaml (suite: testing)
2023-12-12 21:08:23,027 GET: http://fw-releases.wirenboard.com/fw/by-signature/release-versions.yaml
2023-12-12 21:08:32,383 FW version for mr2mG on release testing: 1.20.4 (endpoint: fw/by-signature/mr2mG/main/1.20.4.wbfw)
2023-12-12 21:08:32,413 GET: http://fw-releases.wirenboard.com/fw/by-signature/mr2mG/main/1.20.4.wbfw
2023-12-12 21:08:33,415 Trying to get fname from content-disposition
2023-12-12 21:08:33,423 Got fname: mr2mG__1.20.4_master_f4ca222.wbfw
2023-12-12 21:08:33,447 http://fw-releases.wirenboard.com/fw/by-signature/mr2mG/main/1.20.4.wbfw => /var/lib/wb-mcu-fw-updater/mr2mG__1.20.4_master_f4ca222.wbfw
2023-12-12 21:08:33,461 fw (mr2mG 11 on /dev/ttyRS485-1):
2023-12-12 21:08:33,487 Update: 1.20.3 → 1.20.4 (mr2mG 11 /dev/ttyRS485-1)
2023-12-12 21:08:33,663 Flashing approved for “mr2mG” (/dev/ttyRS485-1 : 11)
2023-12-12 21:08:34,596 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa600fb80>, 128) not succeed (try 1/5): No communication with the instrument (no answer)
2023-12-12 21:08:34,803 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa600fb80>, 128) not succeed (try 2/5): No communication with the instrument (no answer)
2023-12-12 21:08:35,024 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa600fb80>, 128) not succeed (try 3/5): No communication with the instrument (no answer)
2023-12-12 21:08:35,231 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa600fb80>, 128) not succeed (try 4/5): No communication with the instrument (no answer)
2023-12-12 21:08:35,446 f = read_u16(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa600fb80>, 128) not succeed (try 5/5): No communication with the instrument (no answer)
2023-12-12 21:08:35,448 Set {‘baudrate’: 9600, ‘parity’: ‘N’, ‘stopbits’: 2} to /dev/ttyRS485-1
2023-12-12 21:08:35,449 /dev/ttyRS485-1 response_timeout → 0.20
2023-12-12 21:08:35,450 /dev/ttyRS485-1 response_timeout → 5.00
2023-12-12 21:08:41,440 Flashing /var/lib/wb-mcu-fw-updater/mr2mG__1.20.4_master_f4ca222.wbfw
2023-12-12 21:08:41,451 /dev/ttyRS485-1 response_timeout → 6.00
2023-12-12 21:08:41,775 /dev/ttyRS485-1 response_timeout → 5.00
94%|#############################################################################################################6 |180/1922023-12-12 21:09:50,720 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa601d220>, 8192, [8166, 16291, 2704, 52666, 59624, 22999, 5471, 48945, 15036, 26917, 17183, 23467, 40902, 44330, 7660, 14261, 17982, 39699, 33618, 49443, 59054, 50544, 38919, 29928, 57613, 52368, 13508, 49449, 56445, 49778, 26937, 5353, 1870, 23479, 17022, 52280, 37116, 37014, 32701, 13085, 55466, 2913, 36517, 33215, 53788, 34864, 8516, 39200, 40667, 11833, 52646, 5910, 7750, 28939, 2415, 20169, 5505, 25979, 12620, 30015, 8663, 42782, 27576, 19930, 31593, 35320, 65514, 21468]) not succeed (try 1/5): No communication with the instrument (no answer)
2023-12-12 21:09:55,913 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa601d220>, 8192, [8166, 16291, 2704, 52666, 59624, 22999, 5471, 48945, 15036, 26917, 17183, 23467, 40902, 44330, 7660, 14261, 17982, 39699, 33618, 49443, 59054, 50544, 38919, 29928, 57613, 52368, 13508, 49449, 56445, 49778, 26937, 5353, 1870, 23479, 17022, 52280, 37116, 37014, 32701, 13085, 55466, 2913, 36517, 33215, 53788, 34864, 8516, 39200, 40667, 11833, 52646, 5910, 7750, 28939, 2415, 20169, 5505, 25979, 12620, 30015, 8663, 42782, 27576, 19930, 31593, 35320, 65514, 21468]) not succeed (try 2/5): No communication with the instrument (no answer)
2023-12-12 21:10:01,090 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa601d220>, 8192, [8166, 16291, 2704, 52666, 59624, 22999, 5471, 48945, 15036, 26917, 17183, 23467, 40902, 44330, 7660, 14261, 17982, 39699, 33618, 49443, 59054, 50544, 38919, 29928, 57613, 52368, 13508, 49449, 56445, 49778, 26937, 5353, 1870, 23479, 17022, 52280, 37116, 37014, 32701, 13085, 55466, 2913, 36517, 33215, 53788, 34864, 8516, 39200, 40667, 11833, 52646, 5910, 7750, 28939, 2415, 20169, 5505, 25979, 12620, 30015, 8663, 42782, 27576, 19930, 31593, 35320, 65514, 21468]) not succeed (try 3/5): No communication with the instrument (no answer)
2023-12-12 21:10:06,469 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa601d220>, 8192, [8166, 16291, 2704, 52666, 59624, 22999, 5471, 48945, 15036, 26917, 17183, 23467, 40902, 44330, 7660, 14261, 17982, 39699, 33618, 49443, 59054, 50544, 38919, 29928, 57613, 52368, 13508, 49449, 56445, 49778, 26937, 5353, 1870, 23479, 17022, 52280, 37116, 37014, 32701, 13085, 55466, 2913, 36517, 33215, 53788, 34864, 8516, 39200, 40667, 11833, 52646, 5910, 7750, 28939, 2415, 20169, 5505, 25979, 12620, 30015, 8663, 42782, 27576, 19930, 31593, 35320, 65514, 21468]) not succeed (try 4/5): No communication with the instrument (no answer)
2023-12-12 21:10:11,748 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa601d220>, 8192, [8166, 16291, 2704, 52666, 59624, 22999, 5471, 48945, 15036, 26917, 17183, 23467, 40902, 44330, 7660, 14261, 17982, 39699, 33618, 49443, 59054, 50544, 38919, 29928, 57613, 52368, 13508, 49449, 56445, 49778, 26937, 5353, 1870, 23479, 17022, 52280, 37116, 37014, 32701, 13085, 55466, 2913, 36517, 33215, 53788, 34864, 8516, 39200, 40667, 11833, 52646, 5910, 7750, 28939, 2415, 20169, 5505, 25979, 12620, 30015, 8663, 42782, 27576, 19930, 31593, 35320, 65514, 21468]) not succeed (try 5/5): No communication with the instrument (no answer)
94%|##############################################################################################################2 |181/1922023-12-12 21:10:16,943 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa601d220>, 8192, [4675, 49671, 56063, 56931, 24763, 64478, 37425, 35408, 37522, 7103, 1643, 31030, 34040, 60537, 63955, 7095, 54381, 54977, 58250, 955, 58495, 61117, 43338, 14661, 16770, 32690, 45622, 30779, 59219, 17970, 43879, 64689, 37392, 34121, 23217, 44971, 60512, 25451, 64107, 14249, 58290, 37098, 56967, 42107, 56124, 12460, 33770, 33346, 43441, 47581, 13638, 61836, 58068, 30438, 37099, 33478, 50661, 32005, 30678, 36390, 19529, 51485, 65262, 21272, 18950, 25950, 49998, 51962]) not succeed (try 1/5): No communication with the instrument (no answer)
2023-12-12 21:10:22,029 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa601d220>, 8192, [4675, 49671, 56063, 56931, 24763, 64478, 37425, 35408, 37522, 7103, 1643, 31030, 34040, 60537, 63955, 7095, 54381, 54977, 58250, 955, 58495, 61117, 43338, 14661, 16770, 32690, 45622, 30779, 59219, 17970, 43879, 64689, 37392, 34121, 23217, 44971, 60512, 25451, 64107, 14249, 58290, 37098, 56967, 42107, 56124, 12460, 33770, 33346, 43441, 47581, 13638, 61836, 58068, 30438, 37099, 33478, 50661, 32005, 30678, 36390, 19529, 51485, 65262, 21272, 18950, 25950, 49998, 51962]) not succeed (try 2/5): No communication with the instrument (no answer)
2023-12-12 21:10:27,169 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa601d220>, 8192, [4675, 49671, 56063, 56931, 24763, 64478, 37425, 35408, 37522, 7103, 1643, 31030, 34040, 60537, 63955, 7095, 54381, 54977, 58250, 955, 58495, 61117, 43338, 14661, 16770, 32690, 45622, 30779, 59219, 17970, 43879, 64689, 37392, 34121, 23217, 44971, 60512, 25451, 64107, 14249, 58290, 37098, 56967, 42107, 56124, 12460, 33770, 33346, 43441, 47581, 13638, 61836, 58068, 30438, 37099, 33478, 50661, 32005, 30678, 36390, 19529, 51485, 65262, 21272, 18950, 25950, 49998, 51962]) not succeed (try 3/5): No communication with the instrument (no answer)
2023-12-12 21:10:32,342 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa601d220>, 8192, [4675, 49671, 56063, 56931, 24763, 64478, 37425, 35408, 37522, 7103, 1643, 31030, 34040, 60537, 63955, 7095, 54381, 54977, 58250, 955, 58495, 61117, 43338, 14661, 16770, 32690, 45622, 30779, 59219, 17970, 43879, 64689, 37392, 34121, 23217, 44971, 60512, 25451, 64107, 14249, 58290, 37098, 56967, 42107, 56124, 12460, 33770, 33346, 43441, 47581, 13638, 61836, 58068, 30438, 37099, 33478, 50661, 32005, 30678, 36390, 19529, 51485, 65262, 21272, 18950, 25950, 49998, 51962]) not succeed (try 4/5): No communication with the instrument (no answer)
2023-12-12 21:10:37,596 f = write_u16_regs(<wb_modbus.bindings.WBModbusDeviceBase object at 0xa601d220>, 8192, [4675, 49671, 56063, 56931, 24763, 64478, 37425, 35408, 37522, 7103, 1643, 31030, 34040, 60537, 63955, 7095, 54381, 54977, 58250, 955, 58495, 61117, 43338, 14661, 16770, 32690, 45622, 30779, 59219, 17970, 43879, 64689, 37392, 34121, 23217, 44971, 60512, 25451, 64107, 14249, 58290, 37098, 56967, 42107, 56124, 12460, 33770, 33346, 43441, 47581, 13638, 61836, 58068, 30438, 37099, 33478, 50661, 32005, 30678, 36390, 19529, 51485, 65262, 21272, 18950, 25950, 49998, 51962]) not succeed (try 5/5): No communication with the instrument (no answer)
94%|###########################################################################################################################################################5 |181/192
2023-12-12 21:10:37,608 Flashing fw to (/dev/ttyRS485-1 11; response_timeout: 0.20s) has failed!
2023-12-12 21:10:37,628
Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/wb_mcu_fw_updater/fw_flasher.py”, line 120, in _send_data
self.instrument.write_u16_regs(
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 274, in write_u16_regs
self.device.write_registers(beginning, values)
File “/usr/lib/python3/dist-packages/wb_modbus/minimalmodbus.py”, line 885, in write_registers
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 1203, in _perform_command
response = self._communicate(request, number_of_bytes_to_read)
File “/usr/lib/python3/dist-packages/wb_modbus/instruments.py”, line 161, in _communicate
self._write_to_bus(request)
File “/usr/lib/python3/dist-packages/wb_modbus/instruments.py”, line 251, in _write_to_bus
raise minimalmodbus.NoResponseError(“No communication with the instrument (no answer)”)
wb_modbus.minimalmodbus.NoResponseError: No communication with the instrument (no answer)

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 577, in flash_alive_device
_do_flash(modbus_connection, downloaded_fw, mode, erase_settings, force=force)
File “/usr/lib/python3/dist-packages/wb_mcu_fw_updater/update_monitor.py”, line 515, in _do_flash
direct_flash(fw_fpath, modbus_connection, erase_settings, force=force)
File “/usr/lib/python3/dist-packages/wb_mcu_fw_updater/update_monitor.py”, line 385, in direct_flash
flasher.flash_in_bl(fw_fpath)
File “/usr/lib/python3/dist-packages/wb_mcu_fw_updater/fw_flasher.py”, line 161, in flash_in_bl
self._send_data(data_block)
File “/usr/lib/python3/dist-packages/wb_mcu_fw_updater/fw_flasher.py”, line 126, in _send_data
six.raise_from(FlashingError, e)
File “”, line 3, in raise_from
wb_mcu_fw_updater.fw_flasher.FlashingError
2023-12-12 21:10:37,785 Has saved db to /var/lib/wb-mcu-fw-updater/devices.jsondb
2023-12-12 21:10:37,798 Will run: fuser -k -CONT /dev/ttyRS485-1

Через wb-mcu-fw-updater recover /dev/ttyRS485-1 -a11 я его оживил, но это же не правильно…

Попытался воспроизвести у себя — обновление прошло успешно. У вас, судя по дебаг логу, после изменения скорости процедура прошивки началась, но прервалась. Правильно понимаю, что после данной операции устройство перестало отвечать и вы сделали восстановление (recover)? Попробуйте перейти на стабильный релиз и повторить процедуру обновления.

Я в общем то на тест и перешел что бы последние прошивки поставить и мне z2m последний нужен был, там поддержка нужных мне устройств появилась.

А что считаете неправильным?
Проверьте, есть ли на этой шине ошибки, если более чем одна-две в минуту при штатном опросе - я бы не стал запускать прошивку.

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

Если новый bootloader - то скорость менять не надо, поддерживается прошивка на текущей, настроенной.

То есть сначала нужно было на всех устройствах уйти на 9600, потом обновить бутлоадер, а не прошивку. И еще, я могу обновить бутлоадер устройствам за MIO?

Точно такое же поведение, устройства на скорости 115200, релиз последний тестинг, при попытке обновления вылетает с ошибкой. Обновить бутлоадер так же не получается.
Попробовал перевести одно устройство на скорость 9600, после чего получилось обновить бутлоадер и прошивку устройства.
Поведение похоже на то, что утилита wb-mcu-fw-updater пытается прошить устройство на той скорости на которой устройство сейчас работает, но бутлоадер еще старый и это не поддерживает…