Discussion - Distinguish multiple identical USB devices
-
scottgus1
- Site Moderator
- Posts: 20945
- Joined: 30. Dec 2009, 20:14
- Primary OS: MS Windows 10
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: Windows, Linux
Discussion - Distinguish multiple identical USB devices
This topic is for discussing Distinguish multiple identical USB devices
Background & experiments:
USB devices have various pieces of information, such as VendorID, ProductID, Revision, etc., which appear in the Virtualbox guest's USB filter settings. What to do if two or more USB devices have identical settings in all of the filter fields? If Virtualbox has no unique setting between the devices it will not be able to tell which is which, and will very likely pass all of the attached identical devices into the guest. The port number that the USB device is attached to does not appear in the USB filter's Port box when you select a USB device to make a new filter. However, port number information is available by running 'vboxmanage list usbhost' in a command prompt (tested on a Windows host, other hosts unknown). If the port number for each identical device is different, then entering the port number into the USB filter will cause only that device to go into the guest.
This has been tested on a Windows host with two nearly identical USB thumbdrives (differing only in serial number) and two USB security dongles (completely identical filter information).
For the thumbdrive test, the guest USB filter was cleared out to show only the usual entries: Name, VendorID & ProductID. As expected, both thumbdrives went into the guest. 'Vboxmanage list usbhost' revealed that one thumbdrive's Port number was 2 and the other's was 3. I unplugged the thumbdrives and put '2' in the guest's USB filter for the Port box. When the guest was restarted and the thumdrives were reinserted, only the thumbdrive on "port 2" went into the guest. The other thumb drive appeared on the host. I removed the thumbdrives and switched them. Now the other drive went into the guest and the first remained in the host. I was also able to get two guests to reliably grab one or the other of the thumbdrives based solely on which port the thumbdrive was plugged into, by putting one port number on one guest's USB filter and the other port number on the other guest's USB filter.
I did not do much testing with the security dongles, as the host was someone else's PC and the project involving Virtualbox had to be done during work hours. But using the port number from 'list usbhost' the guest now only uses the one of the two identical dongles and leaves the other in the host, allowing for correct licensing of the special software that runs in both host and guest.
Background & experiments:
USB devices have various pieces of information, such as VendorID, ProductID, Revision, etc., which appear in the Virtualbox guest's USB filter settings. What to do if two or more USB devices have identical settings in all of the filter fields? If Virtualbox has no unique setting between the devices it will not be able to tell which is which, and will very likely pass all of the attached identical devices into the guest. The port number that the USB device is attached to does not appear in the USB filter's Port box when you select a USB device to make a new filter. However, port number information is available by running 'vboxmanage list usbhost' in a command prompt (tested on a Windows host, other hosts unknown). If the port number for each identical device is different, then entering the port number into the USB filter will cause only that device to go into the guest.
This has been tested on a Windows host with two nearly identical USB thumbdrives (differing only in serial number) and two USB security dongles (completely identical filter information).
For the thumbdrive test, the guest USB filter was cleared out to show only the usual entries: Name, VendorID & ProductID. As expected, both thumbdrives went into the guest. 'Vboxmanage list usbhost' revealed that one thumbdrive's Port number was 2 and the other's was 3. I unplugged the thumbdrives and put '2' in the guest's USB filter for the Port box. When the guest was restarted and the thumdrives were reinserted, only the thumbdrive on "port 2" went into the guest. The other thumb drive appeared on the host. I removed the thumbdrives and switched them. Now the other drive went into the guest and the first remained in the host. I was also able to get two guests to reliably grab one or the other of the thumbdrives based solely on which port the thumbdrive was plugged into, by putting one port number on one guest's USB filter and the other port number on the other guest's USB filter.
I did not do much testing with the security dongles, as the host was someone else's PC and the project involving Virtualbox had to be done during work hours. But using the port number from 'list usbhost' the guest now only uses the one of the two identical dongles and leaves the other in the host, allowing for correct licensing of the special software that runs in both host and guest.
-
fth0
- Volunteer
- Posts: 5690
- Joined: 14. Feb 2019, 03:06
- Primary OS: Mac OS X other
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: Linux, Windows 10, ...
- Location: Germany
Re: Discussion - Distinguish multiple identical USB devices
Both statements also hold true for my macOS High Sierra and Linux Mint 20 hosts. And I think that the port number is left out deliberately, because in the common case you don't want your USB device to be captured only at one of the USB ports.scottgus1 wrote:The port number that the USB device is attached to does not appear in the USB filter's Port box when you select a USB device to make a new filter. However, port number information is available by running 'vboxmanage list usbhost' in a command prompt (tested on a Windows host, other hosts unknown).
Re: Discussion - Distinguish multiple identical USB devices
Hello I hope you can help me.
I have the host system with win10 and the guest also with win10. The host has 2 viewsonic TD2430 touch screens connected. I am mounting 2 guest systems and each one will be seen on the different touch screens.
The problem is that I cannot use the virtual box usb filters to assign the usb touch to each of the VMs because the 2 touch are identical, and do not have a physical serial number.
The serial number that appears to me is the one assigned by windows and with that the usb filter does not work. Another problem I found is that Windows assigns them the same port, regardless of whether they are physically in another and what changes them is the USB hub.
An apology if I do not put images, but it is the first time that I comment. Investigate how to do it to make an understandable explanation.
Thanks.
I have the host system with win10 and the guest also with win10. The host has 2 viewsonic TD2430 touch screens connected. I am mounting 2 guest systems and each one will be seen on the different touch screens.
The problem is that I cannot use the virtual box usb filters to assign the usb touch to each of the VMs because the 2 touch are identical, and do not have a physical serial number.
The serial number that appears to me is the one assigned by windows and with that the usb filter does not work. Another problem I found is that Windows assigns them the same port, regardless of whether they are physically in another and what changes them is the USB hub.
An apology if I do not put images, but it is the first time that I comment. Investigate how to do it to make an understandable explanation.
Thanks.
-
scottgus1
- Site Moderator
- Posts: 20945
- Joined: 30. Dec 2009, 20:14
- Primary OS: MS Windows 10
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: Windows, Linux
Re: Discussion - Distinguish multiple identical USB devices
This will be a killer. You have to get different port numbers for the identical devices to be distinguishable. Maybe a USB hub can give the devices different port numbers.Samael wrote:Windows assigns them the same port
Re: Discussion - Distinguish multiple identical USB devices
Hi, Scottgus! Thanks for answeringscottgus1 wrote:This will be a killer. You have to get different port numbers for the identical devices to be distinguishable. Maybe a USB hub can give the devices different port numbers.Samael wrote:Windows assigns them the same port
I will try to do it with Hub Usb. I hope it works
I never imagined that windows would assign the same port
Apart from the usb hub, do you think there is another solution that I can try?
-
scottgus1
- Site Moderator
- Posts: 20945
- Joined: 30. Dec 2009, 20:14
- Primary OS: MS Windows 10
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: Windows, Linux
Re: Discussion - Distinguish multiple identical USB devices
Depends on what hardware you can attach to your computer. A new PCIe USB card might give different ports.
Re: Discussion - Distinguish multiple identical USB devices
OKscottgus1 wrote:Depends on what hardware you can attach to your computer. A new PCIe USB card might give different ports.
I'll try with the usb hub (I think it's cheaper), and then with the pci card.
As additional data this is my hardware:
MOBO: Asus Prime Z690-P
Processor: Intel core i5 12th Gen
RAM: 32GB (2X16)
Nvme: 1TB Kingston KC-3000
Thank you very much for your help.
Re: Discussion - Distinguish multiple identical USB devices
Hi!
Updating....
I already tried with a PCIe USB card and it keeps assigning me the same port.
(It remains to do the test with the usb hub, but I have a feeling that I will obtain the same result
)
Is there a way to somehow modify the driver's .inf file to prevent it from assigning the same ports?
Updating....
I already tried with a PCIe USB card and it keeps assigning me the same port.
(It remains to do the test with the usb hub, but I have a feeling that I will obtain the same result
Is there a way to somehow modify the driver's .inf file to prevent it from assigning the same ports?
-
scottgus1
- Site Moderator
- Posts: 20945
- Joined: 30. Dec 2009, 20:14
- Primary OS: MS Windows 10
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: Windows, Linux
Re: Discussion - Distinguish multiple identical USB devices
I have no idea about this. It's supposed to be the USB hub inside the controller has multiple ports, and each port should have a different number.Samael wrote:Is there a way to somehow modify the driver's .inf file to prevent it from assigning the same ports?
If this card has more than one USB port it aught to have different port numbers. Please plug both identical devices into this card then run 'vboxmanage list usbhost' in the command line, and post the output.Samael wrote:I already tried with a PCIe USB card and it keeps assigning me the same port.
Re: Discussion - Distinguish multiple identical USB devices
scottgus1 wrote:If this card has more than one USB port it aught to have different port numbers. Please plug both identical devices into this card then run 'vboxmanage list usbhost' in the command line, and post the output.
Hi! This is the result

Those who say Weida Hi-Tech corresponds to the touch and both are in the same port (3)
-
scottgus1
- Site Moderator
- Posts: 20945
- Joined: 30. Dec 2009, 20:14
- Primary OS: MS Windows 10
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: Windows, Linux
Re: Discussion - Distinguish multiple identical USB devices
As you can see, IMG tags don't work for unattached or 3rd-party-linked images. (That forum tag only works for images that have been previously uploaded via the Upload Attachment tab.)
Please copy and paste the text, instead of a screenshot.
Please copy and paste the text, instead of a screenshot.
Re: Discussion - Distinguish multiple identical USB devices
Sorry, I had not seen the correct way to put images
this is the result...
this is the result...
-
scottgus1
- Site Moderator
- Posts: 20945
- Joined: 30. Dec 2009, 20:14
- Primary OS: MS Windows 10
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: Windows, Linux
Re: Discussion - Distinguish multiple identical USB devices
?scottgus1 wrote:Please copy and paste the text, instead of a screenshot
You have two Weida CoolTouches, both on port 3, and an Aura LED controller on port 2, and something else that I can't identify, because you didn't follow instructions, on port 12.
From Distinguish multiple identical USB devices
If you switch the Aura LED controller and one of the Weidas, does the Weida still come in on port 3?You may have to experiment with which USB device gets plugged in where to get different port numbers in 'vboxmanage list usbhost' for each identical device.
Re: Discussion - Distinguish multiple identical USB devices
I apologize for that. My problem is that English is not my language and I am using the google translator, and I did not understand the instruction well. (Thank you Mr Googlesco1ttgus wrote: because you didn't follow instructions,
The AURA controller is for RGB LED strips, but I don't have anything connected there, they are RGB headers. I find it strange that it appears with vboxmanage list usbhostsco1ttgus wrote:From Distinguish multiple identical USB devices
You may have to experiment with which USB device gets plugged in where to get different port numbers in 'vboxmanage list usbhost' for each identical device.
If you switch the Aura LED controller and one of the Weidas, does the Weida still come in on port 3?
Re: Discussion - Distinguish multiple identical USB devices
sco1ttgus wrote: Please copy and paste the text, instead of a screenshot
Code: Select all
C:\Program Files\Oracle\VirtualBox>vboxmanage list usbhost
Host USB Devices:
UUID: a0991c9e-f320-459e-af20-06ad55ffcf8f
VendorId: 0x2575 (2575)
ProductId: 0x7317 (7317)
Revision: 19.48 (1948)
Port: 3
USB version/speed: 2/Full
Address: {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0008
Current State: Busy
UUID: 6173457e-e3ea-442d-ba15-1f186a918c2d
VendorId: 0x2575 (2575)
ProductId: 0x7317 (7317)
Revision: 19.48 (1948)
Port: 3
USB version/speed: 2/Full
Address: {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0030
Current State: Busy
UUID: 31741e41-64eb-4772-9313-bb92040d2f5f
VendorId: 0x0b05 (0B05)
ProductId: 0x19af (19AF)
Revision: 1.0 (0100)
Port: 2
USB version/speed: 2/Full
Manufacturer: AsusTek Computer Inc.
Product: AURA LED Controller
SerialNumber: 9876543210
Address: {36fc9e60-c465-11cf-8056-444553540000}\0002
Current State: Busy
UUID: 9eb19bd3-2bd7-4189-a11d-8907c49122b0
VendorId: 0x046d (046D)
ProductId: 0xc31c (C31C)
Revision: 100.0 (10000)
Port: 12
USB version/speed: 1/Low
Manufacturer: Logitech
Product: USB Keyboard
Address: {36fc9e60-c465-11cf-8056-444553540000}\0004
Current State: Busy
UUID: 481d6bc6-716d-451e-a62c-1208da020c28
VendorId: 0x046d (046D)
ProductId: 0xc05a (C05A)
Revision: 99.0 (9900)
Port: 11
USB version/speed: 2/Low
Manufacturer: Logitech
Product: USB Optical Mouse
Address: {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0002
Current State: BusyThe code above is with the Touchscreen connected to the usb PCIe card, the usb are 3.0.sco1ttgus wrote:From Distinguish multiple identical USB devices
You may have to experiment with which USB device gets plugged in where to get different port numbers in 'vboxmanage list usbhost' for each identical device.
I did the test by plugging them into the ports where the mouse and keyboard are connected and I still get the same result