Enrolling Zebra MQTT Printers

Before you begin

  1. You can configure Zebra Mobile Printers with CPCL, EPL, or ZPL as their languages. Set the printer’s language to ZPL. ZPL printers are backward compatible and support CPCL and EPL languages. See Zebra's help documentation for more details.
  2. Make sure the printer's firmware is compatible with SOTI Connect. SOTI maintains a list of approved devices and compatible firmware versions.
Note: You can navigate to the printer's administration page and verify the firmware version by entering its IP address in a web browser. If the printer's firmware is incompatible, upgrade it to a compatible version. For details on upgrading firmware on Zebra printers, refer to Upgrading Zebra Printer Firmware.

Setting up the MQTT Configuration Settings

Procedure

  1. In a text editor, edit the following commands to include the ASCII value of your SOTI Connect root certificate.
    Note: The following command creates a .NRD SOTI Connect root certificate file on the Zebra printer.
    {}--P_q0t8QvwCIp-9Ny1G4F6xn9TpbIxj2i2EO5D
    Content-Disposition: form-data; filename="E:MQTT1_CA.NRD"; action="store"
    Content-Type: application/octet-stream
    Content-Transfer-Encoding: binary
                                
    -----BEGIN CERTIFICATE-----
    ASCII VALUE OF ROOT CERT HERE
    -----END CERTIFICATE-----
                                
    --P_q0t8QvwCIp-9Ny1G4F6xn9TpbIxj2i2EO5D--
  2. Edit the following commands and append them to the text file to enable NTP server settings on the printer.
    {}{"ip.ntp.enable":"on"}
    {}{"ip.ntp.servers":"0.north-america.pool.ntp.org,216.228.192.52"}
    {}{"rtc.timezone":"EST5EDT4,M3.2.0/02:00:00,M11.1.0/02:00:00"}
    Note: Replace the NTP server address and time zone values to make sure that you have configured MQTT Broker with the same time as your printer. If the device and the MQTT server have different times configured, communication issues may arise due to problems with validating the server's certificates.
  3. Edit the following commands and append them to the text file to enable MQTT and configure the MQTT server address on the printer. Replace the MQTTSERVER value with the FQDN/ hostname of the MQTT server.
    {}{"mqtt.conn1.qos":"2","mqtt.conn1.retry_interval_random_max":"10","mqtt.enable":"on"}
    {}{"mqtt.conn1.tenant_id":"zebra","mqtt.conn1.username":"","mqtt.conn1.password":""}
    {}{"mqtt.conn1.server_address":"mqtts://MQTTSERVER:8883"}
    {}{"mqtt.conn1.mqtt_version":"3.1.1"}
    {}{"mqtt.conn1.reset_now":"on"}
    Note: If using a paid version of HiveMQ, include the user name and password values or leave them empty when utilizing the community edition. If needed, you can also add up to two MQTT Server connection details.
  4. Append the following command to the text file to restart your printer.
    {}{"device.reset":""}                        

Deploying the Configured Settings using Zebra Setup Utilities

About this task

After preparing the configuration file, follow these steps to send the configuration file to printers:

Procedure

  1. Open the Zebra Setup Utilities application.
  2. Prepare and connect your printer to your PC.
    Note: For more information on connecting Zebra printers and installing the required drivers, refer to Zebra Setup Utilities.
  3. Choose the connected printer and open a direct line of communication by selecting Open Communication With Printer.
  4. Send the prepared configuration commands you set up earlier to the printer.
    Note: You can also save the prepared commands as a firmware (.ZPL) file and send them to the printers using Zebra's ZDownloader Utility. The following article demonstrates how to deploy the ZPL file through ZDownloader.

Approving Discovered Printers to Complete Enrollment

About this task

Once the printer establishes communication with the MQTT Broker, a notification indicating the discovered printer appears on the SOTI Connect web console. Use the following steps to approve discovered printers and complete enrollment.

Procedure

  1. Select the Alert icon on the SOTI Connect web console to view the discovered device alert.
    Note: Zebra devices are auto discovered as they are MQTT-RPC devices.
  2. Select the discovered device(s) awaiting approval, then select Approve to enroll the printer.
    Note: You can optionally set an enrollment rule to auto approve discovered devices.