On Wed, Jul 25, 2012 at 2:58 AM, Yury Tarasievich <yury.tarasievich at gmail.com> wrote: > Talking generally of unwritten backends, it's quite a shame, that the > development cycle isn't "broken down" to some essential phases based on what > hardware is used in the scanner, and much better documented. And yes, I've > read backend-writing.txt, and everything in the doc/ section, and sifted the > list. > [snip] > > IF I were sufficiently proficient, I'd put into the SANE distribution the > following for the "starters-ups": step-by-step procedures and code templates > for 1) constructing the code starting up and shutting down the scanner; 2) > same for switching the lamp on and off; 3) same for moving the caret up and > down, for all speeds allowed by the controller. Such templates would rely on > the documented routines in the "low-level" code. And so on, as I'm sure I'm > missing a lot of things here.
Unfortunately it would be very difficult for us to provide anything more than a template for new backends, as the protocol used, and even the steps required vary drastically. Cheaper scanners will require things like calibration and motor acceleration calculations, etc. More expensive scanners don't need this kind of help. The particular case of genesys is actually a slightly easier one, since you can get datasheets for some of the chips, and there is an existing backend to modify. If you don't have those luxuries, writing a backend can be particularly frustrating, as with any reverse engineering. That said, if there is something we can do better to help the new backend author, we certainly accept patches to improve our docs and code. You guys are in the best position to produce those changes. allan -- "The truth is an offense, but not a sin"
