[USRP-users] trouble with latest UHD under VirtualBox/Ubuntu
marcus.mueller at ettus.com
Tue Mar 15 12:15:11 EDT 2016
I want to add that USB is one of the things that are inherently terrible
to virtualize – buses with comparatively small transactions that need to
be acknowledged, much randomness in the timing, no possibility to
"forward" things on a higher level, lack of a clear, unified DMA
approach for different chipsets, wildly varying host controller
behaviour, the funkiest transfer types and specification corner cases…
All in all, don't use USB devices forwarded into your VM if you don't
have *plenty* of CPU to spare and a lot of tolerance for latency, jitter
and occasional breakdowns, to be honest.
I haven't tried that, but if your virtualizer supports forwarding PCI
express devices (and so does your OS, and so does your CPU), you might
get away better with a separate PCIe-USB3 adapter (make sure the host OS
doesn't claim it) that you just "plug" into the VM's memory space via
VTd. As a blind guess, if you're not using Linux as the host OS, I
wouldn't expect this to work with VirtualBox.
Now, regarding your specific problem: I've heard of this before with
windows Hosts hosting VBox Guests – when the Firmware finishes loading,
the B2x0 disappears from the bus and re-enumerates as "new" device.
Because of how awesome Windows is, it instantly decides that this device
will need a driver, and if it happens to find one, the access privilege
that VBox had to that device is taken away and given to the driver (or
at least that's what I guess is happening).
Try loading the firmware/FPGA from within the host, before you power on
On 03/15/2016 04:43 PM, Marcus D. Leech via USRP-users wrote:
> Something to note is that USB support under VMs (whether VMWare or
> Virtualbox or whatever) is notoriously "spotty". The USB
> state-machine is not fully emulated, and various devices (or, in your
> case, device revisions) can cause that emulation to go "off the rails".
> I've never had good luck with USB support under VMWare, and it's
> always been hit-and-miss.
> There have been improvements to USB reliability made in recent UHD
> releases (since 3.8), and it may be the case that those improvements,
> while actually improving for almost everybody, exercise an oddity in
> the USB emulation within VMs.
> Personally, I don't recommend using SDR hardware under a VM--precisely
> because of both the poor USB state machine emulation, and the
> much-lower performance.
> On 2016-03-15 11:32, David Watt via USRP-users wrote:
>> My system is Ubuntu 14.04.4 LTS, 64-bit, running as a guest under
>> VirtualBox 5.0.16. My device is a B200. I’ve found that for whatever
>> reason 2 recent UHD versions I’ve tried (UHD_003_009.003,
>> UHD_003_010.??? from yesterday’s git master) do not work for me. The
>> symptom is that when running uhd_usrp_probe, after the fw hex file
>> loads, the program fails, and the B200 does not show up under lsusb.
>> After initial plug in, the B200 does show up under lsusb, but after
>> uhd_usrp_probe and the fw load, the B200 is not shown under lsusb.
>> Subsequent uhd_usrp_probe’s all fail with no device type errors.
>> I think the issue is USB FX firmware associated, because after at one
>> point I transitioned from UHD_003_008 to UHD_003_010, and rebooted
>> the VM, and after the VM came up with UHD_003_010, the B200 (with the
>> fw loaded) was visible under lsusb. Then when I ran uhd_usrp_probe it
>> didn’t say no device, it said firmware compatibility rev was 7 and it
>> wanted 8. Then after power cycling it’s visible again, but after
>> UHD_003_010 loaded FX fw, it went to invisible again (to lsusb).
>> I’m OK with UHD_003_008 for now. It is able to connect more or less
>> consistently as USB3 as reported by uhd_usrp_probe.
>> David Watt
>> USRP-users mailing list
>> USRP-users at lists.ettus.com <mailto:USRP-users at lists.ettus.com>
> USRP-users mailing list
> USRP-users at lists.ettus.com
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the USRP-users