[sane-devel] Canon CanoScan LiDE 100
Matt Hirsch
mhirsch at media.mit.edu
Wed Sep 23 00:38:32 UTC 2009
Allan,
Thanks very much for the pointers. I was able to get some logs from the
windows driver and did find the datasheets for the other chips. So as
not to duplicate effort, can you give me an idea of how much you're
working on this? What kind of progress have you made and would you be
willing to share your work so far with me? Even if its very incomplete
it could give me a better idea of where to start.
Best,
Matt
On 09/19/2009 04:05 PM, m. allan noah wrote:
> 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
>>
>>
>
>
>
More information about the sane-devel
mailing list