Skip navigation

Zebra wants to anticipate the market needs and respond accordingly to latest technology trends by developing solutions that can support and anticipate customers’ demands. IoT, Artificial Intelligence, Machine learning, Robotics and Data analytics are a few of the most important trends that we will be seeing in the market in the next few years. Many of these technologies want to optimize processes and activities, increasing productivity for end-users and companies.


Link-OS is the operating system of the new Zebra printers; this smart OS supports many of these new trends.  The question that arises is how to be more Productive with Link-OS? Let’s try to respond this question with one of the uses cases that explain this new concept.


One of the more important variables that you can use to predict trends or to be more productive are the odometers. The odometers help to control the media consumption and print head lifetime.


The link-OS printers come with sixteen (16) odometer variables. Let’s review some of them.

“odometer.cut_marker_count” returns the number of cuts incurred.

“odometer.headclean” counts how many inches and centimeters have passed through the Printhead of the printer.

“odometer.headnew” counts how many inches and centimeters have passed since the head was last replaced. 

“odometer.media_marker_count” counts how many labels have passed through the printer by counting the bar sense marks.

“odometer.media_marker_count(1)(2)” are two resettable counters. each one counts how much media has passed through the printer in both inches and centimeters.

“odometer.total_print_length” returns the total length of all media over the life of the printer.


You can review the details of the utility of each odometer in the ZPL Programming Guide. The interesting point here is that by using a combination of them, you can define how much media you spend every day/week/month or year.  For example, with the media marker count, you can set up daily counters for media, so you can capture this information on a regular basis, and define some predictable behaviors of the customers. Also, with the odometer.headclean and headnew, you can predict when the printhead needs to be replaced. With the odometers.rfid.void  and rfid.valid, you could define how many tags are being printing correctly, and how many are lost because of a bad calibration or bad quality of the tag. Depending on the numbers obtained, it can tell you when the printer needs a new calibration or when to change the tags.


I hope this blog has been useful to define how to work with odometers. It is only an introduction to the topic. You will need to play several times to define the best way to use these variables. Also, you will need to define triggers based on your previous experience of the processes. There is not a precise way to suggest when you need to activate the triggers, but it should give you that tool that maybe you were seeking to predict behaviors of your customers, set up actions, and improve productivity. The odometers can be used with our Cloud Connect Link-OS Technology through web-sockets, so it makes easy IoT implementation.  Feel free to ask questions about this amazing topic, we will be here to try to answer them.


We will be reviewing additional use cases to be more productive with Link-OS in our APPFORUM event series. You’re invited to Zebra’s APPFORUM 2017; a forum where tech leaders and developers focused on building and deploying enterprise solutions, build knowledge, exchange ideas and network with peers. Please, join us to our next event at Prague from Jun 14th through Jun 16th followed by Shanghai, China and Asia – Melbourne, Australia. For more info, please, click here.

By the time most developers start working on printing, your app is almost complete or you’re fixing an old app.  You can’t figure out why it takes so much code to print something simple like some text or a table.  You are focused on just getting the code done and working so you can get back to the fun code. 


This is where I’m going to say wait!  What about the user experience?  This is where you will probably groan why?  Printers are not really part of the app.  They’re separate devices and you don’t have a choice about how they're designed. 


Part of user experience is understanding user interactions.  Your end user is interacting with your app, their mobile device or computer, the OS, the printer, the printout, and probably a few other things like a sidewalk or desk. 


Is the printer going to next to the user, or somewhere else?  Do you want them looking at your app, the printer or something else while they work?  What is the expected time it will take for the printer to start printing after the “print” button is hit?  Are multiple users going to be using the same printer, or visa versa? What happens if the printer is off or runs out of paper?  Is the printed image quality as good as you want it to be or does it look faint, small, or squiggly?


Some of these questions and the issues associated are why we originally created our Best Practices document.  As a start,  this guide will prompt you to consider how the printer should integrate with your UX.


Let me know what you think about UX as it relates to peripherals or if you have more questions to ask as a UX designer.


Robin West

Solution Architect

Zebra Technologies

From May 8th through May 12th, our team will be attending APPFORUM AMERICAS 2017 at Planet Hollywood, Las Vegas

There may be a delay in our response. If it's urgent, you can always meet us in Vegas!


See you there!


Your Zebra Developer Outreach Team


Filter Blog

By date:
By tag: