|
Hi, I recently bought a new printer, as the title of this document describes, it was a Epson Stylus Photo R285. Not a bad printer, but unfortunately not very Linux friendly. If you do use Linux, and plan to buy this printer, I would suggest that you move on and look at another model. The main issue with this printer was the fact that it would just stop printing, and no matter what I tried, it would just not restart. I had to turn it off, and back on in order to reinitialise, and even that did not help every time (more not) Added to this is the fact that neither cups nor guttenprint had dedicated drivers for this model, thus I had to use the generic drivers (which could be the reason for this issue) All is not lost, as I did find a way to soft-initialise the printer using a tool called 'ttink' which is part of a package called 'mtink'
Basically you have to install/compile mtink, but make sure you build it to include the command line tools, which builds ttink. wget http://www.dedmeet.com/files/mtink-1.0.16.tar.gz ./ unpack it tar xvf mtink-1.0.16.tar.gz cd into the folder cd mtink-1.0.16 Compile it ./Configure --prefix / --no-x --no-gimp make clean make Copy the compiled ttink file to /usr/bin (or any convenient execute location) and make it executable Now you must setup the udev rules to run this file whenever the printer is connected/detected. edit the base udev rules file. cd /etc/udev/rules.d vi 50-udev.rules look for the line with BUS=="usb", KERNEL=="lp[0-9]*", NAME="usb/%k" and change it to BUS=="usb", KERNEL=="lp[0-9]*", NAME="usb/%k" RUN+="/bin/restart_printer.sh" and save the file. now create the /bin/restart_printer.sh file. vi /bin/restart_printer.sh paste this into the file - my printer detects as /dev/usb/lp0, so adjust the line accordingly #!/bin/sh /usr/bin/ttink -r -d /dev/usb/lp0 save the file, make it executable chmod +x /bin/restart_printer.sh test by tailing your log file tail -f /var/log/messages switch the printer off and on and look for a message like run_program: '/bin/restart_printer.sh' returned with status 0 exit status 0 is good, anything else is an error. Look in the file, it will tell you what the problem was if it is not 0. The most obvious thing that it worked is that the printer will do an extra initialise routine after the initial startup. you can also run the command sudo /usr/bin/ttink -r -d /dev/usb/lp0 manually in a console if the printer stops responding. Well, thats it. I hope this guide was helpfull. |