Document Actions

I've heard some Logitech webcams have compatibility issues with certain USB controllers. What about those?

Up to Table of Contents

A.k.a.: "I can't get my camera to stream." "I receive 'Failed to query UVC control' errors." "Camera controls don't always work."

Some people trying to get their Logitech webcams running on Linux have experienced[1][2] incompatibilities between their device and the USB controllers they were using. The problem is rather complex, but we will try to give an overview here.

Symptoms

The error has many different symptoms that depend on the hardware, the system, and the application being used. They include, in order of decreasing severity:

  • The camera is recognized by the UVC driver but initialization fails.
  • Initialization by the UVC driver succeeds but trying to stream video fails (sporadically or every time).
  • The camera seems to work fine but it doesn't always react to control request (brightness, pan/tilt, etc.).

What all of these cases have in common are errors in the syslog that look something like this:

uvcvideo: Failed to query (1) UVC control 1 (unit 0) : -32

In addition to error -32 (EPIPE) there were also reports of errors -110 (ETIMEDOUT), -71 (EPROTO), and -75 (EOVERFLOW).

Depending on the moment the error occurs the camera may continue to work or it may remain in an undefined state and needs to be unplugged and replugged.

The error only occurs in high-speed USB mode but not in full-speed mode.

Affected cameras

The affected cameras include all Logitech webcams based on the SPCA525 ASIC and therefore most UVC-compliant Logitech webcams that were introduced before 2007. This also includes some models of the first series, which were not strictly UVC-compliant but still work with the Linux UVC driver. You can check the compatibility list to find out which chip is used by which camera.

The latest generation of Logitech cameras is not affected by this problem as they are based on a different chipset, in particular the new QuickCam Pro 9000 and QuickCam Pro for Notebooks models.

Workarounds

There are different workarounds but not all of them work for every system configuration.

Try a different port

For some users it has been reported helpful to connect the camera to a different USB port or a different USB controller or hub. There is no guarantee that this method will work but it's worth a shot as it may resolve or at least reduce the problem for some setups.

Use full-speed mode

The problem only occurs in USB high-speed mode, so by forcing your camera into full-speed mode you can avoid the problem mentioned above. The easiest way to do this is to unload the USB 2.0 EHCI module:
rmmod ehci-hcd
Unfortunately, some higher video resolutions and frame rates become unavailable when the device is run in full-speed mode.

Use the driver patches

There exist different patches for the Linux UVC driver that try to work around the problem in different ways:
  • The "reset patch" which resets the camera when it gets stuck. This should mostly work for people who experience problems during enumeration of the device.
  • Another patch that first retries failed control requests and resets the device if necessary. (Previous version)
The patches are not officially maintained and therefore don't cleanly apply to the latest version of the UVC driver. They may therefore need some tweaking.
by Martin Rubli last modified 2008-01-27 22:25
Powered by Plone CMS.