Possibly Painless Network Printing from your Raspberry Pi

Printing from computers goes through waves of being difficult to being easy, then back to difficult again. This is likely due to the cycles of technology, complexity and user demand flow in and out of sync. I think we’re at peak annoyance right now.

It’s even harder with Raspberry Pis, as when printer drivers support Linux, 90% of them are for x86 or x86_64 computers only (Canon: ಠ_ಠ). ARM doesn’t get a look in. But one technology does actually seem to help: network printers that support IPP — Internet Printing Protocol.

We had an old Brother laser printer that just got slower and crankier and less useful as a printer, so yesterday I got a new Brother DCP-L2550DW to replace it. It says it supports Linux in the spec, but I knew not to be too optimistic with my Raspberry Pis. And indeed, it was seen on the network but no driver was found. I had a sad.

What turned my frown upside down was finding out about Raspbian’s cups-ipp-utils package. For desktop use, install it this way:

sudo apt install cups cups-ipp-utils system-config-printer

(leave off system-config-printer if you’re running from the terminal.)

Update: while you’re here, you might also want to install the print-to-PDF driver too. This allows you to print without wasting paper. Install it (and the IPP driver) with:

sudo apt install cups cups-ipp-utils system-config-printer printer-driver-cups-pdf

In many cases, this might be all you need to do: the network printers should be automatically found and added as devices.

Adding the new printer

On the desktop, open up Preferences → Print Settings and add a new printer. Yes, it prompts for your user password which you may have forgotten. I’ll wait while you try to remember it …

Now under Network Printers, you should see a device you recognize. Pick the one that says IPP network printer somewhere:

IPP network printer

Here’s where the magic happens: you actually want to pick the generic driver for once:

Select Generic (recommended) manufacturer

And again, the IPP utilities package will have picked the right driver for you:

Just go with what the driver suggests

Changing the name and location is optional:

Your new printer’s almost ready to go!

Hit Apply, and you should be printing!

(Hey, printer manufacturers have been known to be evil and make good, working stuff suddenly not work. IPP is supposed to make everything sparkly again, but I can’t guarantee that something wicked won’t come this way.)

Update: After a few months of using the Brother DCP-L2550DW, I don’t recommend you buy it. It’s a perfectly capable printer, but it takes ‘chipped’ toner cartridges that:

  1. stop dead when you hit their page count limit, wasting toner and preventing you from finishing the print job;
  2. can’t easily be refilled by local technicians, so are wasteful of resources.

To get around (1), select Continue instead of Stop in the Toner Out configuration menu.

Update, January 2020: with sales and all needing a printer for work, the DCP-L2550DW will go with me to the office. I now have a MFC-L2750DW at home that scans to network, amongst other things. IPP proved it was magic yet again by the new printer being found and just worked with all my machines as soon as I added it to the network.

on stravaig

My company’s network is down today. All of it. All my files are there. All my work is there. I’m enjoying freedom while I can.

Have you heard of a large company not having redundant servers?

serene detachment

The office network has been down all day. I don’t keep paper copies of anything. Therefore, today has been quite quiet, detached from everything.

All the printers I’ve ever owned …

bird you can see: hp print test

  • An ancient (even in 1985) Centronics serial dot-matrix printer that we never got working with the CPC464. The print head was driven along a rack, and when it hit the right margin, an idler gear was wedged in place, forcing the carriage to return. Crude, noisy but effective.
  • Amstrad DMP-2000. Plasticky but remarkably good 9-pin printer. Had an open-loop ribbon that we used to re-ink with thick oily endorsing ink until the ribbons wore through.
  • NEC Pinwriter P20. A potentially lovely 24-pin printer ruined by a design flaw. Print head pins would get caught in the ribbon, and snap off. It didn’t help that the dealer that sold it to me wouldn’t refund my money, and required gentle persuasion from a lawyer to do so.
  • Kodak-Diconix 300 inkjet printer. I got this to review for Amiga Computing, and the dealer never wanted it back. It used HP ThinkJet print gear which used tiny cartridges that sucked ink like no tomorrow; you could hear the droplets hit the page.
  • HP DeskJet 500. I got this for my MSc thesis. Approximately the shape of Torness nuclear power station (and only slightly smaller), last I heard it was still running.
  • Canon BJ 200. A little mono inkjet printer that ran to 360dpi, or 720 if you had all the time in the world and an unlimited ink budget.
  • Epson Stylus Colour. My first colour printer. It definitely couldn’t print photos very well.
  • HP LaserJet II. Big, heavy, slow, and crackling with ozone, this was retired from Glasgow University. Made the lights dim when it started to print. Came with a clone PostScript cartridge that turned it into the world’s second-slowest PS printer. We did all our Canadian visa paperwork on it.
  • Epson Stylus C80. This one could print photos tolerably well, but the cartridges dried out quickly, runing the quality and making it expensive to run.
  • Okidata OL-410e PS. The world’s slowest PostScript printer. Sold by someone on tortech who should’ve known better (and bought by someone who also should’ve known better), this printer jams on every sheet fed into it due to a damaged paper path. Unusually, it uses an LED imaging system instead of laser xerography, and has a weird open-hopper toner system that makes transporting a part-used print cartridge a hazard.
  • HP LaserJet 4M Plus. With its duplexer and extra paper tray it’s huge and heavy, but it still produces crisp pages after nearly 1,000,000 page impressions. I actually have two of these; one was bought for $99 refurbished, and the other (which doesn’t print nearly so well) was got on eBay for $45, including duplexer and 500-sheet tray. Combining the two (and judiciously adding a bunch of RAM) has given me a monster network printer which lets you know it’s running by dimming the lights from here to Etobicoke.
  • IBM Wheelwriter typewriter/ daisywheel printer. I’ve only ever produced a couple of pages on this, but this is the ultimate letter-quality printer. It also sounds like someone slowly machine-gunning the neighbourhood, so mostly lives under wraps.
  • HP PhotoSmart C5180. It’s a network photo printer/scanner that I bought yesterday. Really does print indistinguishably from photos, and prints direct from memory cards. When first installed, makes an amusing array of howls, boinks, squeals, beeps and sproings as it primes the print heads.

pear shaped plan

I fear my plan to have the T21 as a home server has gone wrong. Looks like the mini-PCI network card has blown, leaving it invisible to the network. Since the screen backlight is dead, I can read no diagnostics … ;-(

Update: Aha! The backlight gods must’ve heard me, for the T21 actually graced me with a visible screen for a few hours. It was down to:

  • A bad line in my fstab which was trying to mount an unattached USB drive. This drops OpenBSD into single-user mode.
  • no dhclient configuration, so the machine would not automatically appear on the network. Since I swapped out the purportedly faulty mini-PCI network card for a spare (what?! you mean you don’t have spare mini-PCI network cards about the house? Tsk.) I had to tell the system that this was the new card to get a DHCP address.

So all works now, and I’m happy. Now to attack the LaserJet 4 duplexer, and swap it onto my refurbed printer …

the outside world

Finally got something useful done with the Thinkpad with the broken backlight. Thanks to lots of help from Paul, and a critical bit of advice from Stephen, it’s now living on my network and visible to the outside world.
What had me initially confused was that both my modem (a SpeedTouch 546) and my Netgear router have NAT firewalls. I had to declare the router as a DMZ on my modem, and the Thinkpad a DMZ on my router. Also, the router’s DynDNS support was only reporting its IP address as seen behind the modem, so I had to turn that off and use dynDNS from the modem.

Security hole? Perhaps; but it’s not as if OpenBSD is the least secure or most widely-used OS. I’ve really only got sshd and thttpd running, so there’s not much to chew on

Free the Laserjet 4!

I love the HP LaserJet 4+. Built like a tank, good print quality, and now available used/refurb for pennies. Sure, they weight about as much as a Sherman, and suck power like there was no tomorrow, but one of my 4+s has nearly a million on the page count, yet prints crisp and clean.

Last weekend I scored a 4+ with built in duplexer from eBay for very little. It didn’t want to print at first (giving a cryptic 13 PAPER JAM error), but removing the rather beat-up full-ream paper tray fixed that. It may need a new cartridge (at almost twice what I paid for the printer), but I’m happy.

Wonder if I can direct-connect one of them to the ethernet port on Catherine’s eMac? I know my router won’t talk AppleTalk, so we can’t network just one printer.

first day new job

I had a good day. There was a lot of administrivia, setting up e-mail accounts, form filling, and learning about the network, but that’s all once off. The afternoon was mostly spent fighting with my new BlackBerry (a 7130e, you nerds), which works as a very nice phone, but the e-mail isn’t set up.

My cube has a view, and the transit is great. I’m happy.