2 minute read

Ink-jet printers might dry out if they don't print in regular intervals. The intervals depend on multiple factors, e.g. room temperature, ink quality. Some printers do regular cleaning of the nozzles themselves but quite often you cannot be sure if that's enough.

About the intervals: there is quite some discussion in the internet how often you actually need to print. Every other day/week/months? My 2 year old epson printer dried out after not printing for 1 month in the summer. I will print 1 test page every 3 days. The costs and environmental impact is neglectable in comparison to a broken printer.

My setup
- epson printer connected to the LAN (assume static ipv4: 192.168.1.103)
- raspberry pi running arch linux (same LAN)

Printer setup

I installed the printer via cups running the following commands

pacman -S cups ghostscript
systemctl start cups
systemctl enable cups

lpadmin -p epson -D "epson printer" -E -L "office" -m everywhere -v "ipp://192.168.1.103/ipp/print"
lpoptions -p epson -o media=A4
lpoptions -p epson -o duplex=DuplexNoTumble

Note: You need to adjust the ip to the ip your printer, as well as the description -D and location -L tags. The ipp protocol is available for most modern (since 2014?) printers. Check if they support AirPrint or just run a testprint.

If you need to adjust more options see the official CUPS documentation here.

Regular printing via cron

It is simple to print in predefined regular intervals via a cronjob. Just make sure that the printer is turned on at that time. Installation of cron

pacman -S cronie
systemctl start cronie
systemctl enable cronie

Add a cronjob to print every 3rd day at 10am

crontab -e
...
0 10 */3 * * lp -o duplex=none /usr/share/cups/data/testprint