if it makes you feel any better, there are a dozen people on this list in the same boat. i dont know of any lawsuits that have occurred so far. in fact, the opposite might be more likely to be true, as vendors realize the utility of a package that means they dont have to write drivers for several platforms. i would expect support from some vendors to increase as time goes on. other vendors, especially those of cheap crap, may never come around.
allan On Fri, 8 Apr 2005, Fred Odendaal wrote: > So, I'm thinking "I've got a degree in comp. sci. How difficult can it be to > write a scanner driver?" I leaf through the sane documentation - looks simple > enough! "Okay", I decide, "I'll do it!" Then I start looking for information > about my scanner - a Lexmark X1185. I start with Lexmark. They've got a > Linux developer's kit. "Oh wow! This is going to be easier that I > thought...". > > Nope. > > The developer's kit only works with specific models of Lexmark scanners - not > mine, and is only compliant with really old versions of RH Linux. I'm using > FC3. The kit includes libraries for the low level drivers (they won't supply > the source code) and C++ code to interface between the low level drivers and > the sane backend code. "Yuck!" > > Okay, back to the drawing board. I go back to Lexmark and read their spec. > sheet. Later, I find you really can't trust the information in the spec. > sheet, which I find out after 4 rounds of emails with their help desk - I > don't think they really understood the difference between resolution and > colour depth. The spec. sheet says 48-bit colour and 18-bit gray scale. Well, > the scanner never returns enough data to support this. Lexmark's claim is > that the scanner does this bitdepth internally and picks the best results > from the sample, but only sends 24-bit colour or 8-bit gray scale back to > the computer. > > Oh, as another interesting side bar - black and white scanning is not really > black and white. It's a gray scale scan that gets converted to black and > white. Also, the Windows driver lets you select a myriad of resolutions from > 72dpi up to 9600 dpi. The scanner really only does 75x75, 150x150, 300x300, > 600x600, 600x1200 dpi scans. > > So, eventually I find enough information from various sources. I found the > part number (rts8852C) of the scanner chip from the sane pages and the best > usb sniffer to use from this mailing list. As I dug a little further I found > there has been a lot of work already done on the predecessors to the rts8852, > the rts8801 and rts8891. I'm not sure why this isn't part of the sane > backends yet, but there is a sane web page at > http://hp44x0backend.sourceforge.net/ for several HP scanners that use these > chips. > > Finally after many Windows scans and log files at various different sizes, > resolutions, and colour or gray scale mode I start writing the backend. It > only took me about 2 weeks before I could scan on Linux, but this is the easy > part! What I soon discovered is something called CALIBRATION. At 600x1200dpi > colour resolution the Windows driver actually does ~20 scans off to the side > of the glass flat bed. I have no idea what its doing. By looking at the usb > logs it appears to be setting the gain and the dc offset in a gradual fashion > over several calibration scans. > > Now I'm faced with a dilema. I ask myself - "Do I continue and try to reverse > engineer the Windows driver?" "Is this even legal?" I really can't see > progressing any further without taking a peak, but I'd really rather not get > sued. I've already looked at the .ini file used to configure the driver. I > wish I'd found it earlier. It's got a lot of valuable information in it, > which confirms what I've said above... > > I'd really like to continue. It's actually become a bit of an obsession with > me, but I'm also a realist. > Anyone else faced a similar conundrum? > Fred Odendaal > > -- "so don't tell us it can't be done, putting down what you don't know. money isn't our god, integrity will free our souls" - Max Cavalera
