I really love the reliability of my Fuji wireless mono laser printer. Best printer I've ever owned. However, it was released without Google Cloud Print. This required constant driver installation on new devices and the inconvenience of not being able to print documents until I am home. I had quite a few solutions in mind such as moving it near the router that could act as a print server. Too much effort ;)
This is where the Raspiberry Pi Zero W (Zero W) comes in. This project details how I set up the Zero W to run as a Google Cloud Print server using CloudPrint.
Components
- Raspberry Pi Zero W
- microSD card (>8gb, Class 10 recommended)
- Short USB micro-b to type-A plug (alternatively, 2A power source adapter)
- Wireless Router
- Network enabled printer (or a printer attached to a print server)
- (Optional) Raspberry Pi Zero case
Overview
- Prepare Raspberry Pi Zero W
- Set up and secure the Zero W
- Install + configure cloudprint software
- Test Print!
Prepare the Zero W
- Load your preferred distro onto a microSD card. I chose DietPi because I was only after a headless distro and it contained the necessary packages to install google cloud server.
- Insert the microSD card into your Pi and let it boot. Depending on your distro, you might have to use a keyboard/monitor initially as SSH remote access is disabled.
- If you'd like the Raspberry Pi to auto-connect to your wifi network extra steps are needed. They are detailed on the Dietpi website
Set up and secure the Zero W
- After you have sucessfully connected to your Pi via SSH, login using the supplied default credentials.
- I chose to change the default password to something else by entering passwd on the root prompt
- You may want to follow other guides to further secure your Pi including creating a non-root user and disabling root SSH logins.
Install cloudprint software
This applies to DietPi only. If you are using other distros such as Raspbian you can use this specific guide.
- Enter the command dietpi-software
- Select 'Software Optimized'
- Scroll down to 'Printing' and select 'CloudPrint'
- Select 'OK'
- Scroll down and select 'Install' in the main dietpi-software menu
- Let it work its magic
- Follow guide here to initliase the cloudprint server. Everything else has been taken care of by DietPi :-)
Test Print
- If all steps were followed, you should be able to see your printer in your google cloud print account. This printer should be available as long as the printer has a connection within your network and until the CloudPrint service is running:
Conclusion
You should now be able to see your printer on your Google Cloud Print service under your account. You can furthermore share this cloud printer with other google accounts as well. I have shared it with my parents who don't have a printer in their residence but can easily print using my printer when required remotely.
Here is a final shot of the Pi Zero W dilligently doing it's job conveniently powered by the router's power supply (USB):