[sane-devel] Canon CanoScan LiDE 100
m. allan noah
kitno455 at gmail.com
Sat Sep 19 20:05:50 UTC 2009
I have started some preliminary work on this, but I have not done
enough to be worth publishing. You can find datasheets for the GL848
(and the 846 IIRC), but not the 847, which seems to be a canon
specific model with integrated AFE?
You can get some sniff logs of windows driver in action, and attempt
to decode them with pierre's tools:
http://pirsoft-dsl-dropzone.de/
but the 847 uses many more registers than the 841, so you will have to
do some forensics.
allan
On Sat, Sep 19, 2009 at 3:26 PM, Matt Hirsch <mhirsch at media.mit.edu> wrote:
> I have a Canon CanoScan LiDE 100(b) scanner for which I'm interested in
> helping develop sane support. I see there was a previous email about this
> here:
>
> http://lists.alioth.debian.org/pipermail/sane-devel/2008-November/023133.html
>
> I can confirm lsusb -vv is the same on my scanner (see below) and the output
> from sane-find-scanner -v -v is listed below.
>
> I've opened the scanner up, and the chip is actually a GL847 - picture of
> the whole board here:
>
> http://web.media.mit.edu/~mhirsch/canon_lide_100.jpg
>
> What's a productive next step? Would the gensys backend be expected to
> support this? Any ideas were to find a datasheet for this chip?
>
> Thanks,
> Matt
>
> =========
>
> #lsusb -vv
> Bus 001 Device 026: ID 04a9:1904 Canon, Inc.
> Device Descriptor:
> bLength 18
> bDescriptorType 1
> bcdUSB 2.00
> bDeviceClass 255 Vendor Specific Class
> bDeviceSubClass 255 Vendor Specific Subclass
> bDeviceProtocol 255 Vendor Specific Protocol
> bMaxPacketSize0 64
> idVendor 0x04a9 Canon, Inc.
> idProduct 0x1904
> bcdDevice 6.03
> iManufacturer 1 Canon
> iProduct 2 CanoScan
> iSerial 0
> bNumConfigurations 1
> Configuration Descriptor:
> bLength 9
> bDescriptorType 2
> wTotalLength 39
> bNumInterfaces 1
> bConfigurationValue 1
> iConfiguration 0
> bmAttributes 0xa0
> (Bus Powered)
> Remote Wakeup
> MaxPower 500mA
> Interface Descriptor:
> bLength 9
> bDescriptorType 4
> bInterfaceNumber 0
> bAlternateSetting 0
> bNumEndpoints 3
> bInterfaceClass 255 Vendor Specific Class
> bInterfaceSubClass 255 Vendor Specific Subclass
> bInterfaceProtocol 255 Vendor Specific Protocol
> iInterface 0
> Endpoint Descriptor:
> bLength 7
> bDescriptorType 5
> bEndpointAddress 0x81 EP 1 IN
> bmAttributes 2
> Transfer Type Bulk
> Synch Type None
> Usage Type Data
> wMaxPacketSize 0x0200 1x 512 bytes
> bInterval 0
> Endpoint Descriptor:
> bLength 7
> bDescriptorType 5
> bEndpointAddress 0x02 EP 2 OUT
> bmAttributes 2
> Transfer Type Bulk
> Synch Type None
> Usage Type Data
> wMaxPacketSize 0x0200 1x 512 bytes
> bInterval 0
> Endpoint Descriptor:
> bLength 7
> bDescriptorType 5
> bEndpointAddress 0x83 EP 3 IN
> bmAttributes 3
> Transfer Type Interrupt
> Synch Type None
> Usage Type Data
> wMaxPacketSize 0x0001 1x 1 bytes
> bInterval 8
> Device Qualifier (for other device speed):
> bLength 10
> bDescriptorType 6
> bcdUSB 2.00
> bDeviceClass 255 Vendor Specific Class
> bDeviceSubClass 255 Vendor Specific Subclass
> bDeviceProtocol 255 Vendor Specific Protocol
> bMaxPacketSize0 64
> bNumConfigurations 1
> Device Status: 0x0000
> (Bus Powered)
>
> ===============
> /#sane-find-scanner -v -v/
>
> <device descriptor of 0x04a9/0x1904 at 001:037 (Canon CanoScan)>
> bLength 18
> bDescriptorType 1
> bcdUSB 2.00
> bDeviceClass 255
> bDeviceSubClass 255
> bDeviceProtocol 255
> bMaxPacketSize0 64
> idVendor 0x04A9
> idProduct 0x1904
> bcdDevice 6.03
> iManufacturer 1 (Canon)
> iProduct 2 (CanoScan)
> iSerialNumber 0 ()
> bNumConfigurations 1
> <configuration 0>
> bLength 9
> bDescriptorType 2
> wTotalLength 39
> bNumInterfaces 1
> bConfigurationValue 1
> iConfiguration 0 ()
> bmAttributes 160 (Remote Wakeup)
> MaxPower 500 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 512
> bInterval 0 ms
> bRefresh 0
> bSynchAddress 0
> <endpoint 1>
> bLength 7
> bDescriptorType 5
> bEndpointAddress 0x02 (out 0x02)
> bmAttributes 2 (bulk)
> wMaxPacketSize 512
> 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 (bcdUSB = 0x200)
> checking for GT-6816 ...
> this is not a GT-6816 (bDeviceClass = 255, bInterfaceClass = 255)
> checking for GT-8911 ...
> this is not a GT-8911 (check 1, 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 = 0x200)
> checking for MA-1509 ...
> this is not a MA-1509 (bcdUSB = 0x200)
> checking for LM983[1,2,3] ...
> this is not a LM983x (bcdUSB = 0x200)
> checking for GL646 ...
> this is not a GL646 (bDeviceClass = 255, bInterfaceClass = 255)
> checking for GL646_HP ...
> this is not a GL646_HP (bcdUSB = 0x200)
> checking for GL660+GL646 ...
> this is not a GL660+GL646 (bDeviceClass = 255, bInterfaceClass = 255)
> checking for GL84x ...
> <This USB chip looks like a GL843 (result from sane-backends 1.0.20)>
>
> found USB scanner (vendor=0x04a9 [Canon], product=0x1904 [CanoScan],
> chip=GL843) at libusb:001:037
>
>
> --
> sane-devel mailing list: sane-devel at lists.alioth.debian.org
> http://lists.alioth.debian.org/mailman/listinfo/sane-devel
> Unsubscribe: Send mail with subject "unsubscribe your_password"
> to sane-devel-request at lists.alioth.debian.org
>
--
"The truth is an offense, but not a sin"
More information about the sane-devel
mailing list