Zebra Weblink Printer Setup Guide

There are two ways you can configure Zebra printers that are equipped with Weblink (almost all modern printers have Weblink).

After the printer restarts, you can add the printer with Serial and MAC Address like any other fixed reader.

Minimum firmware version

The minimum firmware version for Zebra Weblink to work reliably is Vxx.xx.10Z. You can check the firmware version on the printer's configuration label, through the printer's web interface, or by printing a configuration report (hold the FEED button for 2 seconds during power-up).

Configuration Mode

USB stick

Important: USB stick must be formatted to FAT32 for this to work.

The files you need to put on the USB stick can be downloaded in a zip file above. If you extract on a USB stick, the directory structure should be:

Directory structure:

[USB-CONFIG-DRIVE: U:\]

[U:/]
└── Zebra/
    ├── commands/
    │   └── configure.zpl
    └── files/
        ├── WEBLINK1_CA.NRD
        ├── WEBLINK1_CERT.NRD  (optional)
        └── WEBLINK1_KEY.NRD   (optional)

Configuration steps:

For the USB configuration to be applied correctly:

  1. Perform a factory reset on the printer first
  2. Insert the USB stick into the printer
  3. Restart the printer with the USB stick plugged in
  4. Wait for the printer to read the configuration and restart automatically

The printer will not apply configurations from the USB stick during normal operation — a restart with the USB stick inserted is required.

File contents

You can also construct the file structure manually with the following file contents, or download individual files:

configure.zpl Testing (download)


{}{"device.frontpanel.line1":"LabelCloud - ZTC ZD621-203dpi ZPL"}
{}{"device.frontpanel.line2":"Configuring ..."}
{}{"weblink.logging.max_entries":"250"}
{}{"weblink.ip.conn1.location":"https://labelcloud.bloodlab.org:443/weblink?access_key=OlJWQU3192tqIe6WQFHCaX0n-Z2Sq2sGjoITBtHl_n4="}
{}{"ip.ntp.enable":"on"}
{}{"ip.ntp.servers":"pool.ntp.org time.google.com"}


{}{"device.frontpanel.line1":"LabelCloud - ZTC ZD621-203dpi ZPL"}
{}{"device.frontpanel.line2":"Configuring ..."}
{}{"ip.ntp.enable":"on"}
{}{"ip.ntp.servers":"pool.ntp.org time.google.com"}

{}{"device.command_override.active":"yes"}
{}{"device.command_override.add":"bluetooth.enable=lock"}
{}{"device.command_override.add":"mqtt.enable=lock"}
{}{"device.command_override.add":"usb.host.*=lock"}
{}{"device.command_override.add":"usb.mirror.*=lock"}

{}{"bluetooth.discoverable":"off"}
{}{"bluetooth.bonding":"off"}
{}{"bluetooth.enable_reconnect":"off"}
{}{"bluetooth.json_config_channel_enable":"off"}
{}{"bluetooth.sniff_mode_enable":"disabled"}
{}{"bluetooth.enable":"off"}

{}{"mqtt.enable":"off"}

{}{"usb.host.config_info_to_usb":"off"}
{}{"usb.host.keyboard_input":"off"}
{}{"usb.mirror.auto":"off"}
{}{"usb.mirror.enable":"off"}

{}{"weblink.cloud_connect.enable":"off"}
{}{"weblink.ip.conn1.test.test_on":"off"}
{}{"weblink.ip.conn2.test.test_on":"off"}
{}{"weblink.zebra_connector.enable":"off"}
{}{"weblink.logging.max_entries":"250"}
{}{"weblink.logging.clear":""}
{}{"weblink.ip.conn1.location":"https://labelcloud.bloodlab.org:443/weblink?access_key=OlJWQU3192tqIe6WQFHCaX0n-Z2Sq2sGjoITBtHl_n4="}
{}{"weblink.ip.conn1.retry_interval":"300"}
{}{"weblink.ip.conn1.retry_interval_random_max":"60"}

{}{"device.reset":""}

WEBLINK1_CA.NRD (download)

-----BEGIN CERTIFICATE-----
MIIDfTCCAyOgAwIBAgIQLQ8hBCr2FRQOdQ9VCVl0TDAKBggqhkjOPQQDAjA7MQsw
CQYDVQQGEwJVUzEeMBwGA1UEChMVR29vZ2xlIFRydXN0IFNlcnZpY2VzMQwwCgYD
VQQDEwNXRTEwHhcNMjYwODIzMDgzNzExWhcNMjYxMTIxMDkzNDQ1WjAXMRUwEwYD
VQQDEwxibG9vZGxhYi5vcmcwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQpOyN3
HjCs/+9/jFoWDnxR0OQTN/HJivRAd5SvsI8fHVf/cMJw1cAOiG989Ae8lN72gnb0
NlRFZGiPbi2VTKo9o4ICKzCCAicwDgYDVR0PAQH/BAQDAgeAMBMGA1UdJQQMMAoG
CCsGAQUFBwMBMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFFBrSuXwhxeriYVuzggr
Js2aNYJTMB8GA1UdIwQYMBaAFJB3kjVnxP+ozKnme9mAeXvMk/k4MDUGCCsGAQUF
BwEBBCkwJzAlBggrBgEFBQcwAoYZaHR0cDovL2kucGtpLmdvb2cvd2UxLmNydDAn
BgNVHREEIDAeggxibG9vZGxhYi5vcmeCDiouYmxvb2RsYWIub3JnMBMGA1UdIAQM
MAowCAYGZ4EMAQIBMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jLnBraS5nb29n
L3dlMS92N2JBZTB2V2FZcy5jcmwwggEDBgorBgEEAdZ5AgQCBIH0BIHxAO8AdgCv
Z4g7V7BO3Y+m2X72LqjrgQrHcWDwJF5V1gwv54WHOgAAAaAt+zLLAAAEAwBHMEUC
IGinomphcdsW7V+ZT/AHjANyxX9wizFmb3KlzAGRJr4uAiEAkxuzv9DbrMFYA2ve
tbapAzJ95pvHu4z0P8sLj46jGcIAdQDYCVU7lE96/8gWGW+UT4WrsPj8XodVJg8V
0S5yu0VLFAAAAaAt+zIuAAAEAwBGMEQCIAnBjCvLbgWFRKAWBlP5ZO3SagnMOWH2
NOOrW/gHmpAdAiBl7z1amGqvv3PWicejRmOr4pJkKN6LBfgAqHGb85L5TzAKBggq
hkjOPQQDAgNIADBFAiAZSMgM78t6IGJghRwhI6M93FZh+HpGPb/YHu2QKaH4agIh
AIFrtPb8Fl8xKaCG4Kl0TMlR21sSqcayXFfhoJMiaKoM
-----END CERTIFICATE-----

Telnet client

It is also possible to configure the printer remotely by using Telnet. Ensure you have a Telnet client available. You can either use the built-in Telnet client or use a third party client like Putty.

Open a connection to the printer using your Telnet client.

Telnet connect:

telnet <ipaddress> 9100

Once connected to the printer, copy the contents of both files listed below into your Telnet client.

Important: After sending both files via Telnet, you must manually restart the printer for the configuration to take effect. The printer will not automatically reboot after receiving Telnet commands.

WEBLINK1_CA.NRD (for Telnet):

-----BEGIN CERTIFICATE-----
MIIDfTCCAyOgAwIBAgIQLQ8hBCr2FRQOdQ9VCVl0TDAKBggqhkjOPQQDAjA7MQsw
CQYDVQQGEwJVUzEeMBwGA1UEChMVR29vZ2xlIFRydXN0IFNlcnZpY2VzMQwwCgYD
VQQDEwNXRTEwHhcNMjYwODIzMDgzNzExWhcNMjYxMTIxMDkzNDQ1WjAXMRUwEwYD
VQQDEwxibG9vZGxhYi5vcmcwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQpOyN3
HjCs/+9/jFoWDnxR0OQTN/HJivRAd5SvsI8fHVf/cMJw1cAOiG989Ae8lN72gnb0
NlRFZGiPbi2VTKo9o4ICKzCCAicwDgYDVR0PAQH/BAQDAgeAMBMGA1UdJQQMMAoG
CCsGAQUFBwMBMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFFBrSuXwhxeriYVuzggr
Js2aNYJTMB8GA1UdIwQYMBaAFJB3kjVnxP+ozKnme9mAeXvMk/k4MDUGCCsGAQUF
BwEBBCkwJzAlBggrBgEFBQcwAoYZaHR0cDovL2kucGtpLmdvb2cvd2UxLmNydDAn
BgNVHREEIDAeggxibG9vZGxhYi5vcmeCDiouYmxvb2RsYWIub3JnMBMGA1UdIAQM
MAowCAYGZ4EMAQIBMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jLnBraS5nb29n
L3dlMS92N2JBZTB2V2FZcy5jcmwwggEDBgorBgEEAdZ5AgQCBIH0BIHxAO8AdgCv
Z4g7V7BO3Y+m2X72LqjrgQrHcWDwJF5V1gwv54WHOgAAAaAt+zLLAAAEAwBHMEUC
IGinomphcdsW7V+ZT/AHjANyxX9wizFmb3KlzAGRJr4uAiEAkxuzv9DbrMFYA2ve
tbapAzJ95pvHu4z0P8sLj46jGcIAdQDYCVU7lE96/8gWGW+UT4WrsPj8XodVJg8V
0S5yu0VLFAAAAaAt+zIuAAAEAwBGMEQCIAnBjCvLbgWFRKAWBlP5ZO3SagnMOWH2
NOOrW/gHmpAdAiBl7z1amGqvv3PWicejRmOr4pJkKN6LBfgAqHGb85L5TzAKBggq
hkjOPQQDAgNIADBFAiAZSMgM78t6IGJghRwhI6M93FZh+HpGPb/YHu2QKaH4agIh
AIFrtPb8Fl8xKaCG4Kl0TMlR21sSqcayXFfhoJMiaKoM
-----END CERTIFICATE-----

configure.zpl (for Telnet): Testing


{}{"device.frontpanel.line1":"LabelCloud - ZTC ZD621-203dpi ZPL"}
{}{"device.frontpanel.line2":"Configuring ..."}
{}{"weblink.logging.max_entries":"250"}
{}{"weblink.ip.conn1.location":"https://labelcloud.bloodlab.org:443/weblink?access_key=OlJWQU3192tqIe6WQFHCaX0n-Z2Sq2sGjoITBtHl_n4="}
{}{"ip.ntp.enable":"on"}
{}{"ip.ntp.servers":"pool.ntp.org time.google.com"}


{}{"device.frontpanel.line1":"LabelCloud - ZTC ZD621-203dpi ZPL"}
{}{"device.frontpanel.line2":"Configuring ..."}
{}{"ip.ntp.enable":"on"}
{}{"ip.ntp.servers":"pool.ntp.org time.google.com"}

{}{"device.command_override.active":"yes"}
{}{"device.command_override.add":"bluetooth.enable=lock"}
{}{"device.command_override.add":"mqtt.enable=lock"}
{}{"device.command_override.add":"usb.host.*=lock"}
{}{"device.command_override.add":"usb.mirror.*=lock"}

{}{"bluetooth.discoverable":"off"}
{}{"bluetooth.bonding":"off"}
{}{"bluetooth.enable_reconnect":"off"}
{}{"bluetooth.json_config_channel_enable":"off"}
{}{"bluetooth.sniff_mode_enable":"disabled"}
{}{"bluetooth.enable":"off"}

{}{"mqtt.enable":"off"}

{}{"usb.host.config_info_to_usb":"off"}
{}{"usb.host.keyboard_input":"off"}
{}{"usb.mirror.auto":"off"}
{}{"usb.mirror.enable":"off"}

{}{"weblink.cloud_connect.enable":"off"}
{}{"weblink.ip.conn1.test.test_on":"off"}
{}{"weblink.ip.conn2.test.test_on":"off"}
{}{"weblink.zebra_connector.enable":"off"}
{}{"weblink.logging.max_entries":"250"}
{}{"weblink.logging.clear":""}
{}{"weblink.ip.conn1.location":"https://labelcloud.bloodlab.org:443/weblink?access_key=OlJWQU3192tqIe6WQFHCaX0n-Z2Sq2sGjoITBtHl_n4="}
{}{"weblink.ip.conn1.retry_interval":"300"}
{}{"weblink.ip.conn1.retry_interval_random_max":"60"}

{}{"device.reset":""}