Thursday 15 April 2010

HP Deskjet F4210 All-in-One printer/scanner on Debian Lenny using SANE

This is what I had to do to get the scanner of my HP Deskjet F4210 All-in-One printer/scanner working on my NSLU2 running Debian Lenny. First install the sane packages -

NSLU2:~# apt-get install sane-utils libsane

This also installs a lot of dependencies so will take some time. Then plug in the USB cable from the printer to the NSLU2 and check whether sane recognizes the scanner -

NSLU2:~# sane-find-scanner

...

found USB scanner (vendor=0x03f0 [HP], product=0x2504 [Deskjet F4200 series]) at libusb:001:006

...

Lots of other lines printed out to but the main point is the USB scanner is detected. Check now that sane knows how to drive this scanner -

NSLU2:~# scanimage -L

No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).

OK, this means that the appropriate sane backend is not there. After a bit of googling found that my scanner requires the 'hplip' package to be installed which provides the required sane config files -

NSLU2:~# apt-get install hplip

LOADS of dependencies also installed. Must try and find if there is a smaller package that just gets the minimum for sane to work. Anyway, rechecking that sane can drive the scanner -

NSLU2:~# scanimage -L
device `hpaio:/usb/Deskjet_F4200_series?serial=CN8952V2TC05C3' is a Hewlett-Packard Deskjet_F4200_series all-in-one

Now to run the sane daemon, need to edit
/etc/default/saned

NSLU2:~# nano /etc/default/saned

and change the line to RUN=yes

# Set to yes to start saned
RUN=yes

then start the daemon -

NSLU2:~# /etc/init.d/saned start
Starting SANE network scanner server: saned.

and check it is running -

NSLU2:~# ps -ef | grep sane
saned 10223 1 0 13:26 ? 00:00:00 /usr/sbin/saned -a saned
saned 10224 10223 0 13:26 ? 00:00:00 /usr/sbin/saned -a saned