How to wifi enable a Zebra USB label printer.

Zebra printers are one of the most popular label printers, also the printer recommended by Royal Mail Click and Drop (which links to Shopify). For new sign ups Royal mail offer a £150 Zebra GK420D printer which is a great deal but it isn’t a wifi printer (it is usb, serial or parallel). Network versions are available but are about £200 more.

Using a zebra printer wired is fine, but its a bit messy being tied to a cable in 2021! It would be much more convenient if it was wireless.

So, how to make a zebra GK420D into a wireless printer?
Buy a wireless print server?

There are not many devices which provide native wireless printing to a usb printer, most expected a cat5 network port. The print servers which do exist cost around £70 are were not made by major brands. I bought two, neither worked as expected ! Those which had WIFI appear to set up its own wifi access point for configuration but expect to be connected to an ethernet port to print.

So, no devices within my budget which worked- what next?

My thoughts were around a small computer acting as a print server. When I was thinking small computer, I was thinking a Raspberry Pi, being small enough to be tucked behind the printer. I choose a Raspberry Pi Zero W which looked great and had wireless built-in.

This little board costs £9.30 from the PiHut. It requires a few accessories (for our application) a 2A USB-mini charger (used by most android phones), a 16gb Micro-SD to boot from plus a mini USB to USB port adaptor, and a case . I also bought a HDMI mini adaptor to make it a little easier to configure (you also need a USB Keyboard, and mouse if you want to use the UI during setup).

All in its about £45, which is pretty good for a linux PC.

Configuration & Setup

I used the Raspberry Pi Noobs imager to create a boot image on the SD Card –

Then installed the SD into the Pi and setup using the UI.

The PI Zero has 2 USB ports, but the 1st is for power, the 2nd is the only usable port. I didn’t have a USB Hub, so I had to keep swapping my USB keyboard and mouse during setup, but it all worked okay.

I quickly had a device connected on wifi via the wizard. I gave my print server a fixed IP via my routers DHCP reservation.

Open a shell session (top left > icon)

To check/find your ip, type ifconfig then look under wlan0


wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet  netmask  broadcast

then to make the pi into a print server there’s a few extra commands to run. you launch via shell.

CUPS is the same print server system as used on macs.

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

then its worth making available to the network

sudo cupsctl --remote-any

I then connected the printer to the USB printer

From my PC I then accessed;

http://{ip address of your print server}:631

Then administration, add printer

You’ll get a warning about needing to upgrade, follow the link, you’ll probably receive a your connection is not private warning, click on Advanced, then scroll down to Proceed to {ip}.
Then enter login details, pi and the password you set

Select the Zebra printer, then choose the Zebra EPL Driver

Then Add Printer

Once its all installed, go to printers in the top menu, then select the Zebra printer

Set the General settings as per below, click set Default

the printer settings.

Then set default options.

We were using on a mac, so the steps on the client were as follows;

Click on Printers, then click on [+] at the bottom

Click on the Zebra, then Add

Then to complete, you just need to configure Royal Mail print assist to use this new printer as your default for labels and the job is complete – a wireless print server for your zebra printer (powered by a raspberry Pi).