-
Notifications
You must be signed in to change notification settings - Fork 87
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unable to enumerate product, serial, and manufacturer when connected to VMWare VM #40
Comments
There is no any problem with USB 3.0 + VirtualBox (5.1.10) + Xubuntu 16.04.01 LTS Example streaming with VirtualBox (5.1.10) + Xubuntu 16.04.01 LTS + CoreI7-3630QM @2.4GHz 6MSPS results: 2.5MSPS results: For information the streaming on those sample rate is perfect on a native Linux or native Windows ... If you have any issue please add more information on setup hardware/software and exact error with command used ... |
Thanks for responding Ben. It is weird. HackRF and RTL-SDR pass through to the VM fine. Here's a little more info.... VM is running on VMWare Here's some debug/version info: I can run the windows build of airspy_info from the host OS. Here's the info back: Found AirSpy board 1 I know it seems weird but I have an app I'm trying to use that is using a gnuradio with a TCP sink. Works fine in linux but running gnuradio on Windows immediately crashes. The laptop I have Linux on doesn't have the horsepower to run gnuradio but the Windows box does. So I'm trying to bridge the gap somehow. The answer may be get a new laptop to run linux on but I figured I'd see if I can get the airspy working in a VM first. |
One more piece of info... running lsusb it shows up in the list, but an lsusb -v shows errors in those 3 fields... again only in the VM. |
|
I do have it blacklisted. The OS installed on the hardware on this box is Windows 7. It's a Dell Precision M4700, i7 CPU, intel chipset I believe for the controllers. I don't have VirtualBox installed. I'd have to build out a fresh VM with it. I do wonder if the VMWare USB throughput may work okay with the SDRs? I've done some other gnuradio grcs in the VM and sound, etc. seems to work okay. Just some benchmarks, here was the VM passing through the hackrf, so the throughput looks good (which makes me hopeful the VM performance wouldn't be terrible if the airspy was visible. What do you think? |
Quick update... decided to test if it was in ANY VM of just the Kali VM so I tested it in a Windows 10 VM (still a VMWare VM) and it was detected fine. So it seems like the problem is something related to the latest Kali Rolling linux in a VM? May be reproducible that way. |
I'm pretty sure it is related to blacklisting the airspy kernel driver which is not blacklisted correctly |
Okay, I ran a few more tests. Downloaded the latest gnuradio liveCD and booted the VM with the CD. airspy_info did the same thing. I found a VMWare KB article talking about issues (https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=774) and some "USB Quirk" workarounds for some devices. Of course it was the last one I tried. I'm trying to redownload the latest kali VM image from their site to confirm it's in there too but it's reproducible. VMWare Player installation. Latest Kali Linux VM. Followed airspy troubleshooting for blacklisting (I did also confirm lsmod | grep airspy and the blacklist did work, it's not loaded). Downloaded and built latest github code. If you add this line to the VMWare config file airspy_info can now find the device. Wanna run some tests with gnuradio to make sure it works there too. But same functionality with the gnuradio liveCD. usb.quirks.device0 = "0x1d50:0x60a1 skip-setconfig" So something about whatever setconfig does in a VM that's hanging the device. You'll know right away after connecting the USB device to the VM. If you run "lsusb -v" and get this in the results, it's the error: Once I added the quirk line, those lines came back as: and airspy_info worked. Hope that helps reproduce it and track it down! |
Just confirmed, stock Kali VM image download with the same scenario produces the same results. Without the line, doesn't work, with the line does. One other interesting thing is that once it does error, returning it to the host OS produces a USB error, as if whatever that setconfig is doing is causing an issue on the device. Disconnecting and reconnecting the device fixes that. |
Hi Ben, Were you able to reproduce the issue as well? I also had one other question... the airspy web site says "up to 80 Msps with custom firmware". How's performance above 10 Msps and where does it drop off? If it was kept to have that, say 20 Msps and 40 Msps as options is it relatively stable? Is it just a matter of adding the sample rates as options in airspy.c in this code (changing the count and adding the additional entries)?
|
About sampling rate it is not possible to use airspy with USB 2.0 HS at more than 20MSPS because of USB 2.0 HS bandwidth (limited to less than 400Mbit/s even if in theory it is 480Mbit/s) as it requires 40MB/s so 320Mbit/s at 20MSPS (as each sample are stored as 16bits data per default or 12bits when using packing) |
Makes complete sense. Thanks! Has there been any talk about moving it to a USB 3.0 connection to push the throughput up? Or are the ADC's the limiting factor? |
To add USB 3.0 is an other story and clearly not the same type of product ... |
I'm a bit late to this discussion, but I wanted to confirm that adding the line "usb.quirks.device0 = "0x1d50:0x60a1 skip-setconfig" to my Ubuntu 14.04.5 LTS virtual machine configuration file got my airspy to work under VMWare Workstation 9 as well. It wouldn't work without it, works fine with it. Appreciate your due diligence ghostop14! |
Yes you should try with usb.quirks.device0 = "0x1d50:0x60a1 skip-setconfig" |
Thanks to confirm if that solve your issue |
Adding the line usb.quirks.device0 = "0x1d50:0x60a1 skip-setconfig" to my config fixed the problem with the VM. Thanks!! |
When connecting the airspy to a virtual machine, the OS cannot enumerate the manufacturer, product, and serial # preventing device from being recognized. I've tested the hackrf on hardware with Windows, on a kali laptop and it works fine, however connecting it to a kali vm (same versions as the hardware version), those parameters come up with an error preventing the OS from recognizing it. It is recognized in an lsusb and lsb -v.
I know folks are going to go on about not running these in VMs but the mix of hardware and OS's I have (the kali laptop doesn't have the horsepower for gnuradio but the Windows laptop is very capable). I've run the hackrf and rtl dongles plugged into a virtual USB 3.0 VM interface and it works fine.
Any help would be appreciated!
The text was updated successfully, but these errors were encountered: