Knowledge Base

Search the Knowledge Base: |
Search the Knowledge Base: |
Problems Using Some USB Devices in a Virtual Machine
Details
- I cannot use a specific USB device in my virtual machine.
- The guest operating system locks up, I see an error message, or some other failure occurs when I plug in the device. For example:
Inappropriate ioctl for device
- Other USB devices work correctly in the virtual machine.
Solution
The following sections describe various problems that can occur when you use USB devices with a virtual machine, and suggest ways to avoid or work around those problems. The last section in this article explains how to file a support request (SR) with VMware.
Note: USB devices do not work in a Solaris virtual machine on VMware Server 1.0.
USB 2.0 Devices
-
Plug the device into a USB 1.1 host port, or plug the device into a USB 1.1 hub and into a USB 2.0 host port. This action forces the transactions between the host and device to be USB 1.1. Before using this workaround with any USB 2.0 device, take a snapshot of the virtual machine to preserve the current state of the guest operating system.
-
Disable USB 2.0 support for the virtual machine. This may generate a warning message about the USB device causing undefined behavior, and may also result in new drivers being installed within the guest operating system.
VMware Fusion: Click Settings > USB > Deselect Enable USB 2.0 Support
VMware Workstation: Click VM > Settings > USB Controller > Deselect Enable high-speed support for USB 2.0 devices.
Note: Also file an SR for any devices that exhibit this problem, even if the workaround fixes the problem.
Syncing Devices
Syncing devices (such as PDAs or smart phones) must often connect quickly to the syncing software; thus, they require USB autoconnect. Before connecting the device or initiating a sync command from the device, make sure that the virtual machine has focus. For Linux hosts, disable hotplug and unload any kernel modules to improve the results. For Windows hosts, the first time the device is autoconnected, the VMware USB driver must load. Leave the syncing device connected while you load the driver, then disconnect and reconnect the device a second time for a quick connection into the virtual machine.
Set Configuration
usb.generic.skipsetconfig = "true"
This problem has been observed in the following devices. Unfortunately, there is no way to predict which other devices need this option to operate correctly.
- Palm Tungsten|E when syncing on a Linux host to a Windows guest
-
RIM 7290 and 7520 Blackberry when syncing on a Linux host to a Windows guest
-
Zire72 on a Debian host with a Windows XP SP2 guest
High-Bandwidth USB Devices
Frame Synchronization
uhci.syncWriteback = "TRUE"
The following device needs frame synchronization enabled to work properly:
- Dell 1450 Wireless USB adapter
Note: When you enable frame synchronization by adding this entry, a certain level of optimization is turned off, which affects the performance of the virtualized USB controller. Generally the effect on performance is not noticeable when you use a single device, but is somewhat noticeable when you use two devices, and is very noticeable when the device sends many small pieces of data.
Guest Cannot See USB Device on RHEL4-x64 Host
This problem was identified on VMware Server, but might affect other VMware products.
The Existing driver (usbhid) could not be successfully disconnected. (operation not permitted) Unload the driver manually then try again <OK>.
You cannot unload the driver manually from the host, because it does not exist as a module—it is compiled directly into the RHEL4-x64 kernel. Normally, this situation is not a problem for VMware software, but the kernel does not support the required ioctl (control device) function to allow VMware to disconnect the device from the usbhid driver.
As a workaround, you can recompile the host's kernel with usbhid as a module, then manage its removal with rmmod. Because the usbhid driver is necessary to allow the host and guest operating systems to interact with a USB mouse and keyboard, however, removing the module from the recompiled kernel might not be appropriate for your system. You might need to use an upgraded kernel or a different operating system instead.
Device Fails to Connect to Virtual Machine in Windows Host
When you connect a device to a virtual machine for the first time, the VMware USB driver must be successfully loaded in the Windows host. Do not interrupt the driver loading process. For example,while the VMware USB driver is being loaded for a device, you should not unplug or power-cycle the device, or click again on the device item in the USB-removable device UI menu trying to establish connection. Allow time for the device to reset and establish connection. The device fails to connect to the virtual machine if the VMware USB driver is not properly loaded.
Filing a Support Request (SR) with VMware
We are interested in hearing if you have problems using a USB device in your virtual machine. Take the following steps:
-
Read the VMware product documentation on the VMware Web site for information on various types of USB devices and their expected behaviors in a virtual machine.
Workstation
-
For Workstation 6.x, see the sections about using USB devices in http://www.vmware.com/pdf/ws6_manual.pdf
-
For Workstation 5.5, see www.vmware.com/support/ws55/doc/ws_devices_usb.html
- For Workstation 5.0, see www.vmware.com/support/ws5/doc/ws_devices_usb.html
- For Workstation 4.x, see www.vmware.com/support/ws45/doc/devices_usb_ws.html#1040892
- For Workstation 3.x, see www.vmware.com/support/ws3/doc/ws32_devices5.html
GSX Server
-
- For GSX Server 3.x, see www.vmware.com/support/gsx3/doc/devices_usb_gsx.html#1040892
- For GSX Server 2.5.x, see www.vmware.com/support/gsx25/doc/devices_usb_gsx.html
-
Be sure your USB device works when you plug it in and use it on the host system. If the USB device is not recognized on the host or does not work properly there, it might not work in a virtual machine, either. If the device works properly on the host but not in a virtual machine, file a support request as described in the following steps.
-
If you are using Workstation 5.5 or a more recent product, you can enable more detailed USB logging (in addition to the log and core files normally produced) to provide VMware support staff with more data to diagnose the problem. Shut down or turn off the virtual machine, and, using a text editor, add the following line at the end of the virtual machine’s configuration (.vmx) file:
usb.analyzer.enable = "TRUE"Reproduce the problem and include the log file when you file an SR. After you are done, remember to shut off the virtual machine and remove the line from the configuration file. If you don't, the additional logging impairs the performance of the virtual machine.
-
File a support request on the VMware Web site. Be sure to include the following:
- The log file from a session in which the USB device fails, including the additional log files produced with detailed USB logging (see step 3, above).
- A complete description of how the device failed to work in the virtual machine.
- The exact make and model of the USB device you are trying to use.
Keywords
Feedback
- KB Article: 774
- Updated: Oct 21, 2009
- Products:
VMware ACE
VMware Fusion
VMware GSX Server
VMware Server
VMware Workstation - Product Versions:
VMware ACE 2.0.x
VMware GSX Server 3.x (Linux)
VMware GSX Server 3.x (Windows)
VMware Server 1.0.x (Linux)
VMware Server 1.0.x (Windows)
VMware Workstation 3.x (Linux)
VMware Workstation 3.x (Windows)
VMware Workstation 4.x (Linux)
VMware Workstation 4.x (Windows)
VMware Workstation 5.x (Linux)
VMware Workstation 5.x (Windows)
VMware Workstation 6.x (Linux)
VMware Workstation 6.x (Windows)

