Do you want to be able to print from your smartphone or tablet to your old-fashioned, non-wireless printer? To keep your printer in a different room, perhaps even in a cupboard or shed (if it’s noisy), safe in the knowledge that the print job will be waiting for you when you go to collect it?

By now, you’re up to speed. The next task is to configure your Raspberry Pi print server to print from an iPad, iPhone or Android device.

Devices You Can Print From

Our guide for setting up the Raspberry Pi as a print server was mainly intended for Windows PCs (although connecting to a Raspberry Pi-connected printer from Linux and Mac OS X is just as simple).

However, by adding support for AirPrint and other wireless printing protocols, we can print from iPads, iPhones, Android devices and more.

Sending print jobs from your mobile device is perhaps the most liberating and exciting new experience made possible by wireless printing, and by using the Raspberry Pi you get to learn a little about how a print server fits into the system.

Stop Your Raspberry Pi Wi-Fi Idling

One thing you should do before proceeding is to stop the Pi’s network card going into idle mode, which will stop you being able to print. Without attaching a keyboard (and we want the Pi print server to be accessible via SSH) the system cannot be woken up.

This means that your computer, tablet or phone will be unable to connect to the printer!

What You Need To Know About Adding AirPrint Support

Once the problem with your wireless dongle timing out is fixed, you can start adding the tools to make it possible to print from your mobile device.

However, it isn’t as complicated as some sites and tutorials would have you believe. Recently, the component software that makes printing through a Raspberry Pi wireless print server from an iPad or iPhone has been incorporated into CUPS, Samba and Raspbian.

The result is that it is very simple to print from your iOS device once a single application has been added.

sudo apt-get install avahi-discover

That’s all. When installation is complete, you should be ready to start printing!

Print From Your iPad To Your Raspberry Pi Print Server

On an iOS device (tested on iOS7), open the document or webpage and select the Share > Print option.

In the next screen, find the printer in the list of available devices (if you left the default name in place in the previous guide, it should have “raspberry pi” in the name) and select it.

All that is left to do is send the print job and wait for the output. Depending on the complexity of the file (it might be a long document, or a photo) you may have to wait a little for the print job to complete.

Wait: You Can Print From Android Too!

In case you were wondering why we were focusing on iOS devices, you’ll be pleased to know that Android devices can also connect to Raspberry Pi wireless print servers (sadly Windows Phones cannot at this stage)

Many printing apps exist for Android, but most of these are all about Internet printing. If you’re looking for something that is designed to provide a simple link between your Android handset and the printer you have connected to your Raspberry Pi wireless print server, the PrintBot app (limited free evaluation version) is ideal. If you’re happy, you can upgrade to the full version ($4.49) – sadly there doesn’t seem to be a 100% free wireless print app for Android.

After installation, all you need to do is confirm a network connection to the device, select the printer driver from the list (which can take some time if you have a HP device!) and print a test page to confirm all is working. When you want to print a document or image, tap and select PrintBot as the app to open it with, check the settings and finally click Print.

Raspberry Pi Print Server Zen

We’ve given you two guides now on using the Raspberry Pi as a wireless print server. The implications of this arrangement are clear – you can now finally make your old-but-still-working printer a key component of your wireless, multi-device life once again.

Have you set your Raspberry Pi up as a print server? Does the simple setup of AirPrint compatibility or the ability to print from your Android device make this a project you’re looking forward to trying?

...and what i want:
EVERYONE who comes to my home to be able to print out anything without example reconnect the USB cable, switching wifi or stuff like that.
P2P printing to the wifi or bluetooth on the RPI, maybe? how do i set it up?

What i not want to do is:
1) buy anything else to make this work

I have been looking around the internet and asked some friends (that know a little about networking and printers) and i have not found anything that solves my problem. Can you help me with this?

I just used this guide to set up my grandather's Fuji-Xerox CM305df with a Raspberry Pi 3 model B.
Last year my grandfather bought an iPad Pro to replace his aging Dell notebook. Unfortunately the printer I had bought him only a year previously although a network printer had no Airprint capability.

For the most part this guide worked and my grandfather can now print from his iPad. However there is one issue that I've been tearing my hair out trying to solve.

My grandmother makes jams and relishes which she sells in her shop and my mum has been designing labels for her concoctions in MS Word and printing them and posting them to her for years. I thought that now my grandfather had a printer my mum could just email the Word documents to him and he could print them out himself on his iPad.

Unfortunately the documents do no print out correctly. Somewhere along the way from the iPad to the printer the document which is supposed to be an A4 sheet of 21 63.5mm x 38.1mm labels shrinks by a centimetre or so and the printout does not line up with the stickers on the A4 sheet.

Initially I thought the printer margins were off since the top of the printout started further down the page when printing from the iPad than when printing from a Windows laptop. I tried altering the Word document so that the margins were narrower at the left and the top. This did result in the printout starting in pretty much the right place in terms of the top left corner of the document. However the labels still didn't line up.

It was when I held up a correctly printed label sheet and an incorrectly printed one to the light one on top of the other that I saw individual elements such as the font and the picture in the centre of the label were slightly smaller. For example the picture in the centre of the label was a couple of millimetres shorter in length and height.

My best guess is some kind of breakdown in communication over paper size between the iPad, CUPS and the printer. Where something thinks it needs to shrink the document to fit a smaller space without being told to do so.

This guide (and the first regarding wireless print servers) has allowed me to use my old Sony dye-sub printer once again! It's been unsupported by Mac OS and Windows for many years but I was able to build a driver for Raspbian from source and these guides to set it up as a wireless photo printer! Thank you!

This post and the one about setting up the server were great. May I make one small suggestion for people attempting to get this to work. After the last step restart cups one more time using the sudo service cups restart command or reboot.
I was not getting any airprint options until I did this.
Thanks again for the great articles.

I followd your guide to make my printer be found on a computer. This works just fine.
But making it airprint, is not working..
Not much to get wrong, since it is just one line of code, but I do not get it to work.
Anyway I can check if I lack any package etc?