Hello, I bought an Epson Perfection V100 Photo which works with the epkowa driver (with gt-s600).
I don't find a recent mail on the mailing-list talking about writing a free driver. So I plan to (try to) develop it to remove the licence problem. I never done reverse engineering or wrote driver so the failure is clearly possible... :-( I read the libusb documentation (http://libusb.sourceforge.net/doc/index.html) and just start a very minimal C code to find the scanner. I have started to read other pages on the web too, but I think sane team would have advice about good links too. I found the backend-writing.txt page on sane website. http://www.sane-project.org/lists/sane-mfgs-cvs.html says that the scanner is "supported by the epkowa backend plus non-free interpreter" so I suppose I only need to rewrite the interpreter. The epkowa.desc is under GPL v2+ (found at /usr/share/iscan/epkowa.desc). It seems that the scanner has 1 Configuration, 1 interface with 2 endpoints. - endpoint 0 on address 81h (default control pipe) - endpoint 1 on address 02h (transfer data pipe) (I deduce this from the output of `lsusb -v`; perhaps I'm wrong. The useful output is at the end of this e-mail.) - I subscribed this mailing list. - I use Debian testing on x86 (32bits) Packages used: libusb-dev 2:0.1.12-14 libsane and sane-utils 1.0.20-14+b1 libsane-extra 1.0.20.3 What do you think about I would like to do? Do you have any tips or see problems? Thanks ### lsusb start ### degtyarov:~ # lsusb -v Bus 001 Device 002: ID 04b8:012d Seiko Epson Corp. Perfection V10/V100 (GT-S600/F650) 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 0x04b8 Seiko Epson Corp. idProduct 0x012d Perfection V10/V100 (GT-S600/F650) bcdDevice 1.00 iManufacturer 1 EPSON iProduct 2 EPSON Scanner iSerial 0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 32 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xc0 Self Powered MaxPower 2mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 2 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 255 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 255 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: 0x0001 Self Powered ### lsusb end ### -- St?phane