Network printers
Matthias Farenholtz avatar
Written by Matthias Farenholtz
Updated over a week ago

Please see our article on how to choose the right label-printer for Creative Force here.

Important: Creative Force only supports ZEBRA Network printers for direct printing. If you have a different printer type or brand, you should install it as a normal printer and use the “OS Printer” option, when printing labels from Gamma. Make sure your printer is using the same network as with Gamma.

This article contains instructions that require expert IT knowledge.

HTTPS

Gamma will only allow you to print directly via the HTTPS protocol.
We suggest you either set up a proxy or install certificates directly on the printer.
Please note that only ZEBRA Link-OS® printers support installing certificates. If you have an older printer without Link-OS®, you should go with the proxy solution.

Proxy

Below is a recipe on how to config proxy for non-Link-OS printers.

Install a Linux server with nginx and ssl enabled, just make sure you can access this server via https://server-ip/

Open nginx configuration file and under server section, add following snippet:

location / {

            proxy_pass http://printer-ip:9100/;

            proxy_redirect           off;

            proxy_connect_timeout   150;

            proxy_set_header         Connection keep-alive;

            proxy_buffers           4 32k;

            client_max_body_size     8m;

            client_body_buffer_size 128k;

}

Note: Please make sure update following
server-ip: proxy server ip address
printer-ip: your printer ip address

In this case, we don’t need port config in Gamma screen, just add https://server-ip/ to the box in the screen below.

Certificate

Below is a recipe on how to install certificates on a ZEBRA Link-OS® Printer. You can use it as step-by-step directions or as a guide for your IT department to understand the process.

Start by verifying that your printer support secure printing run the following command on the printer:

! U1 getvar "ip.tls.enable"

If the command returns “?” it is unsupported.

You need to generate a CA Certificate and an SSL certificate if you already have a CA certificate this should be used to create the SSL certificate. To create the certificates you need to install OpenSSL, the way to do this depends on your operating system:
          a.  Windows/Mac OS: https://wiki.openssl.org/index.php/Binaries
          b.  Linux: apt install openssl

Now to create the certificate open a terminal/command prompt in the folder you want the certificates in and run the following commands to create the CA certificate (some commands will require input):
          a.  openssl genrsa -out rootCA.key 2048
          b.  openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 1024 -out                       rootCA.pem

To create the SSL Certificate for the Zebra Printer run the following (important to fill in the Common Name with the IP address that will be used by the printer):
          a.  openssl genrsa -out zebra.key 2048
          b.  openssl req -new -key zebra.key -out zebra.csr
          c.  openssl x509 -req -in zebra.csr -CA rootCA.pem -CAkey rootCA.key                               -CAcreateserial -out zebra.crt -days 500 -sha256

The Zebra printer requires the certificates to have very specific file names so copy the following files and rename them:

rootCA.pem TLSRAW_CA.NRD

zebra.crt TLSRAW_CERT.NRD

zebra.key TLSRAW_KEY.NRD

Deploy the renamed files using a USB key or other secure means (as it contains private key). It can also be done using insecure FTP.

Important! You might need to add the CA Certificate to Chrome and Firefox in order to make it work.

After the files are deployed, restart the printer and test if it worked using the app.creativeforce.io by adding it, to get the port run the following command on the printer:

! U1 getvar "ip.tls.port”

If it did not work double check the named on the printer and then try running the following commands on the printer: 

! U1 setvar "ip.tls.enable" "off"

! U1 setvar "ip.tls.enable" "on"

! U1 getvar "ip.tls.enable"


Adding the network printer

To add the network printer to your Creative Force system, you should follow these steps:

Navigate to “Studio Settings”.

Click on “Network Printers” on the left side menu.

Click “Add” in the top-right of the main area. A dialog will show up.
          a.  Name your printer
          b.  Select ZEBRA
          c.  Set the DPI of the printer
          d.  Enter the IP and port of your printer following the example below the input field. Network Address must start with the protocol http:// or https:// or wss:// or ws://, then the IP address and the port number of the printer

e. You can now test the printer. If everything is set up correctly, it will print within a second. Then save the configuration

The network address should look something like this: http://192.168.1.50:9100/

  • Protocol is http://

  • IP address is 192.168.1.50

  • Port number is 9100



Did this answer your question?