Ubuntu – QEMU/KVM/Virt-Manager: Passthrough of USB Webcam to Windows 7 Enterprise creates “NEC USB HUB”

qemuusbvirt-managerwebcamwindows 7

I am trying to passthrough my USB Webcam into my Windows 7 Enterprise x86-64 QEMU/KVM guest, which is managed by virt-manager.

First I lookup the bus/device ID:

$ lsusb
Bus 002 Device 008: ID 046d:0825 Logitech, Inc. Webcam C270
[...]

Then I open the running guest in virt-manager and click Hardware Details > Add Hardware > USB Host Device and select the correct device ID. Here the first oddity shows up: virt-manager shows no name for the device, only the ID.

Immediately after I click "Finish", Windows 7 detects a new device being plugged in and installs a driver for it. Sadly it detects it as "NEC USB HUB", instead of as a webcam.

My question is:

  • How do I correctly passthrough a device from Linux to Windows, so that it shows up as a webcam there?

The host OS is Ubuntu 14.04 x86-64 and the guest is Windows 7 Enterprise x86-64, both having installed all updates.

Ubuntu runs Linux 3.13.0-43-generic, virt-manager 0.9.5-1ubuntu3 and qemu 2.0.0+dfsg-2ubuntu1.9.

During the installation of Windows, I installed the Windows virtio drivers version 0.1-94, and after the installation of Windows added the Windows spice-guest-tools version 0.74. Another oddity that the guest shows is that it is unable to shutdown after installing the spice-guest-tools.

This same question was already asked on Stack Overflow, which seems to be the wrong place for this type of questions.

Best Answer

Check this link: https://bugzilla.redhat.com/show_bug.cgi?id=1135488 , quote from there:

There are too many usb devices. Four spice usb redirection slots. One usb tablet. Leaving only one usb port free, where qemu automagically plugs in a usb hub to avoid running out of usb ports. This is where the "nec usb hub" comes from. And as the emulated usb hub supports usb 1.1 only the webcam ends up on a slow port. This is where the speed mismatch comes from, which is root cause why the webcam doesn't show up in the guest.

The solution could be: Delete a couple of the USB redirector devices,