Can not reconnect Host to USB after USB reset from Guest

Discussions related to using VirtualBox on Windows hosts.
Post Reply
Poncho
Posts: 2
Joined: 11. Feb 2018, 11:39

Can not reconnect Host to USB after USB reset from Guest

Post by Poncho »

Hi,

Background:
I have a Windows machine connected to 4 (similar) devices using USB 3.0.
This machine is running scripts which test the connected devices (as part of a big lab).
I thought it might be easier to run 4 VMs, each connected to one device (this will make automation life much easier).
Guests should be Windows 7.
Since I only have Windows 7 machines I'm currently using it for the Host as well.

So far:
I was able to create the 4 VMs and define filters to connect (successfully) each VM to one device.
I'm able to communicate from each of the VM with the appropriate device.

My problem:
During test initialization, the script sends a restart command to the device which is then disconnected from the machine.
When the device turned on:
1) it's not recognized anymore by the VM.
2) The Host is displaying Cypress USB driver (instead of VirtualBox Driver).
3) Trying to connect the VM explicitly fails with 'USB device 1.0.9 FX3 with UUID {XXX} is busy with a previous request. Please try again later'.
4) As far as I can see, the device is available (to the VM) again only after restarting the host.

More info:
Host is located inside a data center, I'm using Remote Desktop.
Host and Guests are not connected to the internet, all drivers must be installed manually.
As part of the host configuration: 'Renesas Electronics USB 3.0 Root Hub' is installed.

My questions:
1) Any clue or suggestion for identifying the reason for this failure?
2) In many guides describing how to solve USB issues with VB, I have been asked to plug out (and then in) the USB device, is there a way to mimic this using Remote Desktop?
3) Before trying this on Lab's machine, I tested on my desktop, I saw the same problem and tried several methods to solve it, nothing helped but somehow, when I tried to debug the process, the problem disappeared.
I know it didn't disappeared because of the debugging, is there a chance Windows installed a new driver without notifying me?

Any help will be appreciated.
Thanks for reading this.
Yaron

Code: Select all

> VBoxManage -version
5.2.6r120293

>VBoxManage list extpacks
Extension Packs: 1
Pack no. 0:   Oracle VM VirtualBox Extension Pack
Version:      5.2.6
Revision:     120293
Edition:
Description:  USB 2.0 and USB 3.0 Host Controller, Host Webcam, VirtualBox RDP, PXE ROM, Disk Encryption, NVMe.
VRDE Module:  VBoxVRDP
Usable:       true
Why unusable:

> VBoxManage list usbhost
Host USB Devices:

UUID:               c531054f-075b-46ef-9859-4dfed0858bf2
VendorId:           0x0557 (0557)
ProductId:          0x2419 (2419)
Revision:           1.0 (0100)
Port:               1
USB version/speed:  1/Full
Manufacturer:       ATEN International Co., Ltd
Address:            {36fc9e60-c465-11cf-8056-444553540000}\0032
Current State:      Busy

UUID:               92287037-4bfe-4551-81ea-490bcced6a89
VendorId:           0x04b4 (04B4)
ProductId:          0x00f1 (00F1)
Revision:           0.0 (0000)
Port:               1
USB version/speed:  3/Super
Manufacturer:       1.0.9
Product:            FX3
SerialNumber:       FLX12303
Address:            {36fc9e60-c465-11cf-8056-444553540000}\0027
Current State:      Busy

UUID:               74c5b4d2-a399-4104-80fe-cc3c8b49a701
VendorId:           0x04b4 (04B4)
ProductId:          0x00f1 (00F1)
Revision:           0.0 (0000)
Port:               1
USB version/speed:  3/Super
Manufacturer:       1.0.9
Product:            FX3
SerialNumber:       FLX12308
Address:            {36fc9e60-c465-11cf-8056-444553540000}\0028
Current State:      Busy

UUID:               a13e97f3-5f5b-4587-a02c-e68dce6bf226
VendorId:           0x04b4 (04B4)
ProductId:          0x00f1 (00F1)
Revision:           0.0 (0000)
Port:               2
USB version/speed:  3/Super
Manufacturer:       1.0.9
Product:            FX3
SerialNumber:       FLX12281
Address:            {36fc9e60-c465-11cf-8056-444553540000}\0016
Current State:      Busy

UUID:               f18f3258-6563-49a4-be0d-31d81bd2d600
VendorId:           0x04b4 (04B4)
ProductId:          0x00f1 (00F1)
Revision:           0.0 (0000)
Port:               2
USB version/speed:  3/Super
Manufacturer:       1.0.9
Product:            FX3
SerialNumber:       FLX12278
Address:            {36fc9e60-c465-11cf-8056-444553540000}\0034
Current State:      Captured
Last edited by socratis on 14. Feb 2018, 20:05, edited 1 time in total.
Reason: Enclosed the information in [code] tag for better readability
socratis
Site Moderator
Posts: 27329
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: Can not reconnect Host to USB after USB reset from Guest

Post by socratis »

Poncho wrote:I was able to create the 4 VMs and define filters to connect (successfully) each VM to one device.
Did you create the filters with the serial number included? And they work? Specific device to specific VM?
Poncho wrote:2) The Host is displaying Cypress USB driver (instead of VirtualBox Driver).
Can you clarify that part? Where do you see that?
Poncho wrote:4) As far as I can see, the device is available (to the VM) again only after restarting the host.
Or unplugging/plugging it.
Poncho wrote:2) In many guides describing how to solve USB issues with VB, I have been asked to plug out (and then in) the USB device, is there a way to mimic this using Remote Desktop?
That would be the same way as when you choose to remove the USB stick from your Windows host, in the "Safely Remove Hardware". None. You need to unplug/plug the device to be seen again. Physically...
Poncho wrote:but somehow, when I tried to debug the process, the problem disappeared.
Debug how?
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
Poncho
Posts: 2
Joined: 11. Feb 2018, 11:39

Re: Can not reconnect Host to USB after USB reset from Guest

Post by Poncho »

socratis wrote:
Poncho wrote:I was able to create the 4 VMs and define filters to connect (successfully) each VM to one device.
Did you create the filters with the serial number included? And they work? Specific device to specific VM?
Yes, the filters include Name, Vendor ID, Product ID, Revision, Manufacturer and Product which are identical for all devices, and a unique Serial No.
The filters work fine, when I start a VM the appropriate USB is attached.
socratis wrote:
Poncho wrote:2) The Host is displaying Cypress USB driver (instead of VirtualBox Driver).
Can you clarify that part? Where do you see that?
Control Panel -> Hardware and Sound -> Devices and Printers
Right click one of the devices and choosing the Hardware tab.
When the appropriate VM is started (after host restart) I can see that the driver name is 'VirtualBox USB' (and in the VM Cypress USB) but after USB reset the driver name (in the host) is Cypress USB Streamer.
socratis wrote:
Poncho wrote:4) As far as I can see, the device is available (to the VM) again only after restarting the host.
Or unplugging/plugging it.
I don't have physical access to the machine,
socratis wrote:
Poncho wrote:2) In many guides describing how to solve USB issues with VB, I have been asked to plug out (and then in) the USB device, is there a way to mimic this using Remote Desktop?
That would be the same way as when you choose to remove the USB stick from your Windows host, in the "Safely Remove Hardware". None. You need to unplug/plug the device to be seen again. Physically...
Any way to workaround this?
socratis wrote:
Poncho wrote:but somehow, when I tried to debug the process, the problem disappeared.
Debug how?
Using Python IDE.

Thanks for your help
socratis
Site Moderator
Posts: 27329
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: Can not reconnect Host to USB after USB reset from Guest

Post by socratis »

For the one question that you want the answer to, I already told you that there's no way to emulate the physical insertion of a USB device. So far...

Thanks for your answers. Some (like the serial numbers and the filters) were really helpful.
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
Post Reply