Hi everybody, I recently bought a Logitech Quickcam Fusion. The comments in the Windows driver seemed to imply that the device complies with the USB Video Class, so I thought I would give it a go and see if I can hack a simple Video Class driver.
After plugging the webcam, oh joy! the ALSA USB Audio driver detected the microphone. Would Logitech start complying with standards ? Anyway, I soon got disillusionned when I read the device descriptors using lsusb. The device class is 0xff (vendor), and there are 3 unknown descriptors. UNRECOGNIZED: 08 0b 00 02 ff 03 00 00 UNRECOGNIZED: 20 41 01 08 82 06 61 63 70 50 ab 49 b8 cc b3 85 5e 8d 22 51 03 01 04 03 19 00 00 00 00 00 00 00 UNRECOGNIZED: 20 41 01 0a 82 06 61 63 70 50 ab 49 b8 cc b3 85 5e 8d 22 52 01 01 04 03 00 40 00 00 00 00 00 00 The first one doesn't worry me. usbutils (and for that matter libusb) are not aware of the IAD (Interface Association Descriptor) which are used by the Video Class compliant devices (among others). The two other ones are more puzzling. I haven't been able to figure out what they are. Do they seem familiar to anybody ? I pasted the beginning of the device descriptors' dump at the end of this e-mail. Even though the device reports a vendor class, the subclass numbers match the Video Control and Video Streaming subclasses, and the alternate settings for interface 1 (not all are shown here) seem to be compatible with a Video Class device. I'll try sending a few Video Class commands later today to see if they are recognized. Has anyone played with the Quickcam Fusion before ? Have you got any success (or failure) that you can report ? Laurent Pinchart ------------------------------ Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 1 bMaxPacketSize0 64 idVendor 0x046d Logitech, Inc. idProduct 0x08c1 bcdDevice 0.05 iManufacturer 0 iProduct 0 iSerial 0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 1361 bNumInterfaces 4 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 MaxPower 500mA UNRECOGNIZED: 08 0b 00 02 ff 03 00 00 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 1 bInterfaceProtocol 0 iInterface 0 UNRECOGNIZED: 20 41 01 08 82 06 61 63 70 50 ab 49 b8 cc b3 85 5e 8d 22 51 03 01 04 03 19 00 00 00 00 00 00 00 UNRECOGNIZED: 20 41 01 0a 82 06 61 63 70 50 ab 49 b8 cc b3 85 5e 8d 22 52 01 01 04 03 00 40 00 00 00 00 00 00 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x87 EP 7 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0010 1x 16 bytes bInterval 8 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 2 bInterfaceProtocol 0 iInterface 0 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 1 bNumEndpoints 1 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 2 bInterfaceProtocol 0 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x00c0 1x 192 bytes bInterval 1 ------------------------------------------------------- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel