-
Notifications
You must be signed in to change notification settings - Fork 73
Description
recently I have tried to update to newer firmware from 16.1.1. to 16.2.1 using the UHK Agent, it worked fine on my right-side UHK80 but that caused an issue on my UHK Left module.
When I plug the USB cable in the left half as instructed by the UHK Agent , the UHK Agent shows the exclamation mark and offers the "FIX" recovery button, but the recovery process consistently fails with a Read SerialPort timeout error at the imageUpload step via mcumgr.
I have thoroughly troubleshot this issue and can confirm the following:
Tested on Windows 10/11: Fails on COM port (even after uninstalling hidden COM drivers, changing USB power suspend settings, and bypassing USB hubs).
Tested on Linux: Fails on /dev/ttyACM0 with the exact same timeout error (even after reloading udev rules and completely stopping ModemManager.service to prevent serial polling).
Hardware Resets: I have used the physical reset button hole on the back of the left module while plugging it in. The Agent sees the bootloader, but the write still times out.
Cables: I have tested multiple USB-C cables directly connected to the computer.
Logs excerpt:
[UhkOperations] Init SerialPeripheral: /dev/ttyACM0 (and COM4 on Windows)
[UhkOperations] Read UHK 80 left firmware from file
[UhkOperations] Write memory with mcumgr
[DeviceService] updateFirmware error {"message":"Read SerialPort timeout","stack":"Error: Read SerialPort timeout... at async Dr.imageUpload... at async ao.updateFirmwareWithMcuManager..."}
Since the data stream is dropping at the exact same point across completely different OS architectures and cables, I suspect the flash memory/MCU on the left module has hardware-locked.
[UhkOperations] Init SerialPeripheral: /dev/ttyACM0
[UhkOperations] Read UHK 80 left firmware from file
[UhkOperations] Write memory with mcumgr
[DeviceService] updateFirmware error {"message":"Read SerialPort timeout","stack":"Error: Read SerialPort timeout\n at Yr.read (/tmp/.mount_UHK.AgAq6c6V/resources/app.asar/electron-main.js:2:454266)\n at async Rr.sendCommand (/tmp/.mount_UHK.AgAq6c6V/resources/app.asar/electron-main.js:2:448774)\n at async Rr.imageUpload (/tmp/.mount_UHK.AgAq6c6V/resources/app.asar/electron-main.js:2:448199)\n at async ao.updateFirmwareWithMcuManager (/tmp/.mount_UHK.AgAq6c6V/resources/app.asar/electron-main.js:2:471624)\n at async ys.updateFirmware (/tmp/.mount_UHK.AgAq6c6V/resources/app.asar/electron-main.js:2:539904)\n at async cs.process (/tmp/.mount_UHK.AgAq6c6V/resources/app.asar/electron-main.js:2:520242)"}
[DeviceService] error while enabling firmware version check {"message":"Cannot find device with vendorId: vendorId: 14248, productId: 9","stack":"Error: Cannot find device with vendorId: vendorId: 14248, productId: 9\n at lr (/tmp/.mount_UHK.AgAq6c6V/resources/app.asar/electron-main.js:2:430678)\n at async ys.updateFirmware (/tmp/.mount_UHK.AgAq6c6V/resources/app.asar/electron-main.js:2:542446)\n at async cs.process (/tmp/.mount_UHK.AgAq6c6V/resources/app.asar/electron-main.js:2:520242)"}