These days, I have a lot of administration to do, which involves scanning various papers, for which I used my old USB flatbed scanner, a Canoscan LiDE30. I realised this thing is really old. I must have bought it around 2002, when I lived in Lausanne, 20 years ago. At that time, my computer was a grey PowerMac G4. It was three years after the introduction of the original iMac, and USB devices were still a pretty new thing. Surprisingly, this scanner did not have the transparent plastic enclosure to match the iMac, as this was the first computer to only have USB connectors.
What I find interesting, is that this scanner had no particular reason to last that long: it was pretty cheap, has mechanical components, and I was not particularly gentle with it. I moved four times since, and changed countries thrice. That scanner followed me to Japan, it still bears a sticker in Japanese with my name, as I kept it in the lab in JAIST.
Product ID: 0x220e Vendor ID: 0x04a9 (Canon Inc.) Version: 1.00 Speed: Up to 12 Mb/s Manufacturer: Canon Location ID: 0x02100000 / 1 Current Available (mA): 500 Current Required (mA): 500 Extra Operating Current (mA): 0
In my experience, drivers for scanners are always a disaster, and the ones for the LiDE30 were no exception. I feel the underlying problem is that hardware people are used to have an end-to-end control of their devices, but when you write a driver it’s pretty much the reverse, your stuff should blend as much as possible with the operating system.
The Canon software did not blend, it kind of worked on Mac OS 9, but with the migration to Mac OS X, I switched to using the SANE project. A few years ago, I switched to VueScan, a proprietary application, which requires way less twiddling than SANE to work. Having Canon specific drivers made little sense anyways, as it seems this scanner is part of a family that uses the National Semiconductor chipsets LM9831, LM9832, and LM9833. I just wish there would be the scanner equivalent of USB Mass Storage, so we could all just go on with our lives.
I mostly scan administrative papers at 600 DPI (which is probably overkill), so an optical resolution of 1200 × 2400 DPI, with 48 bits per pixel is perfectly fine. Canon still sells a similar device, the CanoScan LiDE 300, which has a resolution which is 2400 × 4800 DPI, the double in each direction. The fact that 20 years later the same company sells basically the same device also explains why I’m still using mine, the product has reached a good enough stage, which is hard to improve upon. I can scan documents using my mobile phone, but it takes more time and the result is less stable.
The fact that the same interface is still being used 20 years after is also interesting. While these days, I use a different cable, with a USB-C connector on the computer side, the old protocol still works. The previous scanners I used were based on SCSI, first a Logitech ScanMan and a flatbed scanner that was lent to me by a friend. While theoretically, SCSI adapter could exist, the market for these was just to small. If you think about it, 20 years is the time that separates the release of the Commodore 64 and me buying that scanner.
We had a colour printer with for the Commodore 64, I think a Seikosha SP-1000VC, which had a IEC Bus (serial IEEE-488). This bus had pretty nice features, you could daisy chain multiple devices (up to 31). Of course bandwidth was limited to 50 kbit/s – in theory, in practice it was way less. In the end, until USB came along everything reverted to the serial port. The funny thing is, you can now build USB adapters to connect the IEC Bus of the old Commodore 1541 floppy drive to a USB port.
Ww will see how long I can keep using my LiDE30 device, from the protocol point of view, it will probably work for many years. We will see how the hardware fares…