Raspberry Pi As Print Server

Configure and Use RPI as a Print server.

Easy Way To Use An Old Printer With Wi Fi.

Do you own a old printer or a MFP? Want to make it network capable to be able to print directly from an iPhone, Android or a PC? Here we make use of a Raspberry Pi As Print Server to make sure your old printer or MFP device is visible on the network.

Well we have got it covered as you can do the needful easily with the help of a Raspberry Pi.

So lets get started! Do note we do assume that you have a little basic knowledge.


First: Prepare and Write OS

Second: Modify settings On Print Server

Third: Install printer on Raspberry Print Server

What all do we need?

  • Old Printer or a Multi function device.
  • A raspberry pi with a minimum 8gb SD card.
  • A PC with a card reader.

Firstly Prepare the RPI.

The first step would be to prepare the Raspberry Pi to run Raspbian OS. Download the Raspberry Pi Imager from here. Unless you need something specific we suggest you simply download the Raspberry Pi OS 32bit using the manager. Insert a 8GB microSD card. The OS is written on it and thereafter verified. Before writing the image though click the “gear” button on bottom right and enable SSH use default username “pi” and enter a password of your choice. Moreover if your Pi has WiFi fill in the Wi Fi credentials. Finally click “save”, choose storage device and then click “write”.

pi imager settings

This process usually takes around 20-30 minutes depending on the Internet speed. As the RPI OS is downloaded, written and finally verified. Once complete eject the SD card and insert it into your RPI.

Secondly modify settings on Raspberry Pi To Use It As Print Server.

In order to install the needed driver and software you need a display or if you do not have you can use a VNC client. Download the VNC client from here. Next power on the Raspberry Pi, connect the Ethernet cable if you are not using Wi Fi. Subsequently check your router for DHCP lease assigned to the RPI.

Use Putty, download link here, to connect to the RPI. It is simple just key in the IP address and click connect. The default username is “pi” and password the one you already set above. Once logged in issue the command

sudo raspi-config

This will bring a graphical user interface. Choose “interface options” and enable “VNC”.

Next we install CUPS, the software that controls and runs printers and add user “pi” to super user list.

sudo apt install cups
sudo usermod -a -G lpadmin pi

We also need to config CUPS to accept local connections and we also restart it so that changes take effect.

sudo cupsctl --remote-any
sudo systemctl restart cups

Installing the Printer on Raspberry Pi Print Server

If yours is a HP printer we suggest issue the following command at ssh terminal before proceeding below. This installs some of best drivers available for some HP printers.

sudo apt-get install printer-driver-foo2zjs printer-driver-foo2zjs-common

Thereafter open the VNC client and key in your RPi IP address and login using same credentials. You should be greeted with a desktop. Alternatively you can simply log into CUPS admin page with “RPi IP address:631”.

https://"Pi IP address":631

If not then proceed below.

Click raspberry icon at top-left of screen and click preferences > print settings.

Click on add printer and make sure that your printer is connected via USB, it should automatically be detected.

Once it is detected proceed to install the same, for HP printers if available choose “Foomatic/foo2xqx” driver, this will ensure your print quality for Laserjet printers is not stuck at 300dpi.

After installation right click printer name and enable sharing.

Voila! your printer is now available on network and we used Raspberry Pi As Print Server to connect to an old printer.

Having problems with EPSON L805 Printer Tray? View the DIY here to solve it.

Buy Raspberry Pi on Amazon

Leave a Reply