I have a problem with USB device detection in the VM.
In the VM, I installed the BitBoxApp, and it worked when connecting the BitBox Stick via USB‑C. After upgrading the BitBox firmware, however, the BitBox App can no longer detect the connected device.
Is this a known issue?
What I tried:
a) qvm-device usb list --assignments (I can see the BitBox listed)
b) qvm-device usb attach --ro apps sys-usb:4-5
I get this error: Error: Got empty response from qubesd. See journalctl in dom0 for details
c) I also restarted sys-usb - no success.
It seems like this might be related to a qubesd issue. I noticed that after the firmware update, the USB IDs changed, and Qubes may not be able to apply the previous device assignment / mapping.
This probably causes: Since we know the error occurs because Qubes OS 4.3 cannot process the modified hardware ID after the firmware update of Bitbox (with USB-C), I also could not completely reset the Qubes USB subssystem once successfully. So the old, blocking entries are still not cleared.
WARNING: protocol error for call b'admin.vm.device.usb.Attach'+b'sys-usb-4-5+03eb+2403+v9.26.3-pre+cbb40634cc+u030000' (b'dom0' - b'apps') with payload of 143 bytes
If the results are the same as from the thread you linked above, I can link this forum thread to the github issue. If they are different results, I’m going to ask you to create a new issue on github.
I want to confirm I am having the exact same issue with a BitBox device, which was working until I upgraded the firmware to the recent version. That firmware upgrade changed the bus ID I believe, though I am not sure if this is part of the problem or not.
@corporateblush This was extremely helpful, thank you for pointing me in the right direction.
In the Global Config under Device Assignments, I have added a new Device Assignment. Instead of configuring it for a specific device (by leaving Device Identity unselected), I assigned it to a specific USB port. This way, any device connected to that port is automatically attached to the Qube I selected.
This is now working perfectly! When I connect the device and start my Qube the device does now get attached!
I am glad it helped. Since I am just recently switched to r4.3x, I noticed this regression in device assignments. BUS IDs of a specific devices attached are very often changed with weird IDs, and I haven’t found a way to fix it, so I am using this as a workaround actually. So, each time it happens, I am reassigning it in Global Config and that is the only place that works, since it is not possible to type exact new weird ID in the terminal.
Someone with a Github account should raise the issue there.