Scanning on Linux
Rom Feria
Yesterday, my sister borrowed my Canon Lide 25 scanner so she could scan the graduation photos of her eldest daughter. Since we did not have a notebook, she asked my brother to set it up on his Ubuntu Linux box.
Since Canon did not provide Linux drivers for their scanners, we had to rely on the Open Source community to look for drivers. The first logical choice is to invoke Synaptic and try to get the drivers off of the Ubuntu application repositories. The package to get is called SANE - Scanner Access Now Easy.
Installing using Synaptic or apt-get is easy and does not even need a reboot. Unfortunately, the driver for the specific brand and model is not included in the package by default. We had to look for the specific model's driver. Luckily, the driver is available but is called plustek rather than canon. :)
Adding this particular plustek driver, however, requires that we tinker with the source and re-build it. So off we went to the main SANE site at http://www.sane-project.org and downloaded the latest stable package. The instructions bundled with the plustek driver is very easy to follow and then just run the usual sequence of "configure;make;make install" and that is it! Software installed.
We tested to see if the drivers are working. A simple "sudo sane-find- scanner" returned a detected scanner. Cool! Running "sudo scanimage - L" returns the scanner name as well. Now, we are ready to scan.
XSane failed to recognize the device. Kooka also failed to see it. It was quite weird since the drivers properly detected the device already. Back to the drawing boards.
First, we modified /etc/hotplug/usb/libsane.usermap so that we can access the device without running as root (sudo). It is as simple as adding a line containing "usbscanner 0x0003 0x04A9 0x2220 0x00 0x00 0x00 0x00 0x00 0x00". 0x04A9 is the manufacturer ID and 0x2220 is the model ID for the Lide 25. Just restart the hotplug service (sudo /etc/ init.d/hotplug restart) and disconnect and reconnect the device and that is it. Runnin "scanimage -L" without using "sudo" now works.
Now back to xsane and kooka. Still would not work. We tried to do a test scan via the command-line "scanimage --format=tiff > image.tiff" and the scanner started making some noises. The command returned and we got ourselves an image.tiff file. For some weird reason, the image contained weird black and white stripes.
There must be something wrong with the parameters we passed to "scanimage". We experimented with different combinations and ended up with the same end results.
After a few hours working on it and getting the same odd results, I personally gave up and opted to just get my wife's powerbook and plugged the scanner to the USB port and started to scan. It was only then that the Mac application complained that the scanner was locked! Yeah! There was a hardware lock somewhere! Argh! Silly me! I did not check the manual! Hehehe...
So, I re-connected the scanner to the Linux box after unlocking it. Tested if Linux can still detect it and then started running "scanimage". Lo and behold! There it is - an image!
The drivers work but we still could not figure out why xsane and kooka refuse to detect the device. Oh well, that is probably for another day. :)
Lesson of the story - read the manual! :D If not for the ease of simply connecting a device to the Mac, I would not figure out if the darn thing works on Linux! :)
Until next time... see you next week! Visit me at http:// rom.feria.name/blog.
|