[sane-devel] backend coding overview
Mbosowo I Sampson
msampson@ic.sunysb.edu
Sun, 5 Sep 2004 17:12:48 -0400 (EDT)
On Sun, 5 Sep 2004, Bertrik Sikken wrote:
> Mbosowo I Sampson wrote:
>> I'm interested in writing a back end for the 3970. I've been reading
>> specs, looking at other back ends, trying to get familiar with sane,
>> etc... Its all a little daunting. I feel as though I know more than I did
>> a few days ago, but not nearly enough to even begin to know where to
>> start. I think what I'm looking for here is a general overview of how sane
>> interacts with a USB scanner. I feel like I can't see the forest because
>> I'm preoccupied with studying the composition of bark on each tree. Once I
>> have the conceptual part down, I think all the details will fall into
>> place as I continue reading the documentation.
>>
>> What I'm asking for is a break down of the steps involved for a scan to be
>> made. I'm trying to conceptualize how libusb, the driver I will write, the
>> front end, and the chip set all interact together to execute a successful
>> scan. Doesn't have to be in minute detail, but some detail is always good.
>
> I can tell you a little about how the niash backend was developed.
> This may not be the best example, but the process worked quite well
> in the end.
[snip]
So did you have to reverse engineer the protocol when you wrote the back
end? I think I have a handle on what's required to write a sane back end .
My issue now is reverse engineering the protocol. After reading your post
I got all fired up to write a stand alone app to try turning on the lamp,
until I realized I have no idea *how* to turn on the lamp. don't know what
registers to write, what values they require, etc... That's my next
hurdle.
Mboso