Recently my parents purchased an Epson Stylus SX235W for use with their Linux laptops. It’s a combined inkjet printer and flatbed scanner with wireless network support, all for a decent price.

My dad uses Ubuntu Lucid, my own choice back when Lucid was current, and it was also conveniently on Long Term Support (which it still is) – this shouldn’t be too bad.

Printing
Out the box, CUPS does not support the SX235W printer. This was easily resolvable by heading to Epsons website and following through the various procedures to get Linux support. The download center at http://download.ebz.epson.net/dsc/search/01/search/searchModule seems blissfully unaware of the SX235W printer that they gleefully sell, but it does know it under the model SX235. Select that option, and grab the version of epson-inkjet-printer-201108w that’s applicable for your architecture.

Once you install the package, the standard ‘Add Printer’ tools in Ubuntu will be able to find the printer on the network. A word of warning though – be patient. It will take up to a minute for the printer to be discovered on the network. Once found, you can add the printer, let it search for and find the driver, and then you’ll be off and running.

Scanning
Scanning was a slightly different matter. This is supported through the use of the iscan package, along with the iscan-network-nt plugin. The key here is that unlike the printer driver which uses DNS-SD to find the printer, SANE has to be configured to look at the correct network address of the scanner before it will allow anything to be done. My parents router is a nice little TP-Link TP-WR841N running OpenWRT, so a quick delve into /etc/config/dhcp to give the printer a static lease had the printer on a readily discoverable IP address within a couple of minutes.

Once the printer was on a dedicated IP address, installation of the iscan and SANE packages followed. For SANE, just ‘apt-get install sane-utils’. For iscan head back to the Epson Driver Download Center mentioned above, and download both the “core package&data package” and the “network plugin package” package for your architecture. Bear in mind that as Lucid uses libltdl7, you’ll need to grab the version suitable for libtdl7 or later. Make sure you download and install the iscan-data package first, before trying to install the core package. Once those two are installed, the network plugin package can be installed.

Remember previously where we set the printer/scanner up with a static DHCP lease? This is where it comes in important. Edit /etc/sane.d/epkowa.conf and down in the network section put in ‘net 192.168.1.50′, and substitute the correct IP address.

All sorted. Execute ‘iscan’ at the command line or “Image Scan! for Linux” from the Ubuntu menu, and it should detect your scanner and offer to scan. Job done :-)