Installing a Zebra ZC300 Series Card Printer in Ubuntu

Posted on Fri 08 February 2019 in Articles

Preamble

Some days ago at work we received a request to change an old working Zebra ZPXS3 card printer for a brand new Zebra ZC300.

The app that make use of it was developed with the Django web framework by its nature the service is running in a dedicated server powered by Ubuntu Server LTS and CUPS for printing.

Installing the driver

  • Ubuntu version: 14.04.5
  • Printer driver version: 1.0.0.0

Download the current driver from zebra.com (when installing the driver version was 1.0.0.0) from this link, I downloaded it to my computer then uploaded it to the server via sftp.

Unzip the driver.

$ unzip Zebra_ZC_Card_Printer_Driver-1.0.0.0-Linux-x86_64-Install.tar.zip

When the unzip process finish we will have an .tar.gz file, let's untar it

$ tar zxvf Zebra_ZC_Card_Printer_Driver-1.0.0.0-Linux-x86_64-Install.tar.gz

The fallowing commands will be executed as root, therefore we may obtain a root shell with sudo -s.

Execute the installer.

# ./Zebra_ZC_Card_Printer_Driver-1.0.0.0-Linux-x86_64-Install

Answer "Y" two times, the default install location is '/usr/local/ZebraJaguarDriver' cd to that folder is needed.

# cd /usr/local/ZebraJaguarDriver

Then

# ./Install.sh install

It will install the printer's driver but not network support is installed at this point, the network driver will be installed with the following command:

# ./EthernetInstall.sh xxx.xxx.xxx.xxx 2

Where the first parameter is our printer's ip and the second parameter is our printer model, you can see all the supported models by this driver in the case section of the EthernetInstall.sh script file.

Now we have installed the printer lets try it out.

Testing

I made a specific test from the Django app, printing an identification card was not successful.

When checked the cups logs for the job it said "Filter failed", then in the error logs under /var/log/cups/error_log, theres was one line that said:

...error while loading shared libraries: libpoppler-glib.so.8: cannot open shared object file: No such file or directory

Googled the name of the missing library I ended in https://packages.ubuntu.com/trusty/libpoppler-glib-dev, and then did an apt-cache search

$ apt-cache search libpoppler

And then istalled the package that contains that library.

$ sudo apt-get install libpoppler-glib-dev

Tested the app again and voila! we have our new printer working!