Home Interests Raspberry Pi

How to Make Any Printer Wireless with a Raspberry Pi

Look ma! No Ethernet!
howchoo   (467)
September 22, 2023
10 minutes


You'll Need 1

What you'll need
Howchoo is reader-supported. As an Amazon Associate, we may earn a small affiliate commission at no cost to you when you buy through our links.
Posted in these interests:
pi • 92 guides

With a Raspberry Pi and a free afternoon, you can make any printer a wireless network printer. You don’t even need a full-sized Pi model—this project will work easily with the Raspberry Pi Zero W.

We’ll be using CUPS to create a print server that can be managed with a web interface on the network. CUPS provides plenty of features like print job management, job cancellations, and the ability to adjust printer settings from your browser window.

1 – Install Raspberry Pi OS

This project is built on Raspberry Pi OS. Unless you plan on using a monitor or screen, you can get away with using the light version.

If you haven’t already, go ahead and install Raspberry Pi OS onto a microSD card. You will need access to the internet. Visit our guides on how to enable SSH and how to set up WiFi on a headless Raspberry Pi for help setting this up.

How to Enable SSH on Raspberry Pi OS Without a Screen
The SSH protocol is disabled by default.

2 – Install CUPS

It’s important to update Raspberry Pi OS before installing CUPS. If you’ve never done this before, check out our guide on how to update Raspberry Pi OS. You will need to access the Pi via SSH using a terminal.

How to Install Raspberry Pi OS on Your Raspberry Pi
Get the new official Raspberry Pi OS on your Pi.

Once the Pi has been updated, run the following command to install CUPS.

$ sudo apt-get install cups

3 – Set up the Printer

Connect your printer to the Raspberry Pi. The cable you need for this step may differ depending on the type of printer you’re connecting and what model of Pi you’re using.

In my case, I’m using a Canon MX922 and a Raspberry Pi Zero W. The Canon is connecting to the Pi Zero with a USB B to Micro USB setup. I had to use a USB A to Micro USB adapter. Again, your needs may not match what I’m using for this step.

When the printer is connected, turn it on.

4 – Start CUPS for the first time

Add your Raspberry Pi username to the CUPS system to create a profile. Replace pi with your username.

sudo usermod -aG lpadmin pi

Now we can start the CUPS software on the Raspberry Pi. In a terminal window, run the following command.

sudo /etc/init.d/cups start

5 – Set permissions

Permissions are necessary to access the web interface from any computer. Run the following command to apply the appropriate permission level and restart the application.

$ sudo cupsctl --remote-any
$ sudo /etc/init.d/cups restart

6 – Access CUPS

As an optional step, you can take this opportunity to set a static IP address on the Raspberry Pi.

How to Configure a Static IP Address on the Raspberry Pi
Making things a little less dynamic.

Access the CUPS web interface using either the hostname or IP address for the Raspberry Pi. Paste this address into your browser, replacing [YOUR_PI] with the IP or hostname.

🛈  If you receive a login prompt, use your Raspberry Pi login credentials.

7 – Add a printer

When the web interface loads, go to the Administration tab and choose Add Printer.

Choose your printer from the list. Set a name, description, and location for your printer. The name field can’t have any spaces, slashes, or pound signs. You can use this screen to choose whether or not the device is shareable on the network. Click Continue.

Select a PPD for your printer model from the list or upload one from your machine. When a PPD file has been specified, click Add Printer. It should now appear under the Printers tab.

8 – Manage your printer

To manage your printer, select it under the Printers tab. Use the Jobs section to show a list of completed jobs or currently queued print jobs.

In the upper left are a couple of drop-down menus. The left menu has maintenance features like test pages and print job management. The right menu has administrative options like adding user permissions or removing the printer entirely. You can also use the Administration menu to change the default print settings for the printer under Set Default Options.

Great job! You’ve created a Raspberry Pi-powered print server. You should be able to discover and connect to printers on this Pi server like any other wireless printer.


How to Run a Minecraft Server on the Raspberry Pi

A whole world trapped inside your Pi.
howchoo   (467)
December 7, 2023

There are several ways to go about running a Minecraft server on the Raspberry Pi. In this guide, I’ll cover how to install Nukkit—a cross-platform Minecraft server that’s super easy to set up on the Raspberry Pi. This server should work with PCs, consoles, and tablets running Minecraft 1.14. I’ll be using a Raspberry Pi

Continue Reading


 467 guides

Introducing Howchoo, an enigmatic author whose unique pen name reflects their boundless curiosity and limitless creativity. Mysterious and multifaceted, Howchoo has emerged as a captivating storyteller, leaving readers mesmerized by the uncharted realms they craft with their words. With an insatiable appetite for knowledge and a love for exploration, Howchoo's writing transcends conventional genres, blurring the lines between fantasy, science fiction, and the surreal. Their narratives are a kaleidoscope of ideas, weaving together intricate plots, unforgettable characters, and thought-provoking themes that challenge the boundaries of imagination.

Discover interesting things!

Explore Howchoo's most popular interests.