[sane-devel] hp2300c

Frank Zago fzago@austin.rr.com
Thu, 26 Feb 2004 13:11:47 -0600


> 
> So can sane-find-scanner really talkt to the scanner after that
> change? Can I see the output of sane-find-scanner -v -v after the
> change, please?
> 
> Bye,
>   Henning
> 

Yes, it can. Looking at the usb traces, it looks like it is very close, if not 
identical, to a gl646. The registers used are the same, and the method to access 
them is very similar to that of the gl640.

It seems there is at least 3 hp usb scanners (3670, 3690, 2400) that have a 
close chip. I'm only sure about the 3670 since that's the only one I found usb 
traces.

Is it possible you set up a cvs tree for backends development (not specific to a 
particular backend) and a mailing list for people interrested in the GL 
scanner-on-chip dev? I don't want to use SF, and it would be better on alioth 
anyway.
If you don't mind, I'd also like to see what code you have written for the gl646.

Frank.

====

searching for SCSI scanners:
checking /dev/scanner... failed to open (Invalid argument)
checking /dev/sg0... failed to open (Invalid argument)
checking /dev/sg1... failed to open (Invalid argument)
checking /dev/sg2... failed to open (Invalid argument)
checking /dev/sg3... failed to open (Invalid argument)
checking /dev/sg4... failed to open (Invalid argument)
checking /dev/sg5... failed to open (Invalid argument)
checking /dev/sg6... failed to open (Invalid argument)
checking /dev/sg7... failed to open (Invalid argument)
checking /dev/sg8... failed to open (Invalid argument)
checking /dev/sg9... failed to open (Invalid argument)
checking /dev/sga... failed to open (Invalid argument)
checking /dev/sgb... failed to open (Invalid argument)
checking /dev/sgc... failed to open (Invalid argument)
checking /dev/sgd... failed to open (Invalid argument)
checking /dev/sge... failed to open (Invalid argument)
checking /dev/sgf... failed to open (Invalid argument)
checking /dev/sgg... failed to open (Invalid argument)
checking /dev/sgh... failed to open (Invalid argument)
checking /dev/sgi... failed to open (Invalid argument)
checking /dev/sgj... failed to open (Invalid argument)
checking /dev/sgk... failed to open (Invalid argument)
checking /dev/sgl... failed to open (Invalid argument)
checking /dev/sgm... failed to open (Invalid argument)
checking /dev/sgn... failed to open (Invalid argument)
checking /dev/sgo... failed to open (Invalid argument)
checking /dev/sgp... failed to open (Invalid argument)
checking /dev/sgq... failed to open (Invalid argument)
checking /dev/sgr... failed to open (Invalid argument)
checking /dev/sgs... failed to open (Invalid argument)
checking /dev/sgt... failed to open (Invalid argument)
checking /dev/sgu... failed to open (Invalid argument)
checking /dev/sgv... failed to open (Invalid argument)
checking /dev/sgw... failed to open (Invalid argument)
checking /dev/sgx... failed to open (Invalid argument)
checking /dev/sgy... failed to open (Invalid argument)
checking /dev/sgz... failed to open (Invalid argument)
   # No SCSI scanners found. If you expected something different, make sure that
   # you have loaded a SCSI driver for your SCSI adapter.
   # Also you need support for SCSI Generic (sg) in your operating system.
   # If using Linux, try "modprobe sg".

searching for USB scanners:
checking /dev/usb/scanner... failed to open (Invalid argument)
checking /dev/usb/scanner0... failed to open (Invalid argument)
checking /dev/usb/scanner1... failed to open (Invalid argument)
checking /dev/usb/scanner2... failed to open (Invalid argument)
checking /dev/usb/scanner3... failed to open (Invalid argument)
checking /dev/usb/scanner4... failed to open (Invalid argument)
checking /dev/usb/scanner5... failed to open (Invalid argument)
checking /dev/usb/scanner5... failed to open (Invalid argument)
checking /dev/usb/scanner7... failed to open (Invalid argument)
checking /dev/usb/scanner8... failed to open (Invalid argument)
checking /dev/usb/scanner9... failed to open (Invalid argument)
checking /dev/usb/scanner10... failed to open (Invalid argument)
checking /dev/usb/scanner11... failed to open (Invalid argument)
checking /dev/usb/scanner12... failed to open (Invalid argument)
checking /dev/usb/scanner13... failed to open (Invalid argument)
checking /dev/usb/scanner14... failed to open (Invalid argument)
checking /dev/usb/scanner15... failed to open (Invalid argument)
checking /dev/usbscanner... failed to open (Invalid argument)
checking /dev/usbscanner0... failed to open (Invalid argument)
checking /dev/usbscanner1... failed to open (Invalid argument)
checking /dev/usbscanner2... failed to open (Invalid argument)
checking /dev/usbscanner3... failed to open (Invalid argument)
checking /dev/usbscanner4... failed to open (Invalid argument)
checking /dev/usbscanner5... failed to open (Invalid argument)
checking /dev/usbscanner6... failed to open (Invalid argument)
checking /dev/usbscanner7... failed to open (Invalid argument)
checking /dev/usbscanner8... failed to open (Invalid argument)
checking /dev/usbscanner9... failed to open (Invalid argument)
checking /dev/usbscanner10... failed to open (Invalid argument)
checking /dev/usbscanner11... failed to open (Invalid argument)
checking /dev/usbscanner12... failed to open (Invalid argument)
checking /dev/usbscanner13... failed to open (Invalid argument)
checking /dev/usbscanner14... failed to open (Invalid argument)
checking /dev/usbscanner15... failed to open (Invalid argument)
trying libusb:

<device descriptor of 0x0000/0x0000 at 002:001 (USB UHCI Root Hub)>
bLength               18
bDescriptorType       1
bcdUSB                1.00
bDeviceClass          9
bDeviceSubClass       0
bDeviceProtocol       0
bMaxPacketSize0       8
idVendor              0x0000
idProduct             0x0000
bcdDevice             0.00
iManufacturer         0 ()
iProduct              2 (USB UHCI Root Hub)
iSerialNumber         1 (dc00)
bNumConfigurations    1
  <configuration 0>
  bLength              9
  bDescriptorType      2
  wTotalLength         25
  bNumInterfaces       1
  bConfigurationValue  1
  iConfiguration       0 ()
  bmAttributes         64 (Self-powered)
  MaxPower             0 mA
   <interface 0>
    <altsetting 0>
    bLength            9
    bDescriptorType    4
    bInterfaceNumber   0
    bAlternateSetting  0
    bNumEndpoints      1
    bInterfaceClass    9
    bInterfaceSubClass 0
    bInterfaceProtocol 0
    iInterface         0 ()
     <endpoint 0>
     bLength           7
     bDescriptorType   5
     bEndpointAddress  0x81 (in 0x01)
     bmAttributes      3 (interrupt)
     wMaxPacketSize    8
     bInterval         255 ms
     bRefresh          0
     bSynchAddress     0

<device descriptor of 0x03f0/0x0901 at 002:002 (Hewlett-Packard hp scanjet scanner)>
bLength               18
bDescriptorType       1
bcdUSB                1.10
bDeviceClass          255
bDeviceSubClass       255
bDeviceProtocol       255
bMaxPacketSize0       8
idVendor              0x03F0
idProduct             0x0901
bcdDevice             1.01
iManufacturer         1 (Hewlett-Packard)
iProduct              2 (hp scanjet scanner)
iSerialNumber         12 (CN28GS40FR)
bNumConfigurations    1
  <configuration 0>
  bLength              9
  bDescriptorType      2
  wTotalLength         39
  bNumInterfaces       1
  bConfigurationValue  1
  iConfiguration       0 ()
  bmAttributes         192 (Self-powered)
  MaxPower             48 mA
   <interface 0>
    <altsetting 0>
    bLength            9
    bDescriptorType    4
    bInterfaceNumber   0
    bAlternateSetting  0
    bNumEndpoints      3
    bInterfaceClass    255
    bInterfaceSubClass 255
    bInterfaceProtocol 255
    iInterface         0 ()
     <endpoint 0>
     bLength           7
     bDescriptorType   5
     bEndpointAddress  0x81 (in 0x01)
     bmAttributes      2 (bulk)
     wMaxPacketSize    64
     bInterval         0 ms
     bRefresh          0
     bSynchAddress     0
     <endpoint 1>
     bLength           7
     bDescriptorType   5
     bEndpointAddress  0x02 (out 0x02)
     bmAttributes      2 (bulk)
     wMaxPacketSize    64
     bInterval         0 ms
     bRefresh          0
     bSynchAddress     0
     <endpoint 2>
     bLength           7
     bDescriptorType   5
     bEndpointAddress  0x83 (in 0x03)
     bmAttributes      3 (interrupt)
     wMaxPacketSize    1
     bInterval         8 ms
     bRefresh          0
     bSynchAddress     0

<trying to find out which USB chip is used>
     checking for GT-6801 ...
     this is not a GT-6801 (bNumEndpoints = 3)
     checking for GT-6816 ...
     this is not a GT-6816 (bDeviceClass = 255, bInterfaceClass = 255)
     checking for MA-1017 ...
     this is not a MA-1017 (bDeviceClass = 255, bInterfaceClass = 255)
     checking for MA-1015 ...
     this is not a MA-1015 (bcdUSB = 0x110)
     checking for MA-1509 ...
     this is not a MA-1509 (bEndpointAddress = 0x81, bmAttributes = 0x2, 
wMaxPacketSize = 0x40, bInterval = 0x0)
     checking for LM983[1,2,3] ...
     this is not a LM983x (bDeviceSubClass = 0xff)
     checking for GL646 ...
<This USB chip looks like a GL646>

found USB scanner (vendor=0x03f0 [Hewlett-Packard], product=0x0901 [hp scanjet 
scanner], chip=GL646) at libusb:002:002

<device descriptor of 0x0000/0x0000 at 001:001 (USB UHCI Root Hub)>
bLength               18
bDescriptorType       1
bcdUSB                1.00
bDeviceClass          9
bDeviceSubClass       0
bDeviceProtocol       0
bMaxPacketSize0       8
idVendor              0x0000
idProduct             0x0000
bcdDevice             0.00
iManufacturer         0 ()
iProduct              2 (USB UHCI Root Hub)
iSerialNumber         1 (d800)
bNumConfigurations    1
  <configuration 0>
  bLength              9
  bDescriptorType      2
  wTotalLength         25
  bNumInterfaces       1
  bConfigurationValue  1
  iConfiguration       0 ()
  bmAttributes         64 (Self-powered)
  MaxPower             0 mA
   <interface 0>
    <altsetting 0>
    bLength            9
    bDescriptorType    4
    bInterfaceNumber   0
    bAlternateSetting  0
    bNumEndpoints      1
    bInterfaceClass    9
    bInterfaceSubClass 0
    bInterfaceProtocol 0
    iInterface         0 ()
     <endpoint 0>
     bLength           7
     bDescriptorType   5
     bEndpointAddress  0x81 (in 0x01)
     bmAttributes      3 (interrupt)
     wMaxPacketSize    8
     bInterval         255 ms
     bRefresh          0
     bSynchAddress     0
   # Your USB scanner was (probably) detected. It may or may not be supported by
   # SANE. Try scanimage -L and read the backend's manpage.

   # Scanners connected to the parallel port or other proprietary ports can't be
   # detected by this program.
done