vbox virtualbox-ose 6.1.36 and windows 10 guest: can't access USB devices

I am having what seems to be exactly the same problem as described in Virtualbox and USB device.
In my case I have virtualbox-ose 6.1.36 on FreeBSD 13.1, with a Windows 10 guest in the VM.

The problem (symptoms) with USB is exactly as described by grahamperrin@ in his July 10 post in the above thread:

This device cannot start. (Code 10) An invalid parameter was passed to a service or function.

Any help would be appreciated.
 
There is way too many and not enough information at the same time in that thread.
Did you follow the afterinstall message from virtualbox ?pkg info -D virtualbox-ose, look for the USB parts.
 
There is way too many and not enough information at the same time in that thread.
Did you follow the afterinstall message from virtualbox ?pkg info -D virtualbox-ose, look for the USB parts.
Yes, I've done everything in the FreeBSD manual sec. 22.5.2, and in the USB part of the message from pkg info -D virtualbox-ose.

So the Windows guest sees the USB device (it is visible in the Devices->USB menu), and I can capture it (so that a checkmark appears next to it in the menu), but the device does not show in the Windows file manager, and the Windows device manager produces the error message I already posted.
 
As far as I know only USB 1.1 is supported. Not 2.0 or 3.0. What kind of USB device are you trying to pass-through?
 
It works for me but only USB 1.1 as SirDice mentioned. It only worked if I connected USB to the non usb3 port.
 
As far as I know only USB 1.1 is supported. Not 2.0 or 3.0. What kind of USB device are you trying to pass-through?
Yes, I'm aware of the restriction to USB1.1.
I've tried a Lexar USB 16GB stick and a Storejet USB 500GB portable disk.
The computer has USB 2.0 and USB 3.0 ports, I tried the USB 2.0 port.
But these ports are supposed to be downward-compatible, as far as I know.
 
This is an unfortunate state of VirtualBox on FreeBSD. Virtualbox relies on extension pack (host related sw) to enable USB2 and USB3 support. This extension pack is not supported on FreeBSD. It's not about the HW itself (and its compability) but SW support of it in VirtualBox.
 
It was usb2 behaving as usb1.1 under VirtualBox.
I thought you are talking about usb3 ports being backwards compatible with 2.

Btw. did you install guest additions under Windows?
 
This is an unfortunate state of VirtualBox on FreeBSD. Virtualbox relies on extension pack (host related sw) to enable USB2 and USB3 support. This extension pack is not supported on FreeBSD. It's not about the HW itself (and its compability) but SW support of it in VirtualBox.
I know about this limitation (which is somewhat strange, given that the extension pack is available for Linux).
But I thought the consequence was simply that the higher speeds of USB 2.0 and 3.0 won't be available.
So, e.g., your USB 2.0 stick would work at USB 1.1 speeds.
 
I understand your point: if I was able to use usb2 port in usb1.1 why can't you do the same. Frankly I don't know. Is that usb2 really usb2? Did you try usb stick or something more "simple" (I had disks with some weird fw having problems anywhere but Windows before).
 
I understand your point: if I was able to use usb2 port in usb1.1 why can't you do the same. Frankly I don't know. Is that usb2 really usb2? Did you try usb stick or something more "simple" (I had disks with some weird fw having problems anywhere but Windows before).
I tried an old USB device (a remote control), and that did actually work.

Anyhow, does anyone understand exactly what is the issue with USB 2/3 support in virtualbox-ose?

The Oracle extension pack supports Linux and Solaris: on my system I see /usr/local/lib/virtualbox/ExtensionPacks/Oracle_VM_VirtualBox_Extension_Pack with subdirectories linux.amd64 and solaris.amd64,
which contain VBoxEhciR0.r0 and VBoxEhciR3.so.
There is also a ExtPack-license.txt, but I don't understand its implications for FreeBSD.
 
Anyhow, does anyone understand exactly what is the issue with USB 2/3 support in virtualbox-ose?
It's non existent. Somebody would have to write the support for it. Or better to say import the support pack to FreeBSD.
 
It's non existent. Somebody would have to write the support for it. Or better to say import the support pack to FreeBSD.
I believe it uses libusb underneath so in practice, all we need to do is ask Oracle to recompile their closed-source code using a compiler targeting FreeBSD.
 
It's non existent. Somebody would have to write the support for it. Or better to say import the support pack to FreeBSD.
Do you think the virtualbox-ose developers are aware of this issue? And of the "import the support pack" solution?
It seems simple enough to me.
 
I believe it uses libusb underneath so in practice, all we need to do is ask Oracle to recompile their closed-source code using a compiler targeting FreeBSD
While I didn't check the source I think there is some kernel glue provided by modules (at least ring0 module) making this a bigger problem. After all you need to pass the device to guest.

Do you think the virtualbox-ose developers are aware of this issue? And of the "import the support pack" solution?
VirtualBox developers don't care much about FreeBSD, this software is aimed for Windows/Linux/Solaris/OSX. There are some nice FreeBSD people who decided to port it here. And I bet they are aware of the complexities. If I have to guess it's all about manpower vs what is really needed.
 
Back
Top