NOTE: This is ancient stuff now, look elsewhere!
The Visioneer XP100 is a cheap, sheet-fed, portable USB scanner based on an LM9833 chipset. In mid-2004 a task came up in our lab to develop Linux drivers for this scanner. A true driver was never finished, but the scanner was reverse engineered and a program written to control the scanner and receive images. This was done by dismantling a device, determining the component devices used (e.g. the stepper motors) and their specifications, and comparing USB logs sniffed on a Windows PC running the official driver against the LM9833 documentation. Extension to a true driver should be straightforward. This software is released here under the terms of the GNU General Public License (GPL). An archive with source code is linked below, as well as a report describing that software and the findings of the reverse engineering effort.