Hi all!
Firstly, sorry if this has been addressed earlier - I did have a look
through the archives but being unable to find the search function (is it
there?) I just looked through the subject lines.
I have a Logitech QuickCam 4000 Pro webcam (USB1.1) attached to a Fedora
Core 4 box with a pretty standard 2.6.15 kernel (about the only bit of
oddity is that it's configured for a Transmeta processor). I'm using
version 10.0.11 of the PWC driver, compiled from source with no additional
changes. The computer in question (an OQO 01+) has a single USB2.0 port but
I get similar results with a 'normal' desktop (see below).
I'm having major headaches getting the webcam to play nice when it's
plugged in through a USB2.0 hub ... I've done most of my testing with
Genesys Logic based hubs (several different brands/models but all showing
up as 05e3:0605 in lsusb) although I've also tried one that showed up as an
NEC chip.
I plug the camera into the hub and the hub into the computer (or hub into
computer then camera into hub - same thing happens). In dmesg I get the
following as expected:
==============
usb 1-1.2: new full speed USB device using ehci_hcd and address 106
pwc: Logitech QuickCam 4000 Pro USB webcam detected.
pwc: Registered as /dev/video0.
==============
However, if I run "xawtv -c /dev/video0" (or anything that accesses the
camera) I get something like:
==============
~]# xawtv -c /dev/video0
This is xawtv-3.95, running on Linux/i686 (2.6.15-prep)
Xlib: extension "XVideo" missing on display "192.168.1.105:0.0".
v4l2: open /dev/video0: Broken pipe
v4l2: open /dev/video0: Broken pipe
v4l: open /dev/video0: Broken pipe
no video grabber device available
==============
After this, dmesg has the following:
==============
pwc: Failed to set video mode fps; return code = -32
pwc: Failed to set video mode fps; return code = -32
pwc: Failed to set video mode fps; return code = -32
pwc: Failed to set video mode fps; return code = -32
pwc: Failed to set video mode fps; return code = -32
pwc: Failed to set video mode fps; return code = -32
==============
Now the following combinations work as expected (I get pretty pictures and
no errors in dmesg):
computer -- camera
computer -- USB1.1 hub -- camera
computer -- USB1.1 hub -- USB[2.0|1.1] hub -- camera
But the following combinations don't work (and give the error above):
computer -- USB2.0 hub -- camera
computer -- USB2.0 hub -- USB[2.0|1.1] hub -- camera
This phenomena doesn't seem to care if hubs are powered or unpowered or if
there are other devices on the hubs or not. Curiously, I've got, amongst
others, 3 completely identical Genesys Logic hubs, for some reason one of
them seems stuck in USB1.1 mode (I'm guessing it's faulty, in fact dmesg
tells me to plug it into a high speed hub!) and the camera works on that
hub (it basically behaves like a USB1.1 hub except down the bottom of its
"lsusb -v" entry it says it could operate in USB2.0 mode).
I tried similar tests with a Dell desktop (with USB2.0 ports) with a
similar software configuration, when I plug through a USB2.0 hub I get the
same failure but for reasons I can't quite fathom when I plug the camera
directly into the computer or through USB1.1 hubs, xawtv gives a blank
screen and dmesg says it can't power up the camera with an error "pwc
Failed to power up the camera! (-32)" ...
I notice bouncing around various websites that some people have had
problems with the PCW driver and USB2.0 hubs (actually, Linux in general
seemed to have problems with non-USB2.0 devices and USB2.0 hubs). However,
the impression I got was that this problem was sorta resolved for the
general case around mid last year. Other devices I have, such as a Pegasus
II USB1.1 ethernet dongle, Kvaser USBcanII USB1.0 adapter or Dell USB1.0
keyboard, seem to work happily enough when plugged into the exact same hub
that the Quickcam is having problems with. I've also tried with several
Quickcams from different batches (but all the 4000 Pro model) without
finding any variation.
Is this problem familiar to anyone? Has anyone managed to solve it or can
suggest where to look? I'm tempted to dive into the driver and see what I
can find but if someone else has done it (and either succeeded or failed)
it would be good to know! :-)
Unfortunately using a USB1.1 hub isn't an option because I need full
100Mbps network (the Pegasus II adapter is getting replaced with one that
does USB2.0) and the computer only has one USB port on it so the first hub
needs to be a USB2.0 hub.
Cheers!
- Raymond
P.S. As a side note, if I run "lsusb", I notice that if the camera is
picked up on bus 1, it fails and if it's picked up on bus 2 it succeeds
(this is all the same physical port on the computer). I'm guessing if the
first device plugged in (a hub or an "actual" device) is usb1.1 the
firmware assigns it to bus 2 otherwise it becomes bus 1 ... not sure if
that's a "normal" way of doing things or if it's something OQO have done ...
_______________________________________________
pwc mailing list
http://lists.saillard.org/mailman/listinfo/pwc
|