Epson Stylus CX5600 all-in-one scanner on Linux

2 minute read


I convinced my sister to use Linux after the fourth Windows XP installation (due to viruses). But she complained about not having installed her Epson Stylus CX5600 scanner on Linux, so after doing a research here you are what you need to set it up…

Installing SANE

In order to handle your Epson Stylus CX5600 scanner you have to install SANE (Scanner Access Now Easy) which is an API for handling raster scanner on Linux (and others OS like Windows, OS/2, etc). So, type the following command in a terminal:

aptitude install sane sane-utils

Installing the drivers

Oddly Ubuntu 9.10 doesn’t  detected the scanner by default. In fact you have to download some .rpm files available from Avasys site and convert them to .deb files using alien:

alien -c iscan-2.10.0-1.i386.rpm
alien -c iscan-plugin-cx4400-2.0.0-0.c2.i386.rpm

Install the debianized packages using dpkg:

dpkg -i iscan_2.10.0-2_i386.deb
dpkg -i iscan-plugin-cx4400_2.0.0-1_i386.deb

Check if the scanner is detected using lsusb command:

root@humbrige:~# lsusb
Bus 002 Device 002: ID 04b8:083f Seiko Epson Corp. Stylus DX4450
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 058f:6366 Alcor Micro Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

With that information edit the /etc/sane.d/epkowa.conf file adding the following line (vendor id and product id):

usb 0x04b8 0x083f

Now edit the /etc/sane.d/dll.conf file commenting epson and epson2 lines and adding or uncomenting epkowa. So you’ll have something like this:

#epson
#epson2
epkowa

At this point you will be able to use your scanner. You can use xsane, flegita or skanlite to scan your images.

Only root can use the scanner

If the scanner only works with root even though your account belongs to the saned group, this might be a permission problem related to udev. For instance,  I got the scanner’s usb address:

root@humbrige:~# lsusb
 Bus 002 Device 002: ID 04b8:083f Seiko Epson Corp. Stylus DX4450

With that information, I checked how udev mapped  the device:

root@humbrige:~# ls -l /dev/bus/usb/002/002
crw-rw-r--+ 1 root root 189, 129 2009-12-01 21:37 /dev/bus/usb/002/002

This is the problem. It should have mapped it with the saned group instead of root. To fix it, edit the /lib/udev/rules.d/40-libsane.rules file and add the following lines:

# Epson CX5600
ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="083f", MODE="0664", GROUP="saned", ENV{libsane_matched}="yes"

To apply changes, unplug and plug your scanner. Check the new ownership by listing the /dev/bus directory again, but you have to look whether the device id has been changed:

root@humbrige:~# lsusb
Bus 002 Device 003: ID 04b8:083f Seiko Epson Corp. Stylus DX4450

If it changed, use the new device id to check the ownership:

root@humbrige:~# ls -l /dev/bus/usb/002/003
crw-rw-r--+ 1 root saned 189, 129 2009-12-01 21:37 /dev/bus/usb/002/003

As you can see, now it belongs to the saned group, meaning that all member of saned group will be able to use the scanner :)

References

Tags:

Categories:

Updated:

Leave a Comment