[sane-devel] backend for Plustek PL-812 // anyboady working on this - who can get me on speed

m. allan noah kitno455 at gmail.com
Sat Jan 5 18:56:47 UTC 2008

On 1/5/08, Marco Freudenberger <Marco.Freudenberger at gmx.de> wrote:
> Hi list ....
> I'm urgently looking for a backend driver for a Plustek PL 812 (USB /
> ADF + Flatbed) scanner. Looks like there's (bu-huuuu) currently no
> backend that supports it.


> But it would be great if somebody could help me alittle to bring me on
> speed making the first baby steps. I plan to use a USB sniffer
> (hardware) on the PL-812 on Windows to try to reverse engineer the
> protocol. I don't think this will be the worst part. But actually, I
> don't know where to start with developing and have a few questions to
> the more experienced guys out there:
> 1) the backend-writing doc
> (http://www.sane-project.org/backend-writing.txt) suggest to start with
> a standalone test programm. Is there some kind of a framework or
> existing test programm that can be modified for starting ?

if you use benoit's usbsnoop instead of a hardware sniffer, there is a
program (usbsnoop2libusb) which will turn that into a c prog that you
can hack on. it cannot interpret the meaning of the packets, but it
can be a good place to start. there are also programs in the usbsnoop
dir of the sane experimental tree, which can clean up logs from
usbsnoop as well. i am fond of spike4.pl myself :)

> 2) the same document suggest (sounds like a good plan!) to extend
> existing backends whenever possible or use existing backends as a
> starting point at least. Any idea which one could be a good starting
> point for the PL-812 ?

open the scanner and figure out what chips are in it. it may already
be supported by an existing backend, just needs some tweaks to know
about that model.

> 3) Is there any further documentation out there to get me on speed ? Or
> books on that subject-matter (also the relevant parts of Unix / USB
> programming that might be needed) ?

google for 'usb in a nutshell', and the usb 1.1 specs. the libusb docs
are almost useless.

> 4) What is an ususal ammount of time one would plan for developing a
> backend for a certain scanner ?

from a couple hours if it is an already supported chip, to hundreds of
hours if it is completely new and you have no docs.

> 5) BTW, my environment will be a Kubuntu Linux distribution. Anything
> special about that ?

nope, as long as you install the libusb devel headers and gcc, you
should be good.

> Thanks for your help! I know, those questions sound like I will never
> make that happen in a reasonable ammount of time, but once I know where
> to start that will change - I'm really a good and incredible quick
> developer, usually  ...

i used to say the same thing, until i developed the epjitsu backend
with no docs. i dont know if i will ever do that again... :)

"The truth is an offense, but not a sin"

More information about the sane-devel mailing list