[sane-devel] Libusb support for sane-find-scanner and other changes

Bertrik Sikken bertrik@zonnet.nl
Mon, 15 Jul 2002 00:41:46 +0200


This is a multi-part message in MIME format.
--------------040801070401000600060901
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Henning Meier-Geinitz wrote:
> I have just committed an updated sane-find-scanner.c. The main change
> is that it also uses libusb (if available) to find scanners, not only
> the kernel scanner drivers. As there is no "scanner" class,
> sane-find-scanner can only guess about the type of USB device that was
> found. It doesn't print hubs and HIDs, but other than that it is
> rather dumb. All my scanners are detected, however, I don't have that
> much USB scanners.
> 
> Plese test, if your USB scanner is detetced as libusb device. This
> only works if libusb is installed, obviously :-)
> 
> If it isn't, please post the output of sane-find-scanner -v.

It didn't detect my scanner with libusb, a HP3300c.
I'm using the CVS version of sane-backends of about an hour ago,
running as root and the 'scanner' kernel module was unloaded.

After adding some debug code, I found that both my root hub and
scanner were detected, but my HP3300c was not recognised by the
heuristic as a possibly supported scanner.

Output of lsusb is attached.

Kind regards,
Bertrik

--------------040801070401000600060901
Content-Type: text/plain;
 name="lsusb.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="lsusb.txt"


Bus 001 Device 001: ID 0000:0000  
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0000 
  idProduct          0x0000 
  bcdDevice            0.00
  iManufacturer           0 
  iProduct                2 USB UHCI-alt Root Hub
  iSerial                 1 e000
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x40
      Self Powered
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               none
        wMaxPacketSize          8
        bInterval             255
  Language IDs: (length=4)
     0000 (null)((null))

Bus 001 Device 002: ID 03f0:0205 Hewlett-Packard ScanJet 3300c
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.00
  bDeviceClass            0 Interface
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x03f0 Hewlett-Packard
  idProduct          0x0205 ScanJet 3300c
  bcdDevice            0.00
  iManufacturer           2 Hewlett-Packard
  iProduct                4 HP ScanJet 3300C
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           39
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x40
      Self Powered
    MaxPower               48mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass        16 Data
      bInterfaceSubClass      1 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize         64
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize         64
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               none
        wMaxPacketSize          1
        bInterval               8
  Language IDs: (length=4)
     0409 English(US)

--------------040801070401000600060901--