Zebra Printers Programming Guide
Below you will find brief information for ZPL II. This guide provides the necessary tools for programming commands, RFID and wireless features, helping you develop custom printing solutions. Discover media handling, configurations, and detailed command parameters.
Advertisement
Advertisement
ZPL II Programming
Guide
For Firmware Version x.14 and Later
© 2007 ZIH Corp.
The copyrights in this manual and the software and/or firmware in the label printer described therein are owned by ZIH Corp. Unauthorized reproduction of this manual or the software and/or firmware in the label printer may result in imprisonment of up to one year and fines of up to $10,000 (17 U.S.C.506). Copyright violators may be subject to civil liability.
This product may contain ZPL
®
, ZPL II
®
, EPL™, and ZebraLink™ programs; Element Energy Equalizer
®
Circuit;
E
3®
; and Monotype Imaging fonts. Software © ZIH Corp. All rights reserved worldwide.
ZebraLink and all product names and numbers are trademarks, and Zebra, the Zebra logo, ZPL, ZPL II, EPL, EPL2,
Element Energy Equalizer Circuit, and E
3
Circuit are registered trademarks of ZIH Corp. All rights reserved worldwide.
All other brand names, product names, or trademarks belong to their respective holders. For additional trademark information, please see “Trademarks” on the product CD.
Proprietary Statement
This manual contains proprietary information of Zebra Technologies Corporation and its subsidiaries (“Zebra Technologies”). It is intended solely for the information and use of parties operating and maintaining the equipment described herein. Such proprietary information may not be used, reproduced, or disclosed to any other parties for any other purpose without the express, written permission of Zebra Technologies.
Product Improvements
Continuous improvement of products is a policy of Zebra Technologies. All specifications and designs are subject to change without notice.
Liability Disclaimer
Zebra Technologies takes steps to ensure that its published Engineering specifications and manuals are correct; however, errors do occur. Zebra Technologies reserves the right to correct any such errors and disclaims liability resulting therefrom.
Limitation of Liability
In no event shall Zebra Technologies or anyone else involved in the creation, production, or delivery of the accompanying product (including hardware and software) be liable for any damages whatsoever
(including, without limitation, consequential damages including loss of business profits, business interruption, or loss of business information) arising out of the use of, the results of use of, or inability to use such product, even if Zebra
Technologies has been advised of the possibility of such damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation or exclusion may not apply to you.
Part Number: 13979L-005 Rev. A
Contents
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
4
Contents
RSS (Reduced Space Symbology) Bar Code . . . . . . . . . . . . . . . . . . . . . . . . . . . .117
Change Memory Letter Designation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Download Unbounded TrueType Font . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Contents
5
5/17/07
ZPL II Programming Guide 13979L-005 Rev. A
6
Contents
^KD Select Date and Time Format (for Real Time Clock) . . . . . . . . . . . . . . . . . . . . . 253
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Contents
7
5/17/07
Programmable Pause . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
Set Mode and Language (for Real-Time Clock) . . . . . . . . . . . . . . . . . . . . . . . . . 310
ZPL II Programming Guide 13979L-005 Rev. A
8
Contents
Set RFID Read and Write Power Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
Search for Wired Print Server during Network Boot . . . . . . . . . . . . . . . . . . . . . . . 385
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Contents
9
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
10
Contents
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Contents
11
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
12
Contents
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Contents
13
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
14
Contents
Notes •
___________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Functional Contents
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
16
Functional Contents
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Functional Contents
17
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
18
Functional Contents
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Functional Contents
19
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
20
Functional Contents
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
About This Document
This section provides you with contact information, document structure and organization, and additional reference documents.
Contents
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
22
About This Document
Who Should Use This Document
Who Should Use This Document
This Guide is for programmers who are familiar working with programming languages.
How This Document Is Organized
The Guide is set up as follows:
Section
Appendixes
Description
Provides a high-level overview about this guide and Zebra Programming Language (ZPL).
Provides an alphabetical, detailed description of each ZPL command.
Provides an alphabetical, detailed description of each ZPL RFID command, and some examples of how to use them.
Provides new and modified ZPL commands for the wireless print server.
Provides a high-level overview of printer setting
Set / Get / Do (SGD) commands.
Provides a high-level overview of the wired
Set / Get / Do (SGD) commands.
Provides a high-level overview of the wireless
Set / Get / Do (SGD) commands.
The appendixes include:
Mod 10 and Mod 43 Check Digits
Glossary
Glossary of terms.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
About This Document
Contacts
23
Contacts
You can contact Zebra Technologies at the following:
Web Site
http://www.zebra.com
Technical Support via the Internet is available 24 hours per day, 365 days per year. Go to http://www.zebra.com/support .
The Americas
Regional Headquarters
Zebra Technologies International,
LLC
333 Corporate Woods Parkway
Vernon Hills, Illinois 60061.3109
U.S.A
T: +1 847 793 2600
Toll-free +1 800 423 0422
F: +1 847 913 8766
Technical Support
T: +1 847 913 2259
F: +1 847 913 2578
Hardware: [email protected]
Software: [email protected]
Customer Service Dept.
For printers, parts, media, and ribbon, please call your distributor, or contact us.
T: +1 866 230 9494
Europe, Africa, Middle East, and India
Regional Headquarters
Zebra Technologies Europe Limited
Zebra House
The Valley Centre, Gordon Road
High Wycombe
Buckinghamshire HP13 6EQ, UK
T: +44 (0)1494 472872
F: +44 (0) 1494 450103
Technical Support
T: +44 (0) 1494 768298
F: +44 (0) 1494 768210
Germany: [email protected]
France: [email protected]
Spain/Portugal: [email protected]
All other areas: [email protected]
Internal Sales Dept.
For printers, parts, media, and ribbon, please call your distributor, or contact us.
T: +44 (0) 1494 768316
F: +44 (0) 1494 768244
Asia Pacific
Regional Headquarters
Zebra Technologies Asia Pacific, LLC
16 New Industrial Road
#05-03 Hudson TechnoCentre
Singapore 536204
T: +65 6858 0722
F: +65 6885 0838
Technical Support
T: +65 6858 0722
F: +65 6885 0838
Customer Service
For printers, parts, media, and ribbon, please call your distributor, or contact us.
T: +65 6858 0722
F: +65 6885 0837
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
24
About This Document
Document Conventions
Document Conventions
The following conventions are used throughout this document to convey certain information.
Alternate Color (online only) Cross-references contain hot links to other sections in this guide. If you are viewing this guide online in .pdf format, you can click the cross-reference
( blue text ) to jump directly to its location.
LCD Display Examples Text from a printer’s Liquid Crystal Display (LCD) appears in
Bubbledot ICG
font.
Command Line Examples Command line examples appear in Courier New font. For example, type ZTools to get to the Post-Install scripts in the bin directory.
Files and Directories File names and directories appear in Courier New font. For example, the Zebra<version number>.tar
file and the /root directory.
Icons Used
Identifies features that are available in printers with firmware version V60.15.x, V50.15.x, or later.
Identifies features that are available in printers with firmware version v60.14, v50.14, or later.
Important •
Advises you of information that is essential to complete a task.
Note •
Indicates neutral or positive information that emphasizes or supplements important points of the main text.
Example •
Provides an example, often a scenario, to better clarify a section of text.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
About This Document
Document Conventions
25
Illustration Callouts Callouts are used when an illustration contains information that needs to be labeled and described. A table that contains the labels and descriptions follows the
graphic. Figure 1 provides an example.
Figure 1 • Sample Figure with Callouts
1 2
CODE 49 BAR CODE ZPL II CODE
^XA
^FO150,100^BY3
^B4N,20,A,A
^FD12345ABCDE^FS
^XZ
1
2
ZPL Code
Generated Label
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
26
About This Document
Document Conventions
Notes •
___________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
1
Introduction
This guide is the unabridged, alphabetical reference of programming commands supported in the firmware. This includes all ZPL commands and SGD commands.
•
•
Important •
These are important points to note when using ZPL and SGD commands:
ZPL and SGD commands should be sent to the printer as separate files.
Certain settings can be controlled by both ZPL and SGD. Configuration changes made in
ZPL can affect configuration changes made in SGD.
Firmware You can get the printer’s firmware version by printing out a configuration label.
For instructions to do so, see your printer’s user guide.
Note •
For firmware upgrades go to: www.zebra.com
.
Many word processors or a text editor is capable of creating ASCII files can be used to recreate most examples in this guide. However, for other encodings such as Unicode, a text editor such as Microsoft Notepad is needed.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
28
Introduction
Notes •
___________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
2
ZPL Commands
5/17/07
This section contains the complete alphabetical listing of ZPL II commands.
Description This heading provides an explanation of how the command is used, what it is capable of, and any defining characteristics it has.
Format Format explains how the command is syntactically arranged and what parameters it contains.
For Example The ^B8 command prints a EAN-8 bar code. The format of the ^B8 command is: ^B8o,h,f,g . It is arranged with the caret symbol (^), the command code
( B8 ), and the parameters and are replaced with supported values.
Parameters If a command has values that can be defined to make its function more specific, these are outlined as parameters. Parameters typically have Accepted Values and Default
Values.
Still using the
^B8
example, the h
parameter is defined as: h
= bar code height (in dots)
Accepted Values:
1 to 32000
Default Value: value set by ^BY
If the command has no parameters – for example
~JA
(Cancel All) – the parameter heading is removed, indicating that the format of the command ( ~JA ) is acceptable ZPL II code.
ZPL II Programming Guide 13979L-005 Rev. A
30
ZPL Commands
Example •
When the command is best clarified in context, an example of the
ZPL II code is provided. Text indicating exact code entered is printed in an easily recognizable Courier font. An example of code using the
^B8
command looks like this:
^XA
^FO50,50
^B8N,100,Y,N
^FD1234567^FS
^XZ
Notice that the ^B8 parameter letters have been replaced with real values that apply to the command. In this example
N
,
100
,
Y
,
N
have been entered.
Comment This section is reserved for notes that are of value to a programmer, warnings of potential command interactions, or command-specific information that should be taken into consideration.
Example •
An example comment is: This command works only when the printer is idle, or This command is ignored if a value exceeds the parameter limits.
Comments are also included next to parameters if they apply directly to a particular setting.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
Basic ZPL Exercises and Examples
31
Basic ZPL Exercises and Examples
The purpose of these exercises is to introduce basic ZPL commands to novice ZPL users.
Make sure this checklist is complete:
Load the printer with labels that are big enough to give you ample space to work with.
Print a configuration label (CANCEL test).
Look at the configuration label and make sure that the LEFT POSITION is set to
000 and LABEL TOP is set to 000 .
Determine the printer’s resolution. It is listed on the configuration label. 8/MM
=
200 dpi, 12/MM
= 300 dpi and 24/MM = 600 dpi.
Tips
These are some tips when using ZPL:
• Use the DOS text editor to write ZPL files.
• Save the file as a .
txt file and copy it to the printer from DOS command line.
Before you begin
Some things that are important to understand before you begin are:
• 200 dpi means the resolution of the printhead is 200 dots per inch. If you program the printer to draw a line 100 dots long that equals a half inch. 100 dots on a
300 dpi printer prints a line 1/3 inch long.
• The home position that all your coordinates are referencing is at the left-hand trailing edge of the label as the label comes out of the printer. (There are some exceptions to this.)
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
32
ZPL Commands
Basic ZPL Exercises and Examples
Exercises
The exercises start simple and gradually progress to give you an opportunity to try a variety of commonly used ZPL commands. Not all commands are covered, but this should be a good core of commands to learn. Some commands may not be supported due to the firmware version in your printer.
Exercise 1 • This exercise shows you how to specify a location for an entered name.
1.
Print your name on the label.
2.
Start by printing just your name on the label. Use this format as a model:
Important •
Your name goes where you see xxxxxxxxxxx in the second line of code.
3.
Send this format to the printer:
1
2
3
4
^XA
^FO50,50^ADN,36,20^FD
xxxxxxxxxxx
^FS
^XZ
5
1
2
3
4
5
Every format starts with the ^XA command
^FO (field origin) command
^FS (field separator) command
Every format ends with the ^XZ command
^FD (field data) command
4.
When the label prints correctly, alter the first number after the ^FOx.
See how that change affects the print position. Alter the second number after the ^FO50,x and see how that the print position.
Font instruction
^ADN
1.
Alter the numbers after the ^ADN,x,x command.
• 18,10 is the smallest size you can make the D font.
• The first number is the height of the font in dots. The second number is the width in dots.
• You can use direct multiples up to ten times that size as a maximum.
Example •
180,100 is the largest you can make the D font.
• 25,18 would not be a valid size. The printer rounds to the next recognizable size.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
Basic ZPL Exercises and Examples
33
2.
Check the font matrices tables for other fonts to try. See
Fonts and Bar Codes on page 555 .
3.
Try the zero scalable font ^A0N,x,x .
This font is scalable, and you can choose any height and width.
Rotation commands
1.
Change ^ADN to ^ADR , and then ^ADI , and then ^ADB .
See how the print position changes.
2.
Add more fields.
3.
Add two more fields to print directly under your name using the ^ADN,36,20 font and size:
Your street address
Your city, state, zip
4.
You must add two more lines of code that start off with:
^XA
^FO50,50^ADN,36,20^FDxxxxxxxxxxx^FS
^FO (fill in the rest)
^FO (fill in the rest)
^XZ
Make sure all these fields print in the same font and size and left side of fields has same vertical alignment.
Your name
1200 W Main Street
Anytown, Il 60061
Exercise 2 • Boxes and lines
1.
Use the address format from Exercise 1.
2.
Add this new line to your existing format:
^FO50,200^GB200,200,2^FS
This prints a box one wide by one inch long and the thickness of the line is 2 dots.
3.
Reposition and resize the square so that it goes around the name and address uniformly.
4.
Print a line by adding:
^FO50,300^GB400,0,4,^FS
This prints a horizontal line two inches wide by 4 dots thick.
5.
Print a vertical line using this code:
^F0100,50^GBO,400,4^FS
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
34
ZPL Commands
Basic ZPL Exercises and Examples
Exercise 3 • Bar codes —
^B3
code 39 bar code
1.
Write the following format and send to the printer:
^XA
^FO50,50^B3N,N,100,Y,N^FD123456^FS
^XZ
2.
Try changing each of the parameters in the ^B3 string so you can see the effects.
^B3o,e,h,f,g
^BY
Important •
For valid parameter choices, see
3.
Insert the
^BY
command just before the
^B3
to see how the narrow bar width can be altered.
^FO50,50^BY2^B3..etc ^BYx, acceptable values for x are 1 through 10
4.
Alter the ratio of the narrow to wide bar.
^FO50,50^BY2,3^B3..etc ^BY2,x acceptable values for x are
2.1 through 3 in .1 increments
5.
Print out a ^B3 bar code with the interpretation line on top of the bar code and the bar code rotated 90 degrees.
6.
Add a ^PQ just before the ^XZ to print several labels.
^PQ4
^ XZ
^PR
Print rate (in inches per second)
7.
Add a ^PR command after the ^XA at the beginning of the format to change the print rate
(print speed).
^XA
^PR4 then try ^PR6 ^PRx acceptable values for x are 2 through
12 (check printer specs)
See how the print speed affects the print quality of the bar code. You may need to increase the printer darkness setting at higher print speeds.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
Basic ZPL Exercises and Examples
35
Exercise 4 •
^SN
— Serial Number command
1.
Send this format to the printer:
^XA
^FO100,100^ADN,36,20^SN001,1,Y^FS
^PQ3
^XZ
To vary the ^SNv,n,z to exercise increment/decrement and leading zeros functions, consult this guide.
If your serial number contains alpha and numeric characters, you can increment or decrement a specific segment of the data even if it is in the middle, as this sample sequence shows:
ABCD1000EFGH, ABCD1001EFGH, ABCD1002EFGH
2.
Send this file to the printer and to see how it increments the serial number. The
^SF command can also work with alpha characters.
^XA
^FO100,100^ADN,36,20^FDABCD1000EFGH^SF%%%%dddd%%%%,10000^FS
^PQ15
^XZ
Notice how the field data character position aligns with the ^SF data string:
^ F D A B C D 1 0 0 0 E F G H
^ S F % % % % d d d d % % % %
1 0 0 0 0
2 0 0 0 0
3 0 0 0 0
And on through…
1 0 1 4 0 0 0 0
The last label prints ABCD1014EFGH.
The % is placed in positions that you do not want to increment or decrement, d = decimal, 10000 = increment value.
For more details on ^SF
.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
36
ZPL Commands
Basic ZPL Exercises and Examples
Exercise 5 • Saving a template to memory.
^IS
and image save and image load.
Note •
This exercise helps you troubleshoot your code against the errors you see on your labels.
1.
Send this format to the printer:
^XA
^FO20,30^GB750,1100,4^FS
^FO20,30^GB750,200,4^FS
^FO20,30^GB750,400,4^FS
^FO20,30^GB750,700,4^FS
^FO20,226^GB325,204,4^FS
^FO30,40^ADN,36,20^FDShip to:^FS
^FO30,260^ADN,18,10^FDPart number #^FS
^FO360,260^ADN,18,10^FDDescription:^FS
^FO30,750^ADN,36,20^FDFrom:^FS
^ISR:SAMPLE.GRF^FS
^XZ
2.
Send this format:
^XA
^ILR:SAMPLE.GRF^FS
^FO150,125^ADN,36,20^FDAcme Printing^FS
^FO60,330^ADN,36,20^FD14042^FS
^FO400,330^ADN,36,20^FDScrew^FS
^FO70,480^BY4^B3N,,200^FD12345678^FS
^FO150,800^ADN,36,20^FDMacks Fabricating^FS
^XZ
In this way the template only needs to be sent one time to the printer’s memory. Subsequent formats can be sent recalling the template and merging variable data into the template. In this exercise, the file was saved in the printers
R:
memory, which is volatile.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
Basic ZPL Exercises and Examples
37
Exercise 6 • ^DF and ^XF — Download format and recall format
Similar concept to ^IS and ^IL command. ^IS and ^IL processes faster in the printer than
^DF and ^XF .
This is how the ^DF and ^XF format structure produces a label similar to the ^IS / ^IL sample you just tried.
Figure 2 • Download and Recall Format
1
ZPL II CODE
^XA
^DFR:SAMPLE.GRF^FS
^FO20,30^GB750,1100,4^FS
^FO20,30^GB750,200,4^FS
^FO20,30^GB750,400,4^FS
^FO20,30^GB750,700,4^FS
^FO20,226^GB325,204,4^FS
^FO30,40^ADN,36,20^FDShip to:^FS
^FO30,260^ADN,18,10^FDPart number #^FS
^FO360,260^ADN,18,10^FDDescription:^FS
^FO30,750^ADN,36,20^FDFrom:^FS
^FO150,125^ADN,36,20^FN1^FS (ship to)
^FO60,330^ADN,36,20^FN2^FS(part num)
^FO400,330^ADN,36,20^FN3^FS(description)
^FO70,480^BY4^B3N,,200^FN4^FS(barcode)
^FO150,800^ADN,36,20^FN5^FS (from)
^XZ
^XA
^XFR:SAMPLE.GRF
^FN1^FDAcme Printing^FS
^FN2^FD14042^FS
^FN3^FDScrew^FS
^FN4^FD12345678^FS
^FN5^FDMacks Fabricating^FS
^XZ
GENERATED LABEL
2
1
2
Download format code
Recall format call that generates the generated label in
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
38
ZPL Commands
Basic ZPL Exercises and Examples
Exercise 7 • Asian and Unicode Encodings
This exercise works in printers with firmware version v60.14, v50.14, or later.
In each of the following examples, the format is saved in the corresponding encoding before being sent down to the printer and the ZPL script was made in Microsoft Notepad, a basic text editor. The characters were inserted from the character map in Windows or typed from the keyboard.
Example •
This is an example of using an Asian encoding, such as UHANGUL, with ASCII text. Using the
CI26
command tells the printer to recognize any byte less than
7F
as ASCII text and every byte above as the first byte of UHANGUAL encoding:
ZPL II CODE GENERATED LABEL
Example •
This is an example of using the Unicode encoding, UTF-8:
ZPL II CODE
GENERATED LABEL
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^A
39
^A
Scalable/Bitmapped Font
Description The
^A
command specifies the font to use in a text field.
^A
designates the font for the current ^FD statement or field. The font specified by ^A is used only once for that
^FD entry. If a value for ^A is not specified again, the default ^CF font is used for the next
^FD
entry.
Format
^Afo,h,w
Important •
Parameter f is required. If f is omitted it defaults to the last value of the ^CF command.
This table identifies the parameters for this format:
Command Details
f = font name
Accepted Values: A through Z , and 0 to 9
Any font in the printer (downloaded, EPROM, stored fonts, fonts A through Z and 0 to 9 ).
o = field orientation
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: the last accepted
^FW
value or the
^FW
default h = Character Height
(in dots)
Scalable
Accepted Values:
10 to 32000
Default Value: last accepted
^CF
Bitmapped
Accepted Values: multiples of height from 1 to 10 times the standard height, in increments of 1
Default Value: last accepted ^CF w
= width (in dots)
Scalable
Accepted Values:
10
to
32000
Default Value: last accepted ^CF
Bitmapped
Accepted Values: multiples of width from 1 to 10 times the standard width, in increments of 1
Default Value: last accepted ^CF
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
40
ZPL Commands
^A
Scalable Font Command
Example •
This is an example of a scalable font command:
Bitmap Font Command
Example •
This is an example of a bitmap font command:
For reference, see Standard Printer Fonts on page 556
,
Zebra Code Page 850 on page 548 ,
Fonts and Bar Codes on page 555
, and
.
Comments Fonts are built using a matrix that defines standard height-to-width ratios. If you specify only the height or width value, the standard matrix for that font automatically determines the other value. If the value is not given or a 0 (zero) is entered, the height or width is determined by the standard font matrix.
This command interacts with the justification parameters of ^FO and ^FT and with the field
direction parameter of ^FP. For output and examples, see Field Interactions on page 579 .
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^A@
41
^A@
Use Font Name to Call Font
Description The
^A@
command uses the complete name of a font, rather than the character designation used in ^A . Once a value for ^A@ is defined, it represents that font until a new font name is specified by ^A@ .
Format ^A@o,h,w,d:o.x
This table identifies the parameters for this format:
Parameters Details
o h
= field orientation
= character height (in dots)
Accepted Values:
N = normal
R = rotates 90 degrees (clockwise)
I = inverted 180 degrees
B
= read from bottom up, 270 degrees
Default Value:
N or the last ^FW value
Default Value: specifies magnification by w (character width) or the last accepted
^CF
value. Uses the base height if none is specified.
Scalable The value is the height in dots of the entire character block. Magnification factors are unnecessary, because characters are scaled.
Bitmapped The value is rounded to the nearest integer multiple of the font’s base height, then divided by the font’s base height to give a magnification nearest limit.
w = width (in dots)
Default Value: specifies magnification by h (height) or the last accepted ^CF none is specified.
value. Specifies the base width is used if
Scalable The value is the width in dots of the entire character block. Magnification factors are unnecessary, because characters are scaled.
Bitmapped The value rounds to the nearest integer multiple of the font’s base width, then divided by the font’s base width to give a magnification nearest limit.
d = drive location of font Accepted Values:
R:
,
E:
,
B:
, and
A:
Default Value:
R :
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
42
ZPL Commands
^A@
Parameters
o
= font name x = extension
.TTE is only supported in firmware version V60.14.x,
V50.14.x, or later.
Details
Accepted Values: any valid font
Default Value: if an invalid or no name is entered, the default set by
^CF
is used. If no font has been specified in
^CF
, font
A is used.
The font named carries over on all subsequent ^A@ commands without a font name.
Accepted Values:
.FNT = font
.TTF = TrueType Font
.TTE = TrueType Extension
7
8
5
6
3
4
1
2
Example •
This example is followed by a table that identifies the called out lines of code:
13979L-005 Rev. A
3
4
5
6
7
8
1
2
Starts the label format.
Searches non-volatile printer memory ( B: ) for CYRI_UB.FNT. When the font is found, the ^A@ command sets the print orientation to normal and the character size to 50 dots by 50 dots.
Sets the field origin at 100,100.
Prints the field data, Zebra Printer Fonts on the label.
Calls the font again and character size is decreased to 40 dots by 40 dots.
Sets the new field origin at 100,150.
Prints the field data, This uses the B:CYRI_UB.FNT on the label.
Ends the label format.
For reference, see Zebra Code Page 850 on page 548 ,
Fonts and Bar Codes on page 555 , and
.
ZPL II Programming Guide 5/17/07
ZPL Commands
^B0
43
^B0
Aztec Bar Code Parameters
Description The
^B0
command creates a two-dimensional matrix symbology made up of square modules arranged around a bulls-eye pattern at the center.
Note •
The Aztec bar code works with firmware version v60.13.0.11A and v50.13.2 or later.
Format ^B0a,b,c,d,e,f,g
This table identifies the parameters for this format:
Parameters Details
a
= orientation
Accepted Values:
N = normal
R = rotated
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value b = magnification factor
Accepted Values:
1
to
10
Default Value:
1 on 150 dpi printers
2 on 200 dpi printers
3
on
300
dpi printers
6 on 600 dpi printers c
= extended channel interpretation code indicator d
= error control and symbol size/type indicator
Accepted Values:
Y = if data contains ECICs
N = if data does not contain ECICs
Default Value: N
Accepted Values:
0 = default error correction level
01
to
99 = error correction percentage (minimum)
101 to 104 = 1 to 4-layer compact symbol
201 to 232 = 1 to 32-layer full-range symbol
300 = a simple Aztec “Rune”
Default Value: 0 e
= menu symbol indicator
Accepted Values:
Y
= if this symbol is to be a menu (bar code reader initialization) symbol
N = if it is not a menu symbol
Default Value: N
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
44
ZPL Commands
^B0
Parameters
f
= number of symbols for structured append g = optional ID field for structured append
Details
Accepted Values: 1 through 26
Default Value: 1
The ID field is a text string with 24-character maximum
Default Value: no ID
Example •
This is an example of the ^B0 command:
ZPL II CODE
^XA
^B0R,7,N,0,N,1,0
^FD 7. This is testing label 7^FS
^XZ
GENERATED LABEL
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^B1
45
^B1
Code 11 Bar Code
Description The
^B1
command produces the Code 11 bar code, also known as USD-8 code. In a Code 11 bar code, each character is composed of three bars and two spaces, and the character set includes 10 digits and the hyphen (-).
•
^B1
supports print ratios of 2.0:1 to 3.0:1.
• Field data (
^FD
) is limited to the width (or length, if rotated) of the label.
Format ^B1o,e,h,f,g
Important •
If additional information about the Code 11 bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o
= orientation e h
= check digit
= bar code height (in dots) f
= print interpretation line g = print interpretation line above code
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current
^FW
value
Accepted Values:
Y =
1 digit
N = 2 digits
Default Value: N
Accepted Values: 1 to 32000
Default Value: value set by ^BY
Accepted Values:
Y = yes
N = no
Default Value: Y
Accepted Values:
Y = yes
N = no
Default Value: N
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
46
ZPL Commands
^B1
Example •
This is an example of the Code 11 bar code:
ZPL II CODE CODE 11 BAR CODE
^XA
^FO100,100^BY3
^B1N,N,150,Y,N
^FD123456^FS
^XZ
0 1 2
CODE 11 BAR CODE CHARACTERS
3 4 5 6 7 8
Internal Start/Stop Character:
When used as a stop character:
is used with 1 check digit is used with 2 check digits
9 -
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^B2
47
^B2
Interleaved 2 of 5 Bar Code
Description The
^B2
command produces the Interleaved 2 of 5 bar code, a high-density, self-checking, continuous, numeric symbology.
Each data character for the Interleaved 2 of 5 bar code is composed of five elements: five bars or five spaces. Of the five elements, two are wide and three are narrow. The bar code is formed by interleaving characters formed with all spaces into characters formed with all bars.
• ^B2 supports print ratios of 2.0:1 to 3.0:1.
• Field data ( ^FD ) is limited to the width (or length, if rotated) of the label.
Format ^B2o,h,f,g,e,j
Important •
If additional information about the Interleaved 2 of 5 bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o
= orientation h
= bar code height (in dots) f
= print interpretation line g
= print interpretation line above code e
= calculate and print
Mod 10 check digit
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current
^FW
value
Accepted Values: 1 to 32000
Default Value: value set by ^BY
Accepted Values:
Y = yes
N = no
Default Value: Y
Accepted Values:
Y = yes
N = no
Default Value: N
Accepted Values:
Y = yes
N = no
Default Value: N
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
48
ZPL Commands
^B2
Example •
This is an example of an Interleaved 2 of 5 bar code:
ZPL II CODE INTERLEAVED 2 OF 5 BAR CODE
^XA
^FO100,100^BY3
^B2N,150,Y,N,N
^FD123456^FS
^XZ
0
INTERLEAVED 2 OF 5 BAR CODE CHARACTERS
1 2 3 4 5
Start/Stop (internal)
6 7 8 9
Comments The total number of digits in an Interleaved 2 of 5 bar code must be even. The printer automatically adds a leading 0 (zero) if an odd number of digits is received.
The Interleaved 2 of 5 bar code uses the Mod 10 check-digit scheme for error checking. For
more information on Mod 10 check digits, see Mod 10 Check Digit on page 570
.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^B3
49
^B3
Code 39 Bar Code
Description The Code 39 bar code is the standard for many industries, including the U.S.
Department of Defense. It is one of three symbologies identified in the American National
Standards Institute (ANSI) standard MH10.8M-1983. Code 39 is also known as USD-3 Code and 3 of 9 Code.
Each character in a Code 39 bar code is composed of nine elements: five bars, four spaces, and an inter-character gap. Three of the nine elements are wide; the six remaining elements are narrow.
•
^B3
supports print ratios of 2.0:1 to 3.0:1.
• Field data (
^FD
) is limited to the width (or length, if rotated) of the label.
• Code 39 automatically generates the start and stop character (*).
• Asterisk (*) for start and stop character prints in the interpretation line, if the interpretation line is turned on.
• Code 39 is capable of encoding the full 128-character ASCII set.
Format ^B3o,e,h,f,g
Important •
If additional information about the Code 39 bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters Details
o = orientation
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value e
= Mod-43 check digit
Accepted Values:
Y = yes
N = no
Default Value: N h
= bar code height (in dots)
Accepted Values: 1 to 32000
Default Value: value set by
^BY
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
50
ZPL Commands
^B3
Parameters
f
= print interpretation line g
= print interpretation line above code
Details
Accepted Values:
Y = yes
N = no
Default Value: Y
Accepted Values:
Y = yes
N = no
Default Value: N
Example •
This is an example of a Code 39 bar code:
ZPL II CODE CODE 39 BAR CODE
^XA
^FO100,100^BY3
^B3N,N,100,Y,N
^FD123ABC^FS
^XZ
CODE 39 BAR CODE CHARACTERS
0 1 2 3 4 5 6 7 8 9
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
.
$ / + % Space
Comments Extended ASCII is a function of the scanner, not of the bar code. Your scanner must have extended ASCII enabled for this feature to work. To enable extended ASCII in the
Code 39, you must first encode +$ in your ^FD statement. To disable extended ASCII, you must encode -$ in your
^FD
statement.
Example •
This example encodes a carriage return with line feed into a Code 39 bar code:
ZPL II CODE GENERATED LABELS
^XA
^FO20,20
^B3N,N,100,Y
^FDTEST+$$M$J-$^FS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^B3
51
Full ASCII Mode for Code 39
Code 39 can generate the full 128-character ASCII set using paired characters as shown in these tables:
ASCII Code 39
DC1
DC2
DC3
DC4
NAK
SYN
ETB
CAN
EM
SUB
ESC
HT
LF
VT
FF
CR
SO
SI
DLE
FS
FS
RS
US
SOH
STX
ETX
EOT
ENQ
ACK
BEL
BS
$Q
$R
$S
$T
$U
$V
$W
$X
$Y
$Z
%A
$M
$N
$O
$P
$I
$J
$K
$L
%B
%C
%D
%E
$A
$B
$C
$D
$E
$F
$G
$H
Table 1 • Code 39 Full ASCII Mode
ASCII Code 39
/
0
.
-
)
*
++
‘
3
4
5
1
2
<
=
;
:
>
?
8
9
6
7
$
%
&
‘
(
SP
!
“
#
.
-
/O
O
/I
/J
/K
/L
3
4
5
1
2
/Z
%F
%G
%H
8
9
6
7
%I
%J
Space
/A
/B
/C
/D
/E
/F
/G
/H
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
52
ZPL Commands
^B3
Table 2 • Code 39 Full ASCII Mode
ASCII Code 39
R
S
T
N
O
P
Q
H
I
J
K
L
M
@
A
B
C
D
E
F
G
U
V
W
X
Y
Z
]
^
\
[
_
R
S
T
N
O
P
Q
H
I
J
K
L
M
%V
A
B
C
D
E
F
G
U
V
W
X
Y
Z
%K
%L
%M
%N
%O
ASCII Code 39 w x y u v s t m n o p q r
}
| z
{
~
DEL k j l h
I f g b c
‘ a d e
+S
+T
+U
+V
+W
+X
+Y
+M
+N
+O
+P
+Q
+R
+F
+G
+H
+I
+J
+K
+L
%W
+A
+B
+C
+D
+E
+Z
%P
%Q
%R
%S
%T, %X
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^B4
53
^B4
Code 49 Bar Code
Description The
^B4
command creates a multi-row, continuous, variable-length symbology capable of encoding the full 128-character ASCII set. It is ideally suited for applications requiring large amounts of data in a small space.
The code consists of two to eight rows. A row consists of a leading quiet zone, four symbol characters encoding eight code characters, a stop pattern, and a trailing quiet zone. A separator bar with a height of one module separates each row. Each symbol character encodes two characters from a set of Code 49 characters.
•
^B4
has a fixed print ratio.
• Rows can be scanned in any order.
Format ^B4o,h,f,m
Important •
For additional information about the Code 49 bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o
= orientation h
= height multiplier of individual rows
Details
Accepted Values:
N
= normal
R
= rotated 90 degrees (clockwise)
I = inverted 180 degrees
B
= read from bottom up, 270 degrees
Default Value: current ^FW value
Accepted Values: 1 to height of label
Default Value: value set by
^BY
This number multiplied by the module equals the height of the individual rows in dots. 1 is not a recommended value.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
54
ZPL Commands
^B4
Parameters
f
= print interpretation line m
= starting mode
Details
Accepted Values:
N = no line printed
A = print interpretation line above code
B = print interpretation line below code
Default Value: N
When the field data exceeds two rows, expect the interpretation line to extend beyond the right edge of the bar code symbol.
Accepted Values:
0 = Regular Alphanumeric Mode
1 =
Multiple Read Alphanumeric
2 = Regular Numeric Mode
3 = Group Alphanumeric Mode
4 = Regular Alphanumeric Shift 1
5 =
Regular Alphanumeric Shift 2
A = Automatic Mode. The printer determines the starting mode by analyzing the field data.
Default Value: A
Example •
This is an example of a Code 49 bar code:
ZPL II CODE
CODE 49 BAR CODE
^XA
^FO150,100^BY3
^B4N,20,A,A
^FD12345ABCDE^FS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^B4
55
Table 3 • Code 49
Field Data
Set
Unshifted
Character Set
Shift 1
Character Set
Shift 2
Character Set
S
T
U
V
O
P
Q
R
K
L
M
N
G
H
I
J
C
D
E
F
8
9
A
B
6
7
4
5
2
3
0
1
W
X
Y
Z
.
-
SPACE
$
/
++
%
< (Shift 1)
> (Shift 2)
: (N.A.)
; (N.A.)
? (N.A.)
= (Numeric Shift)
S
T
U
V
O
P
Q
R
K
L
M
N
I
J
G
H
C
D
E
F
A
B
8
9
6
7
4
5
2
3
0
1
W
X
Y
Z
-
.
SPACE
$
/
++
%
Code 49 Shift 1 and 2 Character Substitutions
v w t u r s p q l m n o j k h
I
‘
DEL
|
{
}
~ z
_ x y f g d e b c
] a
\
[
?
@
=
>
;
<
SI
DLE
DC1
DC2
DC3
DC4
NAK
SYN
BEL
BS
HT
LF
VT
FF
CR
SO
#
&
SOH
STX
ETX
EOT
ENQ
ACK
’
ESC
FS
GS
RS
US
!
“
ETB
CAN
EM
SUB
(
)
Null
*
:
, reserved
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
56
ZPL Commands
^B4
Code 49 Field Data Character Set
The ^FD data sent to the printer when using starting modes 0 to 5 is based on the
Code 49 Internal Character Set. This is shown in the first column of the Code 49 table on the previous page. These characters are Code 49 control characters:
: ; < = > ?
Valid field data must be supplied when using modes 0 to 5. Shifted characters are sent as a two-character sequence of a shift character followed by a character in the unshifted character set.
Example •
To encode a lowercase a, send a > (Shift 2) followed by an uppercase A. If interpretation line printing is selected, a lowercase a prints in the interpretation line. This reflects what the output from the scanner reads. Code 49 uses uppercase alphanumeric characters only.
If an invalid sequence is detected, the Code 49 formatter stops interpreting field data and prints a symbol with the data up to the invalid sequence. These are examples of invalid sequences:
• Terminating numeric mode with any characters other than 0 to 9 or a Numeric Space.
• Starting in Mode 4 (Regular Alphanumeric Shift 1) and the first field data character is not in the Shift 1 set.
• Starting in Mode 5 (Regular Alphanumeric Shift 2) and the first field data character is not in the Shift 2 set.
• Sending Shift 1 followed by a character not in the Shift 1 set.
• Sending Shift 2 followed by a character not in the Shift 2 set.
• Sending two Shift 1 or Shift 2 control characters.
Advantages of Using the Code 49 Automatic Mode
Using the default (Automatic Mode) completely eliminates the need for selecting the starting mode or manually performing character shifts. The Automatic Mode analyzes the incoming
ASCII string, determines the proper mode, performs all character shifts, and compacts the data for maximum efficiency.
Numeric Mode is selected or shifted only when five or more continuous digits are found.
Numeric packaging provides no space advantage for numeric strings consisting of fewer than eight characters.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^B5
57
^B5
Planet Code bar code
Description The
^B5
command is supported in all printers as a resident bar code.
Note •
Accepted bar code characters are 0 - 9.
Format ^B5o,h,f,g
This table identifies the parameters for this format:
Parameters
o
= orientation code h f
= bar code height (in dots)
= interpretation line g
= determines if the interpretation line is printed above the bar code
Details
Accepted Values:
N = normal
R = rotated
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value
Accepted Values: 1 to 9999
Default Value: value set by
^BY
Accepted Values:
N = no
Y = yes
Default Value: N
Accepted Values:
N = no
Y = yes
Default Value: N
Example •
This is an example of a Planet Code bar code:
GENERATED LABEL ZPL II CODE
^XA
^FO150,100^BY3
^B5N,100,Y,0
^FD12345678901^FS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
58
ZPL Commands
^B7
^B7
PDF417 Bar Code
Description The
^B7
command produces the PDF417 bar code, a two-dimensional, multirow, continuous, stacked symbology. PDF417 is capable of encoding over 1,000 characters per bar code. It is ideally suited for applications requiring large amounts of information at the time the bar code is read.
The bar code consists of three to 90 stacked rows. Each row consists of start and stop patterns and symbol characters called code-words. A code-word consists of four bars and four spaces.
A three code-word minimum is required per row.
The PDF417 bar code is also capable of using the structured append option ( ^FM ), which allows you to extend the field data limitations by printing multiple bar codes. For more
information on using structured append, see ^FM on page 176 .
• PDF417 has a fixed print ratio.
• Field data (
^FD)
is limited to 3K of character data.
Format ^B7o,h,s,c,r,t
This table identifies the parameters for this format:
Parameters
o
= orientation h = bar code height for individual rows (in dots) s = security level
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value
Accepted Values:
1
to height of label
Default Value: value set by ^BY
This number multiplied by the module equals the height of the individual rows in dots. If this number is not specified, the overall bar code height, divided by the number of rows, equals the height of the individual rows in dots, where the overall bar code height is defined by the ^BY command. 1 is not a recommended value.
Accepted Values:
1
to
8
(error detection and correction)
Default Value:
0
(error detection only)
This determines the number of error detection and correction code-words to be generated for the symbol. The default level provides only error detection without correction. Increasing the security level adds increasing levels of error correction and increases the symbol size.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^B7
59
Parameters
c
= number of data columns to encode r
= number of rows to encode t
= truncate right row indicators and stop pattern
Details
Accepted Values:
1 to 30
Default Value:
1:2 (row-to-column aspect ratio)
You can specify the number of code-word columns giving control over the width of the symbol.
Accepted Values:
3 to 90
Default Value:
1:2 (row-to-column aspect ratio)
You can specify the number of symbol rows giving control over the height of the symbol. For example, with no row or column values entered, 72 code-words would be encoded into a symbol of six columns and 12 rows.
Depending on code-words, the aspect ratio is not always exact.
Accepted Values:
N = no truncation
Y = perform truncation
Default Value:
N
Example •
This is an example of a PDF417 bar code:
ZPL II CODE
^XA
^BY2,3
^FO10,10^B7N,5,5,,83,N
^FDZebra Technologies
Corporation strives to be the expert supplier of innovative solutions to speciality demand labeling and ticketing problems of business and government.
We will attract and retain the best people who will understand our customer's needs and provide them with systems, hardware, software, consumables and service offering the best value, high quality, and reliable performance, all delivered in a timely manner.
^FS^XZ
PDF417 BAR CODE
ZPL II Programming Guide 13979L-005 Rev. A
60
ZPL Commands
^B7
Example •
This is an example of a PDF417 without and with truncation selected:
Example •
This example shows the ^B7 command used with field hex ( ^FH ) characters:
ZPL II CODE GENERATED LABEL
^XA
^FO50,50^BY3,3.0^B7N,8,5,7,21,N
^FH_^FD[)>_1E06_1DP12345678_1DQ160
_1D1JUN123456789A2B4C6D8E_1D20LA6-987
_1D21L54321 ZES_1D15KG1155
_1DBSC151208_1D7Q10GT_1E_04^FS
^XZ
Comments Noted in this bulleted list:
• If both columns and rows are specified, their product must be less than 928.
• No symbol is printed if the product of columns and rows is greater than 928.
• No symbol is printed if total code-words are greater than the product of columns and rows.
• Serialization is not allowed with this bar code.
• The truncation feature can be used in situations where label damage is not likely. The right row indicators and stop pattern is reduced to a single module bar width. The difference between a non truncated and a truncated bar code is shown in the previous examples.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^B7
61
Special Considerations for ^BY When Using PDF417
When used with ^B7 , the parameters for the ^BY command are:
w
=
module width (in dots)
Accepted Values:
2
to
10
Default Value: 2
r
=
ratio
Fixed Value:
3
(ratio has no effect on PDF417)
h
=
height of bars (in dots)
Accepted Values: 1 to 32000
Default Value: 10
PDF417 uses this only when row height is not specified in the ^B7 h parameter.
Special Considerations for ^FD When Using PDF417
The character set sent to the printer with the ^FD command includes the full ASCII set, except for those characters with special meaning to the printer.
See
Zebra Code Page 850 on page 548
, and
.
• CR and LF are also valid characters for all ^FD statements. This scheme is used:
\& = carriage return/line feed
\\ = backslash (\)
•
^CI13
must be selected to print a backslash (\).
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
62
ZPL Commands
^B8
^B8
EAN-8 Bar Code
Description The
^B8
command is the shortened version of the EAN-13 bar code. EAN is an acronym for European Article Numbering. Each character in the EAN-8 bar code is composed of four elements: two bars and two spaces.
•
^B8
supports a fixed ratio.
• Field data (
^FD
) is limited to exactly seven characters. ZPL II automatically pads or truncates on the left with zeros to achieve the required number of characters.
• When using JAN-8 (Japanese Article Numbering), a specialized application of EAN-8, the first two non-zero digits sent to the printer are always 49.
Format
^B8o,h,f,g
Important •
If additional information about the EAN-8 bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o = orientation h
= bar code height (in dots) f = print interpretation line g = print interpretation line above code
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current
^FW
value
Accepted Values: 1 to 32000
Default Value: value set by ^BY
Accepted Values:
N = no
Y = yes
Default Value:
Y
Accepted Values:
N = no
Y = yes
Default Value: N
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^B8
63
Example •
This is an example of an EAN-8 bar code:
ZPL II CODE EAN-8 BAR CODE
^XA
^FO100,100^BY3
^B8N,100,Y,N
^FD1234567^FS
^XZ
0 1
EAN-8 BAR CODE CHARACTERS
2 3 4 5 6 7 8 9
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
64
ZPL Commands
^B9
^B9
UPC-E Bar Code
Description The
^B9
command produces a variation of the UPC symbology used for number system 0. It is a shortened version of the UPC-A bar code, where zeros are suppressed, resulting in codes that require less printing space. The 6 dot/mm, 12 dot/mm, and 24 dot/mm printheads produce the UPC and EAN symbologies at 100 percent of their size. However, an
8 dot/mm printhead produces the UPC and EAN symbologies at a magnification factor of 77 percent.
Each character in a UPC-E bar code is composed of four elements: two bars and two spaces.
The
^BY
command must be used to specify the width of the narrow bar.
•
^B9 supports a fixed ratio.
• Field data ( ^FD) is limited to exactly 10 characters, requiring a five-digit manufacturer’s code and five-digit product code.
• When using the zero-suppressed versions of UPC, you must enter the full
10-character sequence. ZPL II calculates and prints the shortened version.
Format
^B9,h,f,g,e
Important •
If additional information about the UPC-E bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o = orientation h
= bar code height (in dots) f
= print interpretation line
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value
Accepted Values:
1 to 32000
Default Value: value set by
^BY
Accepted Values:
N = no
Y = yes
Default Value: Y
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^B9
65
Parameters
g
= print interpretation line above code e
= print check digit
Details
Accepted Values:
N = no
Y = yes
Default Value: N
Accepted Values:
N = no
Y = yes
Default Value: Y
Example •
This is an example of a UPC-E bar code:
ZPL II CODE
UPC-E BAR CODE
^XA
^FO150,100^BY3
^B9N,100,Y,N,Y
^FD1230000045^FS
^XZ
0 1
UPC-E BAR CODE CHARACTERS
2 3 4 5 6 7 8 9
Rules for Proper Product Code Numbers
• If the last three digits in the manufacturer’s number are 000, 100, or 200, valid product code numbers are 00000 to 00999.
• If the last three digits in the manufacturer’s number are 300, 400, 500, 600, 700, 800, or
900, valid product code numbers are 00000 to 00099.
• If the last two digits in the manufacturer’s number are 10, 20, 30, 40, 50, 60, 70, 80, or 90, valid product code numbers are 00000 to 00009.
• If the manufacturer’s number does not end in zero (0), valid product code numbers are
00005 to 00009.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
66
ZPL Commands
^BA
^BA
Code 93 Bar Code
Description The
^BA
command creates a variable length, continuous symbology. The
Code 93 bar code is used in many of the same applications as Code 39. It uses the full 128character ASCII set. ZPL II, however, does not support ASCII control codes or escape sequences. It uses the substitute characters shown below.
Control Code
Ctrl $
Ctrl %
Ctrl /
Ctrl +
ZPL II Substitute
)
(
&
‘
Each character in the Code 93 bar code is composed of six elements: three bars and three spaces. Although invoked differently, the human-readable interpretation line prints as though the control code has been used.
•
^BA
supports a fixed print ratio.
• Field data ( ^FD ) is limited to the width (or length, if rotated) of the label.
Format ^BAo,h,f,g,e
Important •
If additional information about the Code 93 bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o
= orientation h = bar code height (in dots) f
= print interpretation line
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value
Accepted Values:
1
to
32000
Default Value: value set by ^BY
Accepted Values:
N = no
Y = yes
Default Value: Y
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^BA
67
Parameters
g
= print interpretation line above code e
= print check digit
Details
Accepted Values:
N = no
Y = yes
Default Value: N
Accepted Values:
N = no
Y = yes
Default Value: N
Example •
This is an example of a Code 93 bar code:
ZPL II CODE CODE 93 BAR CODE
^XA
^FO100,75^BY3
^BAN,100,Y,N,N
^FD12345ABCDE^FS
^XZ
CODE 93 BAR CODE CHARACTERS
0 1 2 3 4 5 6 7 8 9
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
.
$ / + % & ’ ( )
SPACE
Denotes an internal start/stop character that must precede and follow every bar code message.
Comments All control codes are used in pairs.
Code 93 is also capable of encoding the full 128-character ASCII set. For more details, see
.
Full ASCII Mode for Code 93
Code 93 can generate the full 128-character ASCII set using paired characters as shown in
.
ZPL II Programming Guide 13979L-005 Rev. A
68
ZPL Commands
^BA
ASCII Code 93
& G
& H
& I
& J
& K
& L
& M
& N
&O
& P
& Q
& R
& S
& T
‘U
&A
& B
& C
& D
& E
& F
& U
& V
& W
& X
& Y
& Z
‘A
‘B
‘C
‘D
‘E
NUL
SOH
STX
ETX
EOT
ENQ
SO
SI
DLE
DC1
DC2
DC3
DC4
ACK
BEL
BS
HT
LF
VT
FF
CR
NAK
SYN
ETB
CAN
EM
SUB
ESC
FS
FS
RS
US
Table 4 • Code 93 Full ASCII Mode
ASCII Code 93
5
6
3
4
1
2
/
0
7
8
9
++
‘
-
.
)
*
(
‘
SP
!
“
#
$
%
&
<
=
;
:
>
?
3
4
1
2
/
O
.
-
7
8
5
6
9
( H
( I
( J
++
(L
(Z
‘F
‘G
‘H
‘I
‘J
Space
(A
(B
( C
( D
( E
( F
( G
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ASCII Code 93
^
]
\
[
_
W
X
Y
Z
P
Q
R
S
T
U
V
L
M
N
O
H
I
J
K
D
E
F
G
@
A
B
C
‘K
‘L
‘M
‘N
‘O
W
X
Y
Z
P
Q
R
S
T
U
V
L
M
N
O
H
I
J
K
D
E
F
G
‘V
A
B
C
Table 5 • Code 93 Full ASCII Mode
ASCII Code 93
}
|
~
DEL z
{ x y t u v w r s p q l m n o j k h
I f g d e b c
‘ a
) Q
) R
) S
) T
) U
) V
) W
) H
) I
) J
) K
) L
) M
) N
) O
) P
) D
) E
) F
) G
‘W
)A
)B
) C
) X
) Y
) Z
‘P
‘Q
‘R
‘S
‘T
ZPL Commands
^BA
69
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
70
ZPL Commands
^BB
^BB
CODABLOCK Bar Code
Description The
^BB
command produces a two-dimensional, multirow, stacked symbology. It is ideally suited for applications that require large amounts of information.
Depending on the mode selected, the code consists of one to 44 stacked rows. Each row begins and ends with a start and stop pattern.
• CODABLOCK A supports variable print ratios.
• CODABLOCK E and F support only fixed print ratios.
Format ^BBo,h,s,c,r,m
Important •
If additional information about the CODABLOCK bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o
= orientation h = bar code height for s individual rows (in dots)
= security level c = number of characters per row (data columns)
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: N
Accepted Values:
2
to
32000
Default Value: 8
This number, multiplied by the module, equals the height of the individual row in dots.
Accepted Values:
N = no
Y = yes
Default Value: Y
Security level determines whether symbol check-sums are generated and added to the symbol. Check sums are never generated for single-row symbols. This can be turned off only if parameter m is set to A .
Accepted Values:
2
to
62
characters
This is used to encode a CODABLOCK symbol. It gives the you control over the width of the symbol.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BB
71
Parameters
r
= number of rows to encode m
= mode
Details
Accepted Values:
for CODABLOCK A: 1 to 22 for CODABLOCK E and F:
2
to
4
• If values for c and r are not specified, a single row is produced.
• If a value for r is not specified, and c exceeds the maximum range, a single row equal to the field data length is produced.
• If a value for c is not specified, the number of characters per row is derived by dividing the field data by the value of r
.
• If both parameters are specified, the amount of field data must be less than the product of the specified parameters. If the field data exceeds the value of the product, either no symbol or an error code is printed
(if ^CV is active).
• If the data field contains primarily numeric data, fewer than the specified rows might be printed. If the field data contains several shift and code-switch characters, more than the specified number of rows might be printed.
Accepted Values:
A , E , F
CODABLOCK A uses the Code 39 character set.
CODABLOCK F uses the Code 128 character set.
CODABLOCK E uses the Code 128 character set and automatically adds FNC1.
Default Value: F
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
72
ZPL Commands
^BB
Example •
This is an example of a CODABLOCK bar code:
CODABLOCK BAR CODE
ZPL II CODE
^XA
^BY2,3
^FO10,10^BBN,30,,30,44,E
^FDZebra Technologies
Corporation strives to be the expert supplier of innovative solutions to speciality demand labeling and ticketing problems of business and government.
We will attract and retain the best people who will understand our customer's needs and provide them with systems, hardware, software, consumables and service offering the best value, high quality, and reliable performance, all delivered in a timely manner.^FS
^XZ
Special Considerations for the
^BY
Command When Using
^BB
The parameters for the ^BYw,r,h command, when used with a ^BB code, are as follows:
w
=
module width (in dots)
Accepted Values: 2 to 10 (CODABLOCK A only)
Default Value: 2
r
=
ratio
Fixed Value:
3
(ratio has no effect on CODABLOCK E or F)
h
=
height of bars (in dots)
Accepted Values: 1 to 32,32000
Default Value: 10
CODABLOCK uses this as the overall symbol height only when the row height is not specified in the ^BB h parameter.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BB
73
Special Considerations for
^FD
Character Set When Using
^BB
The character set sent to the printer depends on the mode selected in parameter m.
CODABLOCK A: CODABLOCK A uses the same character set as Code 39. If any other character is used in the
^FD
statement, either no bar code is printed or an error message is printed (if ^CV is active).
CODABLOCK E: The Automatic Mode includes the full ASCII set except for those characters with special meaning to the printer. Function codes or the
Code 128 Subset A <nul> character can be inserted using of the
^FH
command.
<fnc1> = 80 hex <fnc3> = 82 hex
<fnc2> = 81 hex
<nul> = 84 hex
<fnc4> = 83 hex
For any other character above 84 hex, either no bar code is printed or an error message is printed (if ^CV is active).
CODABLOCK F: CODABLOCK F uses the full ASCII set, except for those characters with special meaning to the printer. Function codes or the Code 128 Subset A <nul> character can be inserted using of the
^FH
command.
<fnc1> = 80 hex
<fnc2> = 81 hex
<nul> = 84 hex
<fnc3> = 82 hex
<fnc4> = 83 hex
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
74
ZPL Commands
^BC
^BC
Code 128 Bar Code (Subsets A, B, and C)
Description The
^BC
command creates the Code 128 bar code, a high-density, variable length, continuous, alphanumeric symbology. It was designed for complexly encoded product identification.
Code 128 has three subsets of characters. There are 106 encoded printing characters in each set, and each character can have up to three different meanings, depending on the character subset being used. Each Code 128 character consists of six elements: three bars and three spaces.
•
^BC supports a fixed print ratio.
• Field data (
^FD
) is limited to the width (or length, if rotated) of the label.
Format ^BCo,h,f,g,e,m
Important •
If additional information about the Code 128 bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o
= orientation h
= bar code height (in dots) f
= print interpretation line g
= print interpretation line above code
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value
Accepted Values:
1 to 32000
Default Value: value set by
^BY
Accepted Values:
Y (yes) or N (no)
Default Value:
Y
The interpretation line can be printed in any font by placing the font command before the bar code command.
Accepted Values:
Y (yes) or N (no)
Default Value: N
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^BC
75
Parameters
e
= UCC check digit m
= mode
Details
Accepted Values:
Y (turns on) or N (turns off)
Mod 103 check digit is always there. It cannot be turned on or off. Mod 10 and 103 appear together with e
turned on.
Default Value: N
Accepted Values:
N = no selected mode
U = UCC Case Mode
• More than 19 digits in ^FD or
^SN
are eliminated.
• Fewer than 19 digits in ^FD or ^SN add zeros to the right to bring the count to 19. This produces an invalid interpretation line.
A = Automatic Mode
This analyzes the data sent and automatically determines the best packing method. The full
ASCII character set can be used in the ^FD statement — the printer determines when to shift subsets. A string of four or more numeric digits causes an automatic shift to Subset C.
D = UCC/EAN Mode (x.11.x and newer firmware)
This allows dealing with UCC/EAN with and without chained application identifiers. The code starts in the appropriate subset followed by FNC1 to indicate a UCC/EAN 128 bar code. The printer automatically strips out parentheses and spaces for encoding, but prints them in the human-readable section. The printer automatically determines if a check digit is required, calculate it, and print it.
Automatically sizes the human readable.
Default Value: N
Example •
This is an example of a Code 128 bar code:
ZPL II CODE
CODE 128 BAR CODE
^XA
^FO100,100^BY3
^BCN,100,Y,N,N
^FD123456^FS
^XZ
ZPL II Programming Guide 13979L-005 Rev. A
76
ZPL Commands
^BC
Code 128 Subsets
The Code 128 character subsets are referred to as Subset A, Subset B, and Subset C. A subset can be selected in these ways:
• A special Invocation Code can be included in the field data (
^FD
) string associated with that bar code.
• The desired Start Code can be placed at the beginning of the field data. If no Start Code is entered, Subset B are used.
To change subsets within a bar code, place the Invocation Code at the appropriate points within the field data ( ^FD ) string. The new subset stays in effect until changed with the
Invocation Code. For example, in Subset C, >7 in the field data changes the Subset to A.
Table 6 shows the Code 128 Invocation Codes and Start Characters for the three subsets.
Table 6 • Code 128 Invocation Characters
Subset C
Character
Invocation
Code
><
>0
>=
>1
>2
>3
>4
>5
>6
>7
>8
Decimal
Value
62
30
94
95
96
97
98
99
100
101
102
Start Characters
>9
>:
>;
103
104
105
Subset A
Character
>
USQ
FNC 3
FNC 2
SHIFT
CODE C
CODE B
FNC 4
FNC 1
Start Code A
Start Code B
Start Code C
Subset B
Character
>
~
DEL
FNC 3
FNC 2
SHIFT
CODE C
FNC 4
CODE A
FNC 1
CODE B
CODE A
FNC 1
(Numeric Pairs give Alpha/Numerics)
(Normal Alpha/Numeric)
(All numeric (00 - 99)
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^BC
77
Table 7 shows the character sets for Code 128:
Table 7 • Code 128 character sets
27
28
29
30
31
23
24
25
26
18
19
20
21
22
13
14
15
16
17
Value
2
3
0
1
9
10
11
12
6
7
4
5
8
46
47
48
49
41
42
43
44
45
36
37
38
39
40
32
33
34
35
50
51
52
>
?
<
=
9
:
7
8
;
5
6
3
4
0
1
/
.
2
Code B
SP
!
''
#
$
)
*
++
,
-
(
'
%
&
N
O
P
Q
R
J
K
L
M
S
T
E
F
G
H
I
@
A
B
C
D
>
?
<
=
9
:
7
8
;
4
5
2
3
6
0
1
/
.
Code A
SP
!
''
#
$
)
*
++
,
-
(
'
%
&
N
O
P
Q
R
K
L
I
J
M
S
T
E
F
G
H
@
A
B
C
D
27
28
29
30
31
23
24
25
26
18
19
20
21
22
13
14
15
16
17
Code C
00
01
02
03
09
10
11
12
04
05
06
07
08
46
47
48
49
41
42
43
44
45
36
37
38
39
40
32
33
34
35
50
51
52
95
96
97
98
91
92
93
94
86
87
88
89
90
82
83
84
85
99
100
101
102
103
104
105
78
79
80
81
74
75
76
77
70
71
72
73
66
67
68
69
Value
53
54
55
56
61
62
63
64
65
57
58
59
60
|
} z
{
~
DEL
FNC3
FNC2 v w x y t u r s
SHIFT
Code C
FNC4
Code A
FNC1
START (Code A)
START (Code B)
START (Code C)
p q n o k l j i m g h e f c d a b
Code B
U
V
W
X
_
.
]
^
\
[
Y
Z
97
98
99
Code B
Code A
FNC1
93
94
95
96
89
90
91
92
85
86
87
88
81
82
83
84
77
78
79
80
72
73
74
75
76
68
69
70
71
64
65
66
67
Code C
53
54
55
60
61
62
63
56
57
58
59
HT
LF
VT
FF
CR
SO
SI
DLE
DC1
SOH
STX
ETX
EOT
ENQ
ACK
BEL
BS
Code A
U
V
W
X
\
[
Y
Z
]
^
_
NUL
SUB
ESC
FS
GS
RS
US
FNC3
FNC2
DC2
DC3
DC4
NAK
SYN
ETB
CAN
EM
SHIFT
Code C
Code B
FNC4
FNC1
ZPL II Programming Guide 13979L-005 Rev. A
78
ZPL Commands
^BC
Example •
Figures A and B are examples of identical bar codes, and Figure C is an example of switching from Subset C to B to A, as follows:
^XA
^FO100,75
^BCN,100,Y,N,N
^FDCODE128^FS
^XZ
Figure A: Subset B with no start character
^XA
^FO100,75
^BCN,100,Y,N,N
^FD>:CODE128^FS
^XZ
Figure B: Subset B with start character
Because Code 128 Subset B is the most commonly used subset, ZPL II defaults to Subset B if no start character is specified in the data string.
^XA
^FO50,50
^BY3^BCN,100,Y,N,N
^FD>;382436>6CODE128>752375152^FS
^XZ
Figure C: Switching from Subset C to B to A
How
^BC
Works Within a ZPL II Script
^XA
– the first command starts the label format.
^FO100,75
– the second command sets the field origin at 100 dots across the x-axis and 75 dots down the y-axis from the upper-left corner.
^BCN,100,Y,N,N
– the third command calls for a Code 128 bar code to be printed with no rotation (N) and a height of 100 dots. An interpretation line is printed (Y) below the bar code (N). No UCC check digit is used (N).
^FDCODE128^FS
(Figure A) ^FD>:CODE128^FS (Figure B) – the field data command specifies the content of the bar code.
^XZ
– the last command ends the field data and indicates the end of the label.
The interpretation line prints below the code with the UCC check digit turned off.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^BC
79
The
^FD
command for Figure A does not specify any subset, so Subset B is used. In Figure B, the ^FD command specifically calls Subset B with the >: Start Code. Although ZPL II defaults to Code B, it is good practice to include the Invocation Codes in the command.
Code 128 – Subset B is programmed directly as ASCII text, except for values greater than 94 decimal and a few special characters that must be programmed using the invocation codes.
Those characters are:
^ > ~
Example •
Code 128 – Subsets A and C
Code 128, Subsets A and C are programmed in pairs of digits, 00 to 99, in the field data string. For details, see
In Subset A, each pair of digits results in a single character being encoded in the bar code; in
Subset C, characters are printed as entered. Figure E below is an example of Subset A (>9 is the Start Code for Subset A).
Nonintegers programmed as the first character of a digit pair (D2) are ignored. However, nonintegers programmed as the second character of a digit pair (2D) invalidate the entire digit pair, and the pair is ignored. An extra unpaired digit in the field data string just before a code shift is also ignored.
Figure C and Figure D below are examples of Subset C. Notice that the bar codes are identical. In the program code for Figure D, the D is ignored and the 2 is paired with the 4.
^XA
^FO100,75^BY3
^BCN,100,Y,N,N
^FD>;382436^FS
^XZ
Figure C: Subset C with normal data
^XA
^FO100,75^BY3
^BCN,100,Y,N,N
^FD>;38D2436^FS
^XZ
Figure D: Subset C with ignored alpha character
^XA
^FO100,75^BY3
^BCN,100,Y,N,N
^FD>935473637171824^FS
^XZ
Figure E: Subset A
ZPL II Programming Guide 13979L-005 Rev. A
80
ZPL Commands
^BC
The UCC/EAN-128 Symbology
The symbology specified for the representation of Application Identifier data is UCC/EAN-
128, a variant of Code 128, exclusively reserved to EAN International and the Uniform Code
Council (UCC).
Note •
It is not intended to be used for data to be scanned at the point of sales in retail outlets.
UCC/EAN-128 offers several advantages. It is one of the most complete, alphanumeric, onedimensional symbologies available today. The use of three different character sets (A, B and
C), facilitates the encoding of the full 128 ASCII character set. Code 128 is one of the most compact linear bar code symbologies. Character set C enables numeric data to be represented in a double density mode. In this mode, two digits are represented by only one symbol character saving valuable space. The code is concatenated. That means that multiple AIs and their fields may be combined into a single bar code. The code is also very reliable. Code 128 symbols use two independent self-checking features which improves printing and scanning reliability.
UCC/EAN-128 bar codes always contain a special non-data character known as function 1
(FNC 1), which follows the start character of the bar code. It enables scanners and processing software to auto-discriminate between UCC/EAN-128 and other bar code symbologies, and subsequently only process relevant data.
The UCC/EAN-128 bar code is made up of a leading quiet zone, a Code 128 start character A,
B, or C, a FNC 1 character, Data (Application Identifier plus data field), a symbol check character, a stop character, and a trailing quiet zone.
UCC/EAN, UCC/128 are a couple of ways you'll hear someone refer to the code. This just indicates that the code is structured as dictated by the application identifiers that are used.
SSCC (Serial Shipping Container Code) formatted following the data structure layout for
Application Identifier 00. See Table 8, UCC Application Identifier Table on page 84
. It could be 00 which is the SSCC code. The customer needs to let us know what application identifiers are used for their bar code so we can help them.
There are several ways of writing the code to print the code to Application Identifier '00' structure.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^BC
81
Using N for the mode (m) parameter
Example •
This example shows with application identifier 00 structure:
ZPL II CODE
N FOR THE M PARAMETER
^XA
^FO90,200^BY4
^BCN,256,Y,N,Y,N
^FD>;>80012345123451234512^FS
^XZ
• >;>8' sets it to subset C, function 1
• '00' is the application identifier followed by '17 characters', the check digit is selected using the 'Y' for the (e) parameter to automatically print the 20th character.
• you are not limited to 19 characters with mode set to N
Using U for the mode (m) parameter
Example •
The example shows the application identifier 00 format:
ZPL II CODE
U FOR THE M PARAMETER
^XA
^FO90,200
^BY4^BC,256,Y,N,,U
^FD0012345123451234512^FS
^XZ
UCC Case Mode
• Choosing
U
selects UCC Case mode. You will have exactly 19 characters available in
^FD .
• Subset C using FNC1 values are automatically selected.
• Check digit is automatically inserted.
ZPL II Programming Guide 13979L-005 Rev. A
82
ZPL Commands
^BC
Using D for the mode (m) parameter
Example •
This example shows application identifier 00 format ((x.11.x or later):
ZPL II CODE D FOR THE M PARAMETER
^XA
^FO50,200^BCN,150,Y,N,,D
^FD(00)10084423 7449200940^FS
^XZ
(0 at end of field data is a bogus character that is inserted as a place holder for the check digit the printer will automatically insert.
• Subset C using FNC1 values are automatically selected.
• Parentheses and spaces can be in the field data. '00' application identifier, followed by
17 characters, followed by bogus check digit place holder.
• Check digit is automatically inserted. The printer will automatically calculate the check digit and put it into the bar code and interpretation line.
• The interpretation line will also show the parentheses and spaces but will strip them out from the actual bar code.
Printing the Interpretation Line
Example •
This example shows printing the interpretation in a different font with firmware x.11.x or later:
ZPL II CODE
INTERPRETATION LINE
^XA
^FO50,200
^A0N,40,30^BCN,150,Y,N,Y
^FD>;>80012345123451234512^FS
^XZ
The font command (^A0N,40,30) can be added and changed to alter the font and size of the interpretation line.
With firmware version later than x.10.x
• A separate text field needs to be written.
• The interpretation line needs to be turned off.
•
^A0N,50,40
is the font and size selection for the separate text field.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BC
83
• You have to make sure you enter the correct check digit in the text field.
• Creating a separate text field allows you to format the interpretation line with parentheses and spaces.
ZPL II CODE
^XA
^FO25,25
^BCN,150,N,N,Y
^FD>;>80012345123451234512^FS
^FO100,190
^A0N,50,40
^FD(00) 1 2345123 451234512 0^FS
^XZ
FIRMWARE OLDER THAN X.10.X
Application Identifiers — UCC/EAN APPLICATION IDENTIFIER
An Application Identifier is a prefix code used to identify the meaning and the format of the data that follows it (data field).
There are AIs for identification, traceability, dates, quantity, measurements, locations, and many other types of information.
For example, the AI for batch number is 10, and the batch number AI is always followed by an alphanumeric batch code not to exceed 20-characters.
The UCC/EAN Application Identifiers provide an open standard that can be used and understood by all companies in the trading chain, regardless of the company that originally issued the codes.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
84
ZPL Commands
^BC
Table 8 • UCC Application Identifier Table
Data Content
Serial Shipping Container Code (SSCC)
Shipping Container Code
Batch Numbers
Production Date (YYMMDD)
Packaging Date (YYMMDD)
Sell By Date (YYMMDD)
Expiration Date (YYMMDD)
Product Variant
Serial Number
HIBCC Quantity, Date, Batch and Link
Lot Number
Quantity Each
Net Weight (Kilograms)
Length, Meters
Width or Diameter (Meters)
Depths (Meters)
Area (Sq. Meters)
Volume (Liters)
Volume (Cubic Meters)
Net Weight (Pounds)
Customer PO Number
Ship To (Deliver To) Location Code using
EAN 13 or DUNS Number with leading zeros
Bill To (Invoice To) Location Code using
EAN 13 or DUNS Number with leading zeros
Purchase from
Ship To (Deliver To) Postal Code within single postal authority
Ship To (Deliver To) Postal Code with 3digit ISO Country Code Prefix
Roll Products - width, length, core diameter, direction and splices
Electronic Serial number for cellular mobile phone
AI
Plus The Following Data
Structure
00 exactly 18 digits
01 exactly 14 digits
10
11 up to 20 alpha numerics exactly 6 digits
13 exactly 6 digits
15 exactly 6 digits
17 exactly 6 digits
20 exactly 2 digits
21 up to 20 alpha numerics
22 up to 29 alpha numerics
23* up to 19 alpha numerics
30
310** exactly 6 digits
311** exactly 6 digits
312** exactly 6 digits
313** exactly 6 digits
314** exactly 6 digits
315** exactly 6 digits
316** exactly 6 digits
320** exactly 6 digits
400 up to 29 alpha numerics
410 exactly 13 digits
411
412
420
421
8001
8002 exactly 13 digits exactly 13 digits up to 9 alpha numerics
3 digits plus up to 9 alpha numerics exactly 14 digits up to 20 alpha numerics
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BC
85
Note •
is a partial table showing the application identifiers. For more current and complete information, search the Internet for UCC Application Identifier.
For date fields that only need to indicate a year and month, the day field is set to 00.
* Plus one digit for length indication.
** Plus one digit for decimal point indication.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
86
ZPL Commands
^BC
Chaining several application identifiers (firmware x.11.x or later)
The FNC1, which is invoked by >8, is inserted just before the AI's so that the scanners reading the code sees the FNC1 and knows that an AI follows.
Example •
This is an example with the mode parameter set to
A
(automatic):
^XA
^BY2,2.5,193
^FO33,400
^BCN,,N,N,N,A
^FD>;>80204017773003486100008535>8910001>837252^FS
^FT33,625^AEN,0,0^FD(02)04017773003486(10)0008535(91)
0001(37)252^FS
^XZ
Example •
This is an example with the mode parameter set to U :
^XA
^BY3,2.5,193
^FO33,200
^BCN,,N,N,N,U
^FD>;>80204017773003486>8100008535>8910001>837252^FS
^FT33,455^A0N,30,30^FD(02)04017773003486(10)0008535(9
1)0001(37)252^FS
^XZ
Example •
This is an example with the mode parameter set to D*:
^XA
^PON
^LH0,0
^BY2,2.5,145
^FO218,343
^BCB,,Y,N,N,D
^FD(91)0005886>8(10)0000410549>8(99)05^FS
^XZ
D* — When trying to print the last Application Identifier with an odd number of characters, a problem existed when printing EAN128 bar codes using Mode D. The problem was fixed in firmware version v60.13.0.6.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BD
87
^BD
UPS MaxiCode Bar Code
Description The
^BD
command creates a two-dimensional, optically read (not scanned) code. This symbology was developed by UPS (United Parcel Service).
Notice that there are no additional parameters for this code and it does not generate an interpretation line. The ^BY command has no effect on the UPS MaxiCode bar code.
However, the
^CV
command can be activated.
Format ^BDm,n,t
This table identifies the parameters for this format:
Parameters
m
= mode n t
= symbol number
= total number of symbols
Details
Accepted Values:
2 = structured carrier message: numeric postal code
(U.S.)
3 = structured carrier message: alphanumeric postal code (non-U.S.)
4 = standard symbol, secretary
5 = full EEC
6 = reader program, secretary
Default Value: 2
Accepted Values:
1
to
8
can be added in a structured document
Default Value: 1
Accepted Values:
1 to 8 , representing the total number of symbols in this sequence
Default Value: 1
Example •
This is an example of UPS MAXICODE - MODE 2 bar code:
UPS MAXICODE - MODE 2 ZPL II CODE
^XA
^FO50,50
^CVY
^BD^FH^FD001840152382802
[)>_1E01_1D961Z00004951_1DUPSN_
1D_06X610_1D159_1D1234567_1D1/1_
1D_1DY_1D634 ALPHA DR_
1DPITTSBURGH_1DPA_1E_04^FS
^FO30,300^A0,30,30^FDMode2^FS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
88
ZPL Commands
^BD
Special Considerations for
^FD
when Using
^BD
The ^FD statement is divided into two parts: a high priority message (hpm) and a low priority message (lpm). There are two types of high priority messages. One is for a U.S. Style Postal
Code; the other is for a non-U.S. Style Postal Code. The syntax for either of these high priority messages must be exactly as shown or an error message is generated.
Format ^FD <hpm><lpm>
This table identifies the parameters for this format:
Parameters
<hpm>
= high priority message (applicable only in Modes 2 and
3)
<lpm>
= low priority message (only applicable in Modes
2 and 3)
Details
Accepted Values:
0 to 9 , except where noted
U.S. Style Postal Code (Mode 2)
<hpm>
= aaabbbcccccdddd
aaa = three-digit class of service
bbb = three-digit country zip code ccccc = five-digit zip code
dddd = four-digit zip code extension (if none exists, four zeros (0000) must be entered)
non-U.S. Style Postal Code (Mode 3)
<hpm>
= aaabbbcccccc
aaa = three-digit class of service
bbb = three-digit country zip code ccccc = six-digit zip code ( A through Z or 0 to 9 )
GS is used to separate fields in a message (0x1D). RS is used to separate format types (0x1E). EOT is the end of transmission characters.
Message Header
Transportation Data
[)>RS
Format Header
01GS96
Tracking Number*
SCAC*
<tracking number>
GS<SCAC>
UPS Shipper Number
GS<shipper number>
Julian Day of Pickup
GS<day of pickup>
Shipment ID Number
GS<shipment ID number>
Package n/x
GS<n/x>
Package Weight
Address Validation
GS<weight>
GS<validation>
Ship to Street Address
GS<street address>
Ship to City
GS<city>
Ship to State
RS
GS<state>
RS
End of Message
(
*
Mandatory Data for UPS)
EOT
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BD
89
Comments
• The formatting of <hpm> and <lpm> apply only when using Modes 2 and 3.
Mode 4, for example, takes whatever data is defined in the ^FD command and places it in the symbol.
• UPS requires that certain data be present in a defined manner. When formatting MaxiCode data for UPS, always use uppercase characters. When filling in the fields in the <lpm> for
UPS, follow the data size and types specified in Guide to Bar Coding with UPS.
• If you do not choose a mode, the default is Mode 2. If you use non-U.S. Postal Codes, you probably get an error message (invalid character or message too short). When using non-
U.S. codes, use Mode 3.
• ZPL II doesn’t automatically change your mode based on the zip code format.
• When using special characters, such as GS, RS, or EOT, use the
^FH
command to tell
ZPL II to use the hexadecimal value following the underscore character ( _ ).
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
90
ZPL Commands
^BE
^BE
EAN-13 Bar Code
Description The
^BE command is similar to the UPC-A bar code. It is widely used throughout Europe and Japan in the retail marketplace.
The EAN-13 bar code has 12 data characters, one more data character than the UPC-A code.
An EAN-13 symbol contains the same number of bars as the UPC-A, but encodes a 13th digit into a parity pattern of the left-hand six digits. This 13th digit, in combination with the 12th digit, represents a country code.
• ^BE supports fixed print ratios.
• Field data (
^FD
) is limited to exactly 12 characters. ZPL II automatically truncates or pads on the left with zeros to achieve the required number of characters.
• When using JAN-13 (Japanese Article Numbering), a specialized application of EAN-13, the first two non-zero digits sent to the printer must be 49.
Format ^BEo,h,f,g
Note •
Use Interleaved 2 of 5 for UCC and EAN 14.
Important •
If additional information about the EAN-13 bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o
= orientation h
= bar code height (in dots) f
= print interpretation line g
= print interpretation line above code
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current
^FW
value
Accepted Values:
1 to 32000
Default Value: value set by ^BY
Accepted Values:
N = no
Y = yes
Default Value: Y
Accepted Values:
N = no
Y = yes
Default Value: N
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Example •
This is an example of an EAN-13 bar code:
ZPL II CODE
EAN-13 BAR CODE
^XA
^FO100,100^BY3
^BEN,100,Y,N
^FD12345678^FS
^XZ
ZPL Commands
^BE
91
0 1
EAN-13 BAR CODE CHARACTERS
2 3 4 5 6 7 8 9
Comments The EAN-13 bar code uses the Mod 10 check-digit scheme for error checking.
For more information on Mod 10, see Mod 10 Check Digit on page 570 .
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
92
ZPL Commands
^BF
^BF
MicroPDF417 Bar Code
Description The
^BF
command creates a two-dimensional, multi-row, continuous, stacked symbology identical to PDF417, except it replaces the 17-module-wide start and stop patterns and left/right row indicators with a unique set of 10-module-wide row address patterns. These reduce overall symbol width and allow linear scanning at row heights as low as 2X.
MicroPDF417 is designed for applications with a need for improved area efficiency but without the requirement for PDF417’s maximum data capacity. It can be printed only in specific combinations of rows and columns up to a maximum of four data columns by 44 rows.
Field data (
^FD
) and field hexadecimal (
^FH
) are limited to:
• 250 7-bit characters
• 150 8-bit characters
• 366 4-bit numeric characters
Format ^BFo,h,m
This table identifies the parameters for this format:
Parameters
o
= orientation h = bar code height (in dots) m
= mode
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value
Accepted Values:
1
to
9999
Default Value: value set by ^BY or 10 (if no ^BY value exists).
Accepted Values:
0 to 33 (see
)
Default Value:
0
(see MicroPDF417 Mode on page 94
)
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BF
93
Example •
This is an example of a MicroPDF417 bar code:
ZPL II CODE
MICRO-PDF417 BAR CODE
^XA
^FO100,100^BY6
^BFN,8,3
^FDABCDEFGHIJKLMNOPQRSTUV^FS
^XZ
To encode data into a MicroPDF417 bar code, complete these steps:
1.
Determine the type of data to be encoded (for example, ASCII characters, numbers, 8-bit data, or a combination).
2.
Determine the maximum amount of data to be encoded within the bar code (for example, number of ASCII characters, quantity of numbers, or quantity of 8-bit data characters).
3.
Determine the percentage of check digits that are used within the bar code. The higher the percentage of check digits that are used, the more resistant the bar code is to damage — however, the size of the bar code increases.
4.
Use the chart MicroPDF417 Mode on page 94 with the information gathered from the
questions above to select the mode of the bar code.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
94
ZPL Commands
^BF
Table 9 • MicroPDF417 Mode
23
24
25
26
27
28
29
30
31
32
33
13
14
15
16
17
18
19
20
21
22
9
10
11
12
6
7
8
2
3
4
5
0
1
Mode
(M)
Number of Data
Columns
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
1
1
1
1
1
1
Number of Data
Rows
6
8
10
12
15
20
26
32
38
44
4
6
8
10
12
15
20
26
32
38
44
8
11
14
17
20
23
26
11
14
17
20
24
28
Max
Alpha
Characters
34
46
66
90
114
138
162
56
64
72
10
18
26
6
12
18
22
30
38
14
24
36
46
22
34
46
58
76
106
142
178
214
250
14
% of
Cws for
EC
50
44
40
38
35
33
31
30
29
28
50
67
58
53
50
47
43
41
40
39
38
50
41
32
29
28
28
29
64
50
41
40
33
29
Max
Digits
82
93
105
14
26
38
49
67
96
132
8
17
26
32
44
55
20
35
52
67
85
111
155
208
261
313
366
20
167
202
237
32
49
67
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BI
95
^BI
Industrial 2 of 5 Bar Codes
Description The
^BI
command is a discrete, self-checking, continuous numeric symbology. The Industrial 2 of 5 bar code has been in use the longest of the 2 of 5 family of bar codes. Of that family, the Standard 2 of 5 ( ^BJ ) and Interleaved 2 of 5 ( ^B2 ) bar codes are also available in ZPL II.
With Industrial 2 of 5, all of the information is contained in the bars. Two bar widths are employed in this code, the wide bar measuring three times the width of the narrow bar.
• ^BI supports a print ratio of 2.0:1 to 3.0:1.
• Field data (
^FD
) is limited to the width (or length, if rotated) of the label.
Format ^BIo,h,f,g
Important •
If additional information about the Industrial 2 of 5 bar code, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o = orientation h
= bar code height (in dots) f = print interpretation line g = print interpretation line above code
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value
Accepted Values:
1 to 32000
Default Value: value set by ^BY
Accepted Values:
N = no
Y = yes
Default Value: Y
Accepted Values:
N = no
Y = yes
Default Value: N
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
96
ZPL Commands
^BI
Example •
This is an example of an Industrial 2 of 5 bar code:
ZPL II CODE INDUSTRIAL 2 OF 5 BAR CODE
^XA
^FO100,100^BY3
^BIN,150,Y,N
^FD123456^FS
^XZ
0
INDUSTRIAL 2 OF 5 BAR CODE CHARACTERS
1 2 3 4 5
Start/Stop (internal)
6 7 8 9
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BJ
97
^BJ
Standard 2 of 5 Bar Code
Description The
^BJ
command is a discrete, self-checking, continuous numeric symbology.
With Standard 2 of 5, all of the information is contained in the bars. Two bar widths are employed in this code, the wide bar measuring three times the width of the narrow bar.
•
^BJ
supports a print ratio of 2.0:1 to 3.0:1.
• Field data ( ^FD ) is limited to the width (or length, if rotated) of the label.
Format ^BJo,h,f,g
Important •
If additional information about the Standard 2 of 5 bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o = orientation h
= bar code height (in dots) f = print interpretation line g = print interpretation line above code
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value
Accepted Values:
1 to 32000
Default Value: value set by ^BY
Accepted Values:
N = no
Y = yes
Default Value: Y
Accepted Values:
N = no
Y = yes
Default Value: N
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
98
ZPL Commands
^BJ
Example •
This is an example of a Standard 2 of 5 bar code:
ZPL II CODE
STANDARD 2 OF 5 BAR CODE
^XA
^FO100,100^BY3
^BJN,150,Y,N
^FD123456^FS
^XZ
0
STANDARD 2 OF 5 BAR CODE CHARACTERS
1 2 3 4 5
Start/Stop (automatic)
6 7 8 9
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BK
99
^BK
ANSI Codabar Bar Code
Description The ANSI Codabar bar code is used in a variety of information processing applications such as libraries, the medical industry, and overnight package delivery companies.
This bar code is also known as USD-4 code, NW-7, and 2 of 7 code. It was originally developed for retail price labeling.
Each character in this code is composed of seven elements: four bars and three spaces.
Codabar bar codes use two character sets, numeric and control (start and stop) characters.
• ^BK supports a print ratio of 2.0:1 to 3.0:1.
• Field data (
^FD
) is limited to the width (or length, if rotated) of the label.
Format ^BKo,e,h,f,g,k,l
Important •
If additional information about the ANSI Codabar bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o = orientation e f
= check digit h
= bar code height (in dots)
= print interpretation line g = print interpretation line above code k
= designates a start character l
= designates stop character
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current
^FW
value
Fixed Value: N
Accepted Values:
1 to 32000
Default Value: value set by
^BY
Accepted Values:
N = no
Y = yes
Default Value: Y
Accepted Values:
N = no
Y = yes
Default Value: N
Accepted Values:
A,B , C , D
Default Value: A
Accepted Values:
A,B , C , D
Default Value: A
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
100
ZPL Commands
^BK
Example •
This is an example of an ANSI Codabar bar code:
ZPL II CODE
ANSI CODABAR BAR CODE
^XA
^FO100,100^BY3
^BKN,N,150,Y,N,A,A
^FD123456^FS
^XZ
0 1
ANSI CODABAR BAR CODE CHARACTERS
2 3 4 5 6 7 8
Control Characters
: .
$ / +
Start/Stop Characters
A B C D
9
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BL
101
^BL
LOGMARS Bar Code
Description The
^BL
command is a special application of Code 39 used by the Department of Defense. LOGMARS is an acronym for Logistics Applications of Automated Marking and
Reading Symbols.
•
^BL
supports a print ratio of 2.0:1 to 3.0:1.
• Field data (
^FD
) is limited to the width (or length, if rotated) of the label. Lowercase letters in the ^FD string are converted to the supported uppercase LOGMARS characters.
Format ^BLo,h,g
Important •
If additional information about the LOGMARS bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o
= orientation h = bar code height (in dots) g
= print interpretation line above code
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current
^FW
value
Accepted Values:
1
to
32000
Default Value: value set by ^BY
Accepted Values:
N = no
Y = yes
Default Value: N
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
102
ZPL Commands
^BL
Example •
This is an example of a LOGMARS bar code:
ZPL II CODE LOGMARS BAR CODE
^XA
^FO100,75^BY3
^BLN,100,N
^FD12AB^FS
^XZ
LOGMARS BAR CODE CHARACTERS
0 1 2 3 4 5 6 7 8 9
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
.
$ / + %
SPACE
Comments The LOGMARS bar code produces a mandatory check digit using
Mod 43 calculations. For further information on the Mod 43 check digit, see
Mod 43 Check Digit on page 571
.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BM
103
^BM
MSI Bar Code
Description The
^BM
command is a pulse-width modulated, continuous, non-self- checking symbology. It is a variant of the Plessey bar code ( ^BP ).
Each character in the MSI bar code is composed of eight elements: four bars and four adjacent spaces.
•
^BM
supports a print ratio of 2.0:1 to 3.0:1.
• For the bar code to be valid, field data ( ^FD ) is limited to 1 to 14 digits when parameter e is B , C , or D . ^FD is limited to 1 to 13 digits when parameter e is A , plus a quiet zone.
Format ^BMo,e,h,f,g,e2
Important •
If additional information about the MSI bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters Details
o = orientation
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value e
= check digit selection
Accepted Values:
A = no check digits
B =
1 Mod 10
C =
2 Mod 10
D = 1 Mod 11 and 1 Mod 10
Default Value: B h = bar code height (in dots)
Accepted Values:
1
to
32000
Default Value: value set by ^BY f
= print interpretation line
Accepted Values:
N = no
Y = yes
Default Value: Y
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
104
ZPL Commands
^BM
Parameters
g
= print interpretation line above code e2
= inserts check digit into the interpretation line
Details
Accepted Values:
N = no
Y = yes
Default Value: N
Accepted Values:
N = no
Y = yes
Default Value: N
Example •
This is an example of a MSI bar code:
ZPL II CODE
^XA
^FO100,100^BY3
^BMN,B,100,Y,N,N
^FD123456^FS
^XZ
MSI BAR CODE
1 2
MSI BAR CODE CHARACTERS
3 4 5 6 7 8 9
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BO
105
^BO
Aztec Bar Code Parameters
Description The
^BO
command creates a two-dimensional matrix symbology made up of square modules arranged around a bulls-eye pattern at the center.
Note •
The Aztec bar code works with firmware version v60.13.0.11A and v50.13.2 or later.
Format ^BOa,b,c,d,e,f,g
This table identifies the parameters for this format:
Parameters Details
a
= orientation
Accepted Values:
N = normal
R = rotated
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value b = magnification factor
Accepted Values:
1
to
10
Default Value:
1 on 150 dpi printers
2 on 200 dpi printers
3
on
300
dpi printers
6 on 600 dpi printers c
= extended channel interpretation code indicator d
= error control and symbol size/type indicator
Accepted Values:
Y = if data contains ECICs
N
= if data does not contain ECICs.
Default Value:
N
Accepted Values:
0 = default error correction level
01
to
99 = error correction percentage (minimum)
101 to 104 = 1 to 4-layer compact symbol
201 to 232 = 1 to 32-layer full-range symbol
300 = a simple Aztec “Rune”
Default Value: 0 e
= menu symbol indicator
Accepted Values:
Y
= if this symbol is to be a menu (bar code reader initialization) symbol
N = if it is not a menu symbol
Default Value: N
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
106
ZPL Commands
^BO
Parameters
f
= number of symbols for structured append g = optional ID field for structured append
Details
Accepted Values:
1 through 26
Default Value: 1
The ID field is a text string with 24-character maximum
Default Value: no ID
Example •
This is an example of the ^B0 command:
ZPL II CODE
^XA
^B0R,7,N,0,N,1,0
^FD 7. This is testing label 7^FS
^XZ
GENERATED LABEL
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BP
107
^BP
Plessey Bar Code
Description The
^BP
command is a pulse-width modulated, continuous, non-self- checking symbology.
Each character in the Plessey bar code is composed of eight elements: four bars and four adjacent spaces.
•
^BP
supports a print ratio of 2.0:1 to 3.0:1.
• Field data ( ^FD ) is limited to the width (or length, if rotated) of the label.
Format ^BPo,e,h,f,g
Important •
If additional information about the Plessey bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o
= orientation e = print check digit h = bar code height (in dots) f = print interpretation line g = print interpretation line above code
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value
Accepted Values:
N = no
Y = yes
Default Value: N
Accepted Values:
N = no
Y = yes
Default Value: N
Accepted Values:
N = no
Y = yes
Default Value: Y
Accepted Values:
N = no
Y = yes
Default Value: N
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
108
ZPL Commands
^BP
Example •
This is an example of a Plessey bar code:
ZPL II CODE
PLESSEY BAR CODE
^XA
^FO100,100^BY3
^BPN,N,100,Y,N
^FD12345^FS
^XZ
0 1
PLESSEY BAR CODE CHARACTERS
2 3 4 5 6
A B C D E F
7 8 9
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BQ
109
^BQ
QR Code Bar Code
Description The
^BQ
command produces a matrix symbology consisting of an array of nominally square modules arranged in an overall square pattern. A unique pattern at three of the symbol’s four corners assists in determining bar code size, position, and inclination.
A wide range of symbol sizes is possible, along with four levels of error correction. Userspecified module dimensions provide a wide variety of symbol production techniques.
QR Code Model 1 is the original specification, while QR Code Model 2 is an enhanced form of the symbology. Model 2 provides additional features and can be automatically differentiated from Model 1.
Model 2 is the recommended model and should normally be used.
This bar code is printed using field data specified in a subsequent ^FD string.
Encodable character sets include numeric data, alphanumeric data, 8-bit byte data, and Kanji characters.
Format ^BQa,b,c,d,e
Important •
If additional information about the QR Code bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters Details
a = field orientation b
= model
Fixed Value: normal (
^FW
has no effect on rotation)
Accepted Values:
1 (original) and 2 (enhanced – recommended)
Default Value: 2 c = magnification factor
Accepted Values:
1
to
10
Default Value:
1 on 150 dpi printers
2 on 200 dpi printers
3
on
300
dpi printers
6 on 600 dpi printers
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
110
ZPL Commands
^BQ
Parameters
d = H,Q,M,L e = N,A,B.K
Details
Accepted Values:
H = ultra-high reliability level
Q = high reliability level
M = standard level
L = high density level
Default Value:
Q = if empty
M = invalid values
Accepted Values:
1 - 7
Default Value: 7
Example •
This is an example of a QR Code bar code:
ZPL II CODE QR CODE BAR CODE
^XA
^FO100,100
^BQN,2,10
^FDMM,AAC-42^FS
^XZ
On the pages that follow are specific commands for formatting the ^BQ command with the
^FD
statements that contain the information to be coded.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^BQ
111
Considerations for
^FD
When Using the QR Code:
QR Switches (formatted into the
^FD
field data)
mixed mode <D>
D
= allows mixing of different types of character modes in one code.
code No. <01 16>
Value = subtracted from the Nth number of the divided code (must be two digits).
No. of divisions <02 16>
Number of divisions (must be two digits).
parity data <1 byte>
Parity data value is obtained by calculating at the input data (the original input data before divided byte-by-byte through the EX-OR operation).
error correction level <H, Q, M, L>
H = ultra-high reliability level
Q = high reliability level
M = standard level (default)
L = high density level
character Mode <N, A, B, K>
N = numeric
A = alphanumeric
Bxxxx = 8-bit byte mode. This handles the 8-bit Latin/Kana character set in accordance with JIS X 0201 (character values 0x00 to 0xFF). xxxx = number of data characters is represented by two bytes of BCD code.
K =
Kanji — handles only Kanji characters in accordance with the Shift JIS system based on JIS X 0208. This means that all parameters after the character mode K should be
16-bit characters. If there are any 8-bit characters (such as ASCII code), an error occurs.
data character string <Data>
Follows character mode or it is the last switch in the
^FD
statement.
data input <A, M>
A = Automatic Input (default). Data character string JIS8 unit, Shift JIS. When the input mode is Automatic Input, the binary codes of 0x80 to 0x9F and 0xE0 to 0xFF cannot be set.
M = Manual Input
Two types of data input mode exist: Automatic (A) and Manual (M). If A is specified, the character mode does not need to be specified. If M is specified, the character mode must be specified.
ZPL II Programming Guide 13979L-005 Rev. A
112
ZPL Commands
^BQ
^FD
Field Data (Normal Mode)
Automatic Data Input (A) with Switches
^FD
<error correction level>A,
<data character string>
^FS
Example •
QR Code, normal mode with automatic data input.
^XA
^FO20,20^BQ,2,10^FDQA,0123456789ABCD 2D code^FS
^XZ
1
2
3
1
2
3
Q = error correction level
A, = automatic setting data string character
Manual Data Input (M) with Switches
^FD
<error correction level>M,
<character mode><data character string>
^FS
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^BQ
113
Example •
QR Code, normal mode with manual data input:
ZPL II CODE
^XA
^FO20,20^BQ,2,10
^FDHM,N123456789012345^FS
^XZ
GENERATED LABEL
1
2
3
4
3
4
1
2
H = error correction level (ultra-high reliability level
M, = input mode (manual input)
N = character mode (numeric data) data character string
Example •
QR Code, normal mode with standard reliability and manual data input:
ZPL II CODE
^XA
^FO20,20^BQ,2,10^FDMM,AAC-42^FS
^XZ
GENERATED LABEL
1 2 3
4
3
4
1
2
M = error correction level (standard-high reliability level
M, = manual input
A = alphanumeric data
AC-42 = data character string
ZPL II Programming Guide 13979L-005 Rev. A
114
ZPL Commands
^BQ
^FD Field Data (Mixed Mode – requires more switches)
Automatic Data Input (A) with Switches
^FD
<D><code No.> <No. of divisions> <parity data>,
<error correction level> A,
<data character string>,
<data character string>,
< : >,
<data character string n**>
^FS
Manual Data Input (M) with Switches
^FD
<code No.> <No. of divisions> <parity data>,
<error correction level> M,
<character mode 1> <data character string 1>,
<character mode 2> <data character string 2>,
< : > < : >,
<character mode n> <data character string n**>
^FS n** up to 200 in mixed mode
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^BQ
115
Example •
QR Code, mixed mode with manual data input:
ZPL II CODE
^XA
^FO,20,20^BQ,2,10
^FDD03048F,LM,N0123456789,A12AABB,B0006qrcode^FS
^XZ
GENERATED LABEL
<mixed mode identifier>
D
<code No.>
M
<No. of divisions>
D
<parity data>
M
‘
(mixed)
(code number)
(divisions)
(0x8F)
<error correction level> L
<input mode>
M
‘
<character mode>
<data character string>
N
<character mode>
<data character string>
‘
A
<character mode>
<data character string>
(high-density level)
(manual input)
(numeric data)
0123456789
(alphanumeric data)
12AABB
‘
B (8-bit byte data)
0006 (number bytes) qrcode
ZPL II Programming Guide 13979L-005 Rev. A
116
ZPL Commands
^BQ
Example •
This is an example of QR Code, mixed mode with automatic data input:
^XA
^FO20,20^BQ,2,10
^FDD03048F,LA,012345678912AABBqrcode^FS
^XZ
<mixed mode identifier>
<code No.>
<No. of divisions>
<parity data>
<error correction level>
<input mode>
<data character string>
D
D
M
L
A
(mixed)
(divisions)
(0x8F)
(high-density level)
(automatic input)
012345678912AABBqrcode
For proper functionality, when encoding Kanji characters in ^CI28-30 (Unicode) be sure the JIS.DAT table is loaded on the printer and specified.
Example •
This is a Unicode example:
ZPL II CODE
GENERATED LABEL
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BR
117
^BR
RSS (Reduced Space Symbology) Bar Code
Description The ^BR command is bar code types for space-constrained identification from
EAN International and the Uniform Code Council, Inc.
Format ^BRa,b,c,d,e,f
This table identifies the parameters for this format:
Parameters Details
a = orientation
Accepted Values:
N = Normal
R = Rotated
I = Inverted
B =
Bottom-up
Default Value: R b
= symbology type in the RSS-14 family
Accepted Values:
1 = RSS14
2 =
RSS14 Truncated
3 = RSS14 Stacked
4 = RSS14 Stacked Omnidirectional
5 = RSS Limited
6 =
RSS Expanded
7 =
UPC-A
8 = UPC-E
9 = EAN-13
10 =
EAN-8
11 = UCC/EAN-128 and CC-A/B
12 = UCC/EAN-128 and CC-C
Default Value: 1 c = magnification factor
Accepted Values:
1
to
10
Default Value:
24 dot = 6 , 12 dot is 3 , 8 dot and lower is 2
12 dot = 6 , > 8 dot is 3 , 8 dot and less is 2 ) d = separator height
Accepted Values:
1
or
2
Default Value: 1
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
118
ZPL Commands
^BR
Parameters
e
= bar code height f
= the segment width
(RSS expanded only)
Details
The bar code height only affects the linear portion of the bar code. Only UCC/EAN and CC-A/B/C.
Accepted Values:
1 to 32000 dots
Default Value: 25
Accepted Values:
2 to 22 , even numbers only, in segments per line
Default Value: 22
Example •
This is an example of Symbology Type 7 - UPC-A:
ZPL II CODE
^XA
^FO10,10^BRN,7,5,2,100
^FD12345678901|this is composite info^FS
^XZ
GENERATED LABEL
Example •
This is an example of Symbology Type 1 - RSS14:
GENERATED LABEL ZPL II CODE
^XA
^FO10,10^BRN,1,5,2,100
^FD12345678901|this is composite info^FS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BS
119
^BS
UPC/EAN Extensions
Description The
^BS
command is the two-digit and five-digit add-on used primarily by publishers to create bar codes for ISBNs (International Standard Book Numbers). These extensions are handled as separate bar codes.
The ^BS command is designed to be used with the UPC-A bar code ( ^BU ) and the UPC-E bar code (
^B9
).
• ^BS supports a fixed print ratio.
• Field data ( ^FD ) is limited to exactly two or five characters. ZPL II automatically truncates or pads on the left with zeros to achieve the required number of characters.
Format ^BSo,h,f,g
Important •
If additional information about the UPC/EAN bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o = orientation h
= bar code height (in dots) f = print interpretation line g = print interpretation line above code
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current ^FW value
Accepted Values:
1 to 32000
Default Value: value set by ^BY
Accepted Values:
N = no
Y = yes
Default Value: Y
Accepted Values:
N = no
Y = yes
Default Value: Y
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
120
ZPL Commands
^BS
Example •
This is an example of a UPC/EAN Two-digit bar code:
ZPL II CODE
UPC/EAN 2-DIGIT BAR CODE
^XA
^FO100,100^BY3
^BSN,100,Y,N
^FD12^FS
^XZ
0
UPC/EAN 2-DIGIT BAR CODE CHARACTERS
1 2 3 4 5 6 7 8 9
Example •
This is an example of a UPC/EAN Five-digit bar code:
ZPL II CODE
UPC/EAN 5-DIGIT BAR CODE
^XA
^FO100,100^BY3
^BSN,100,Y,N
^FD12345^FS
^XZ
0
UPC/EAN 5-DIGIT BAR CODE CHARACTERS
1 2 3 4 5 6 7 8 9
Care should be taken in positioning the UPC/EAN extension with respect to the
UPC-A or UPC-E code to ensure the resulting composite code is within the UPC specification.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BS
121
For UPC codes, with a module width of 2 (default), the field origin offsets for the extension are:
Example •
This is an example of a UPC-A:
Normal
Rotated
Supplement Origin
X - Offset
209 Dots
0
Adjustment
Y - Offset
21 Dots
209 Dots
This is an example of a UPC-E:
Normal
Rotated
Supplement Origin
X - Offset
122 Dots
0
Adjustment
Y - Offset
21 Dots
122 Dots
Additionally, the bar code height for the extension should be 27 dots (0.135 inches) shorter than that of the primary code. A primary UPC code height of 183 dots (0.900 inches) requires an extension height of 155 dots (0.765 inches).
Example •
This example illustrates how to create a normal UPC-A bar code for the value
7000002198 with an extension equal to 04414:
UPC-A BAR CODE WITH EXTENSION
ZPL II CODE
^XA
^FO100,100^BY3
^BUN,137
^FD07000002198^FS
^FO400,121
^BSN,117
^FD04414^FS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
122
ZPL Commands
^BT
^BT
TLC39 Bar Code
Description The
^BT
bar code is the standard for the TCIF can tag telecommunications equipment.
The TCIF CLEI code, which is the MicroPDF417 bar code, is always four columns. The firmware must determine what mode to use based on the number of characters to be encoded.
Format ^BTo,w1,r1,h1,w2,h2
This table identifies the parameters for this format:
Parameters
o
= orientation w1
= width of the Code
39 bar code
Details
Accepted Values:
N = normal
R = rotated
I = inverted
B = bottom up
Accepted Value (in dots): 1 to 10
Default Value (600 dpi printers):
4
Default Value (200- and 300 dpi printer):
2
Accepted Values:
2.0
to
3.0(increments of 0.1)
Default Value: 2.0
r1 = wide to narrow bar width ratio the Code
39 bar code h1
= height of the Code
39 bar code h2
= row height of the
MicroPDF417 bar code w2 = narrow bar width of the
MicroPDF417 bar code
Accepted Values (in dots):
1 to 9999
Default Value (600 dpi printer):
120
Default Value (300 dpi printer):
60
Default Value (200 dpi printer):
40
Accepted Values (in dots):
1 to 255
Default Value (600 dpi printer):
8
Default Value (200- and 300 dpi printers):
4
Accepted Values (in dots):
1 to 10
Default Value (600 dpi printer):
4
Default Value (200- and 300 dpi printers):
2
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^BT
123
Example • TLC39 Bar Code
This is an example on how to print TLC39 bar code. The callouts identify the key components and are followed by a detailed description below:
Use the command defaults to get results that are in compliance with TCIF industry standards; regardless of printhead density.
1 2
3
1
2
3
ECI Number. If the seventh character is not a comma, only Code 39 prints. This means if more than 6 digits are present, Code 39 prints for the first six digits (and no
Micro-PDF symbol is printed).
•
•
Must be 6 digits.
Firmware generates invalid character error if the firmware sees anything but
6 digits.
•
This number is not padded.
Serial number. The serial number can contain up to 25 characters and is variable length. The serial number is stored in the Micro-PDF symbol. If a comma follows the serial number, then additional data is used below.
•
If present, must be alphanumeric (letters and numbers, no punctuation).
This value is used if a comma follows the ECI number.
Additional data. If present, it is used for things such as a country code.
Data cannot exceed 150 bytes. This includes serial number commas.
•
Additional data is stored in the Micro-PDF symbol and appended after the serial number. A comma must exist between each maximum of 25 characters in the additional fields.
•
Additional data fields can contain up to 25 alphanumeric characters per field.
The result is:
ZPL II CODE
^XA^FO100,
100^BT^FD123456,
ABCd12345678901234,
5551212,
88899
^FS^XZ
GENERATED LABEL
ZPL II Programming Guide 13979L-005 Rev. A
124
ZPL Commands
^BU
^BU
UPC-A Bar Code
Description The
^BU
command produces a fixed length, numeric symbology. It is primarily used in the retail industry for labeling packages. The UPC-A bar code has 11 data characters. The 6 dot/mm, 12 dot/mm, and 24 dot/mm printheads produce the UPC-A bar code
(UPC/EAN symbologies) at 100 percent size. However, an 8 dot/mm printhead produces the
UPC/EAN symbologies at a magnification factor of 77 percent.
• ^BU supports a fixed print ratio.
• Field data ( ^FD ) is limited to exactly 11 characters. ZPL II automatically truncates or pads on the left with zeros to achieve required number of characters.
Format ^BUo,h,f,g,e
Important •
If additional information about the UPC-A bar code is required, go to www.aimglobal.org
.
This table identifies the parameters for this format:
Parameters
o = orientation h
= bar code height (in dots) f = print interpretation line g = print interpretation line above code e = print check digit
Details
Accepted Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default Value: current
^FW
value
Accepted Values:
1 to 9999
Default Value: value set by ^BY
Accepted Values:
N = no
Y = yes
Default Value: Y
Accepted Values:
N = no
Y = yes
Default Value: N
Accepted Values:
N = no
Y = yes
Default Value: Y
13979L-005 Rev. A
The font style of the interpretation line depends on the modulus (width of narrow bar) selected in
^BY
:
ZPL II Programming Guide 5/17/07
ZPL Commands
^BU
125
Note •
Zero is not allowed.
• 6 dot/mm printer: a modulus of 2 dots or greater prints with an OCR-B interpretation line; a modulus of 1 dot prints font A.
• 8 dot/mm printer: a modulus of 3 dots or greater prints with an OCR-B interpretation line; a modulus of 1 or 2 dots prints font A.
• 12 dot/mm printer: a modulus of 5 dots or greater prints with an OCR-B interpretation line; a modulus of 1, 2, 3, or 4 dots prints font A.
• 24 dot/mm printer: a modulus of 9 dots or greater prints with an OCR-B interpretation line; a modulus of 1 to 8 dots prints font A.
Example •
This is an example of a UPC-A bar code with extension:
UPC-A BAR CODE WITH EXTENSION
ZPL II CODE
^XA
^FO100,100^BY3
^BUN,137
^FD07000002198^FS
^FO400,121
^BSN,117
^FD04414^FS
^XZ
Comments The UPC-A bar code uses the Mod 10 check digit scheme for error checking.
For further information on Mod 10, see
Mod 10 Check Digit on page 570 .
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
126
ZPL Commands
^BX
^BX
Data Matrix Bar Code
Description The
^BX
command creates a two-dimensional matrix symbology made up of square modules arranged within a perimeter finder pattern.
The ability to create a rectangular Datamatrix bar code is not available as a ZPL coding option.
Format ^BXo,h,s,c,r,f,g
This table identifies the parameters for this format:
Parameters
o
= orientation h
= dimensional height of individual symbol elements s = quality level
Details
Accepted Values:
N
= normal
R
= rotated 90 degrees (clockwise)
I = inverted 180 degrees
B
= read from bottom up, 270 degrees
Default Value: current ^FW value
Accepted Values: 1 to the width of the label
The individual elements are square — this parameter specifies both module and row height. If this parameter is zero (or not given), the h parameter (bar height) in ^BY is used as the approximate symbol height.
Accepted Values:
0
,
50
,
80
,
100
,
140
,
200
Default Value: 0
Quality refers to the amount of data that is added to the symbol for error correction. The AIM specification refers to it as the ECC value. ECC 50, ECC 80, ECC 100, and
ECC 140 use convolution encoding; ECC 200 uses Reed-
Solomon encoding. For new applications, ECC 200 is recommended. ECC 000-140 should be used only in closed applications where a single party controls both the production and reading of the symbols and is responsible for overall system performance.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^BX
127
Parameters
c
= columns to encode r = rows to encode f
= format ID (0 to 6) — not used with quality set at 200 g = escape sequence control character
Details
Accepted Values:
9 to 49
Odd values only for quality 0 to 140 (10 to 144); even values only for quality 200.
Odd values only for quality 0 to 140 (10 to 144); even values only for quality 200. The number of rows and columns in the symbol is automatically determined. You might want to force the number of rows and columns to a larger value to achieve uniform symbol size. In the current implementation, quality 0 to 140 symbols are square, so the larger of the rows or columns supplied are used to force a symbol to that size. If you attempt to force the data into too small of a symbol, no symbol is printed.
If a value greater than 49 is entered, the rows or columns value is set to zero and the size is determined normally. If an even value is entered, it generates INVALID-P (invalid parameter). If a value less than 9 but not 0, or if the data is too large for the forced size, no symbol prints; if ^CV is active, INVALID-L prints.
Accepted Values:
9
to
49
Accepted Values:
1
= field data is numeric + space (0..9,”) – No \&’’
2
= field data is uppercase alphanumeric + space
(A..Z,’’) – No \&’’
3 = field data is uppercase alphanumeric + space, period, comma, dash, and slash (0..9,A..Z,“.-/”)
4
= field data is upper-case alphanumeric + space
(0..9,A..Z,’’) – no \&’’
5 = field data is full 128 ASCII 7-bit set
6
= field data is full 256 ISO 8-bit set
Default Value: 6
Accepted Values: any character
Default Value: ~ (tilde)
This parameter is used only if quality 200 is specified. It is the escape character for embedding special control sequences within the field data.
Note •
The default value of g will continue to be underscore
(_) for anyone with firmware version: V60.13.0.12,
V60.13.0.12Z, V60.13.0.12B, V60.13.0.12ZB, or later.
ZPL II Programming Guide 13979L-005 Rev. A
128
ZPL Commands
^BX
Table 10 • Maximum Field Sizes
ECC
LEVEL
0
50
80
100
140
ID = 1
596
457
402
300
144
ID = 2
452
333
293
218
105
ID = 3
394
291
256
190
91
Maximum Field Sizes
ID = 4
413
305
268
200
96
ID = 5
310
228
201
150
72
Example •
This is an example of a Data Matrix bar code:
DATA MATRIX BAR CODE ZPL II CODE
^
XA
^FO100,100
^BXN,10,200
^FDZEBRA TECHNOLOGIES CORPORATION
333 CORPORATE WOODS PARKWAY
VERNON HILLS, IL
60061-3109^FS
^XZ
ID = 6
271
200
176
131
63
Effects of
^BY
on
^BX w
=
module width (no effect)
r = ratio (no effect)
h = height of symbol
If the dimensions of individual symbol elements are not specified in the
^BD
command, the height of symbol value is divided by the required rows/columns, rounded, limited to a minimum value of one, and used as the dimensions of individual symbol elements.
Field Data (
^FD
) for
^BX
Quality 000 to 140
• The \& and || can be used to insert carriage returns, line feeds, and the backslash, similar to the PDF417. Other characters in the control character range can be inserted only by using
^FH . Field data is limited to 596 characters for quality 0 to 140. Excess field data causes no symbol to print; if ^CV is active, INVALID-L prints. The field data must correspond to a user-specified format ID or no symbol prints; if ^CV is active, INVALID-C prints.
• The maximum field sizes for quality 0 to 140 symbols are shown in the table in the g parameter.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^BX
129
Quality 200
• If more than 3072 bytes are supplied as field data, it is truncated to 3072 bytes. This limits the maximum size of a numeric Data Matrix symbol to less than the 3116 numeric characters that the specification would allow. The maximum alphanumeric capacity is
2335 and the maximum 8-bit byte capacity is 1556.
• If ^FH is used, field hexadecimal processing takes place before the escape sequence processing described below.
• The underscore is the default escape sequence control character for quality 200 field data.
A different escape sequence control character can be selected by using parameter g in the
^BX command.
The information that follows applies to firmware version: V60.13.0.12, V60.13.0.12Z,
V60.13.0.12B, V60.13.0.12ZB, or later. The input string escape sequences can be embedded in quality 200 field data using the ASCII 95 underscore character ( _ ) or the character entered in parameter g:
• _X is the shift character for control characters (e.g., _@=NUL,_G=BEL,_0 is PAD)
• _1 to _3 for FNC characters 1 to 3 (explicit FNC4, upper shift, is not allowed)
• FNC2 (Structured Append) must be followed by nine digits, composed of three-digit numbers with values between 1 and 254, that represent the symbol sequence and file identifier (for example, symbol 3 of 7 with file ID 1001 is represented by
_2214001001)
• 5NNN is code page NNN where NNN is a three-digit code page value (for example, Code
Page 9 is represented by _5009)
• _dNNN creates ASCII decimal value NNN for a code word (must be three digits)
• _ in data is encoded by __ (two underscores)
The information that follows applies to all other versions of firmware. The input string escape sequences can be embedded in quality 200 field data using the ASCII 7E tilde character (~) or the character entered in parameter g:
• ~X is the shift character for control characters (e.g., ~@=NUL,~G=BEL,~0 is PAD)
• ~1 to ~3 for FNC characters 1 to 3 (explicit FNC4, upper shift, is not allowed)
• FNC2 (Structured Append) must be followed by nine digits, composed of three-digit numbers with values between 1 and 254, that represent the symbol sequence and file identifier (for example, symbol 3 of 7 with file ID 1001 is represented by
~2214001001)
• 5NNN is code page NNN where NNN is a three-digit code page value (for example, Code
Page 9 is represented by ~5009)
• ~dNNN creates ASCII decimal value NNN for a code word (must be three digits)
• ~ in data is encoded by a ~ (tilde)
ZPL II Programming Guide 13979L-005 Rev. A
130
ZPL Commands
^BY
^BY
Bar Code Field Default
Description The
^BY
command is used to change the default values for the module width
(in dots), the wide bar to narrow bar width ratio and the bar code height (in dots). It can be used as often as necessary within a label format.
Format ^BYw,r,h
This table identifies the parameters for this format:
Parameters
w
= module width (in dots) r
= wide bar to narrow bar width ratio
Details
Accepted Values:
1 to 10
Initial Value at power-up: 2
Accepted Values: 2.0
to 3.0
, in 0.1 increments
This parameter has no effect on fixed-ratio bar codes.
Default Value: 3.0
Initial Value at power-up: 10 h
= bar code height (in dots)
For parameter r , the actual ratio generated is a function of the number of dots in parameter w , module width. See
.
Example •
Set module width (w) to 9 and the ratio (r) to 2.4. The width of the narrow bar is
9 dots wide and the wide bar is 9 by 2.4, or 21.6 dots. However, since the printer rounds out to the nearest dot, the wide bar is actually printed at 22 dots.
This produces a bar code with a ratio of 2.44 (22 divided by 9). This ratio is as close to 2.4 as possible, since only full dots are printed.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BY
131
Module width and height ( w
and h
) can be changed at anytime with the
^BY
command, regardless of the symbology selected.
Table 11 • Shows module width ratios in dots
Ratio
Selected
(r)
Module Width in Dots (w)
2.6
2.7
2.8
2.9
3.0
2.0
2.1
2.2
2.3
2.4
2.5
1
2:1
2:1
2:1
2:1
2:1
3:1
2:1
2:1
2:1
2:1
2:1
2 3 4 5 6 7 8 9 10
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2:1
2.1:1
2.2:1 2.16:1 2.1:1 2.12:1 2.1:1 2.2:1
2.3:1 2.25:1 2.2:1 2.16:1 2.28:1 2.25:1 2.2:1 2.3:1
2.3:1 2.25:1 2.4:1 2.3:1 2.28:1 2.37:1 2.3:1 2.4:1
2.5:1 2.3:1 2.5:1 2.4:1 2.5:1 2.4:1 2.5:1 2.4:1 2.5:1
2.5:1 2.3:1 2.5:1 2.6:1 2.5:1 2.57:1 2.5:1 2.5:1 2.6:1
2.5:1 2.6:1 2.5:1 2.6:1 2.6:1 2.57:1 2.65:1 2.6:1 2.7:1
2.5:1 2.6:1 2.75:1 2.8:1 2.6:1 2.7:1 2.75:1 2.7:1 2.8:1
2.5:1 2.6:1 2.75:1 2.8:1 2.8:1 2.85:1 2.87:1 2.8:1 2.9:1
3:1 3:1 3:1 3:1 3:1 3:1 3:1 3:1 3:1
Comments Once a ^BY command is entered into a label format, it stays in effect until another ^BY command is encountered.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
132
ZPL Commands
^BZ
^BZ
POSTNET Bar Code
Description The POSTNET bar code is used to automate the handling of mail. POSTNET uses a series of five bars, two tall and three short, to represent the digits 0 to 9.
• ^BZ supports a print ratio of 2.0:1 to 3.0:1.
• Field data (
^FD
) is limited to the width (or length, if rotated) of the label.
Format ^BZo,h,f,g
Important •
If additional information about the POSTNET bar code is required, go to www.aimglobal.org
, or contact the United States Postal Service and ask for Publication 25 —
Designing Letter Mail, which includes a full specification for POSTNET. You can also download Publication 25 from: http://pe.usps.gov/cpim/ftp/pubs/pub25/pub25.pdf
This table identifies the parameters for this format:
Parameters
o
= orientation h = bar code height (in dots) f
= print interpretation line g
= print interpretation line above code
Details
Accepted Values:
N
= normal
R = rotated 90 degrees (clockwise)
I
= inverted 180 degrees
B
= read from bottom up, 270 degrees
Default Value: current ^FW value
Accepted Values:
1
to
32000
Default Value: value set by
^BY
Accepted Values:
N = no
Y = yes
Default Value: N
Accepted Values:
N = no
Y = yes
Default Value: N
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^BZ
133
Example •
This is an example of a POSTNET bar code:
ZPL II CODE
POSTNET BAR CODE
^XA
^FO100,100^BY3
^BZN,40,Y,N
^FD12345^FS
^XZ
0 1
POSTNET BAR CODE CHARACTERS
2 3 4 5 6 7 8 9
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
134
ZPL Commands
^CC ~CC
^CC ~CC
Change Caret
Description The
^CC command is used to change the format command prefix. The default prefix is the caret ( ^ ).
Format ^CCx or ~CCx
This table identifies the parameters for this format:
Parameters
x = caret character change
Details
Accepted Values: any ASCII character
Default Value: a parameter is required. If a parameter is not entered, the next character received is the new prefix character.
Example •
This is an example of how to change the format prefix to / from a ::
^XA
^CC/
/XZ
The forward slash (/) is set at the new prefix. Note the /XZ ending tag uses the new designated prefix character (/).
Example •
This is an example of how to change the format prefix from
~
to a
/
:
~CC/
/XA/JUS/XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^CD ~CD
135
^CD ~CD
Change Delimiter
Description The
^CD
and
~CD
commands are used to change the delimiter character. This character is used to separate parameter values associated with several ZPL II commands. The default delimiter is a comma (,).
Format ^CDa or ~CDa
This table identifies the parameters for this format:
Parameters
a
= delimiter character change
Details
Accepted Values: any ASCII character
Default Value: a parameter is required. If a parameter is not entered, the next character received is the new prefix character.
Example •
This shows how to change the character delimiter to a semi-colon ( ;) :
^XA
^FO10,10
^GB10,10,3
^XZ
^XA
^CD;
^FO10;10
^GB10;10;3
•
^XZ
To save, the
JUS
command is required. Here is an example using
JUS
:
~CD;
^XA^JUS^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
136
ZPL Commands
^CF
^CF
Change Alphanumeric Default Font
Description The
^CF
command sets the default font used in your printer. You can use the
^CF command to simplify your programs.
Format ^CFf,h,w
This table identifies the parameters for this format:
Parameters Details
f = specified default font Accepted Values: A
through
Z
and
0
to
9
Initial Value at power-up:
A h
= individual character height (in dots) w = individual character width (in dots)
Accepted Values:
0 to 32000
Initial Value at power-up: 9
Accepted Values:
0
to
32000
Initial Value at power-up: 5 or last permanent saved value
Parameter f specifies the default font for every alphanumeric field. Parameter h is the default height for every alphanumeric field, and parameter w is the default width value for every alphanumeric field.
The default alphanumeric font is A. If you do not change the alphanumeric default font and do not use any alphanumeric field command ( ^AF ) or enter an invalid font value, any data you specify prints in font A.
Defining only the height or width forces the magnification to be proportional to the parameter defined. If neither value is defined, the last
^CF
values given or the default
^CF
values for height and width are used.
Example •
This is an example of ^CF code and the result of the code:
GENERATED LABEL ZPL II CODE
^XA
^CF0,89
^FO20,50
^FDA GUIDE TO^FS
^FO20,150
^FDTHE ZPL II^FS
^FO20,250
^FDPROGRAMMING^FS
^FO20,350
^FDLANGUAGE^FS
^XZ
13979L-005 Rev. A
Comments Any font in the printer, including downloaded fonts, EPROM stored fonts, and fonts A through Z and 0 to 9, can also be selected with ^CW .
ZPL II Programming Guide 5/17/07
ZPL Commands
^CI
137
^CI
Change International Font/Encoding
Description Zebra printers can print fonts using international character sets: U.S.A.1,
U.S.A.2, UK, Holland, Denmark/Norway, Sweden/Finland, Germany, France 1, France 2,
Italy, Spain, and several other sets, including the Unicode character set.
The ^CI command enables you to call up the international character set you want to use for printing. You can mix character sets on a label.
This command allows character remapping when parameter a = 0 - 13.
Format ^CIa,s1,d1,s2,d2,...
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
138
ZPL Commands
^CI
This table identifies the parameters for this format:
Parameters Details
a
= desired character set
Values 28 to 30 are only supported in firmware version V60.14.x,
V50.14.x, or later.
Accepted values 0 - 12 are Zebra Code Page 850 with specific character replacements. For details, see
International
Character Sets on page 140 and/or
Zebra Code Page 850 on page 548
Accepted Values:
0
= Single Byte Encoding - U.S.A. 1 Character Set
1 = Single Byte Encoding - U.S.A. 2 Character Set
2
= Single Byte Encoding - U.K. Character Set
3
= Single Byte Encoding - Holland Character Set
4
= Single Byte Encoding - Denmark/Norway Character
Set
5
= Single Byte Encoding - Sweden/Finland Character
Set
6
= Single Byte Encoding - Germany Character Set
7 = Single Byte Encoding - France 1 Character Set
8
= Single Byte Encoding - France 2 Character Set
9
= Single Byte Encoding - Italy Character Set
10
= Single Byte Encoding - Spain Character Set
11 = Single Byte Encoding - Miscellaneous Character
Set
12
= Single Byte Encoding - Japan (ASCII with Yen symbol) Character Set
13
= Zebra Code Page 850 (see page 548
)
14 = Double Byte Asian Encodings *
15
= Shift-JIS **
16
= EUC-JP and EUC-CN *
17 = Deprecated - UCS-2 Big Endian ****
18 to 23 = Reserved
24
= Single Byte Asian Encodings *
25 = Reserved
26 =
Multibyte Asian Encodings with ASCII
Transparency * and ***
27 = Zebra Code Page 1252 (see
)
28 = Unicode (UTF-8 encoding) - Unicode Character
Set
29 = Unicode (UTF-16 Big-Endian encoding) - Unicode
Character Set
30 = Unicode (UTF-16 Little-Endian encoding) -
Unicode Character Set
Initial Value at power-up: 0
These parameters are only valid when parameter a = 1 - 13
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^CI
139
Parameters
s1
= source 1 (character output image) d1 = destination 1
(character input) s2
= source 2 (character output image) d2 = destination 2
(character input)
… = continuation of pattern
Details
Accepted Values: decimals 0 to 255
Accepted Values: decimals 0 to 255
Accepted Values: decimals 0 to 255
Accepted Values: decimals
0
to
255
Up to 256 source and destination pairs can be entered in this command.
* The encoding is controlled by the conversion table ( *.DAT
). The correct table must be present for the conversion to function.
** Shift-JIS encoding converts Shift-JIS to JIS and then looks up the JIS conversion in
JIS.DAT
. This table must be present for Shift-JIS to function.
*** Supports ASCII transparency for Asian encodings. 7F and less are treated as single byte characters. 80 to FE is treated as the first byte of a 2 byte character 8000 to FEFF in the encoding table for Unicode. 80 to FF could mean quad byte in GB18030. The ^CI26 command can also be used to support the GB 18030 and Big5 HKSCS encodings. The GB
18030 uses the GB18030.DAT encoding table and BIG5 HKSCS uses the BIG5HK.DAT encoding table.
**** The ^CI17 command has been deprecated, along with the ^F8 and ^F16 commands that are required for the ^CI17 command to function. The recommended replacement is the
^CI28-30 commands.
We recommend that a ^CI command (or Unicode BOM) is included at the beginning of each
ZPL script. This is important when ZPL scripts with different encodings are being sent to a single printer. To assist in the interleaving of encoding schemes, the printer maintains two encoding states (^CI0 - 28 and ^CI29 - 30). It automatically acknowledges when it should switch encoding states, allowing it to distinguish between encodings, and maintains a ^CI for each, but endianess is shared.
Example •
This example remaps the Euro symbol (21) decimal to the dollar sign value (36) decimal. When the dollar sign character is sent to the printer, the Euro symbol prints:
GENERATED LABEL
ZPL II CODE
^XA
^CI0,21,36
^FO100,200^A0N50,50^FD$0123^FS
^XZ
ZPL II Programming Guide 13979L-005 Rev. A
140
ZPL Commands
^CI
The font selected determines the shape and resolution of the printed symbol.
International Character Sets
Note •
^CI 13 = US keyboard
Comments The space character cannot be remapped for any font.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^CM
141
^CM
Change Memory Letter Designation
Description The
^CM
command allows you to reassign a letter designation to the printer’s memory devices. If a format already exists, you can reassign the memory device to the corresponding letter without forcing, altering, or recreating the format itself.
Using this command affects every subsequent command that refers to specific memory locations.
Format ^CMa,b,c,d
This table identifies the parameters for this format:
Parameters Details
a
= memory alias for
B:
Accepted Values:
B: , E: , R: , A: , and NONE
Default Value: B: b
= memory alias for
E:
Accepted Values:
B: , E: , R: , A: , and NONE
Default Value: E: c
= memory alias for
R:
Accepted Values:
B: , E: , R: , A: , and NONE
Default Value: R: d
= memory alias for
A:
Accepted Values:
B: , E: , R: , A: , and NONE
Default Value: A:
Comments If two or more parameters specify the same letter designator, all letter designators are set to their default values.
It is recommended that after entering the
^CM
command,
^JUS
is entered to save changes to
EEPROM. Any duplicate parameters entered reset the letter designations back to the default.
If any of the parameters are out of specification, the command is ignored.
Example •
This example designates letter letter B: to point to the E: memory device.
E: to point to the B: memory device, and the
^XA
^CME,B,R,A
^JUS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
142
ZPL Commands
^CO
^CO
Cache On
Note •
If you have firmware x.12 or greater this command is not required because the printer firmware automatically expands the size of the character cache as needed.
Description The ^CO command is used to change the size of the character cache. By definition, a character cache (referred to as cache) is a portion of the DRAM reserved for storing scalable characters. All printers have a default 40K cache that is always turned on. The maximum single character size that can be stored, without changing the size of the cache, is
450 dots by 450 dots.
There are two types of fonts used in Zebra printers: bitmapped and scalable. Letters, numbers, and symbols in a bitmapped font have a fixed size (for example: 10 points, 12 points, 14 points). By comparison, scalable fonts are not fixed in size.
Because their size is fixed, bitmapped fonts can be moved quickly to the label. In contrast, scalable fonts are much slower because each character is built on an as-needed basis before it is moved to the label. By storing scaled characters in a cache, they can be recalled at a much faster speed.
The number of characters that can be stored in the cache depends on two factors: the size of the cache (memory) and the size of the character (in points) being saved. The larger the point size, the more space in the cache it uses. The default cache stores every scalable character that is requested for use on a label. If the same character, with the same rotation and size is used again, it is quickly retrieved from cache.
It is possible that after a while the print cache could become full. Once the cache is full, space for new characters is obtained by eliminating an existing character from the print cache.
Existing characters are eliminated by determining how often they have been used. This is done automatically. For example, a 28-point Q that was used only once would be a good candidate for elimination from the cache.
Maximum size of a single print cache character is 1500 dots by 1500 dots. This would require a cache of 274K.
When the cache is too small for the desired style, smaller characters might appear but larger characters do not. If possible, increase the size of the cache.
Format ^COa,b,c
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^CO
143
This table identifies the parameters for this format:
Parameters
a
= cache on
Details
Accepted Values:
N = no
Y = yes
Default Value: Y
Accepted Values:
1 to 9999
Default Value: 40 b
= amount of additional memory to be added to cache (in K) c = cache type
Accepted Values:
0
= cache buffer (normal fonts)
1
= internal buffer (recommended for Asian fonts)
Default Value: 0
Example •
To resize the print cache to 62K, assuming a 22K existing cache:
^COY,40
To resize the print cache to 100K, assuming a 22K existing cache:
^COY,78
Print Cache Performance
For printing large characters, memory added to the cache by the ^CO command is not physically added to the 22K cache already in the printer. In the second example above, the resulting 100K cache is actually two separate blocks of memory, 22K and 78K.
Because large characters need contiguous blocks of memory, a character requiring a cache of
90K would not be completely stored because neither portion of the 100K cache is big enough.
Therefore, if large characters are needed, the
^CO
command should reflect the actual size of the cache you need.
Increasing the size of the cache improves the performance in printing scalable fonts. However, the performance decreases if the size of the cache becomes large and contains too many characters. The performance gained is lost because of the time involved searching the cache for each character.
Comments The cache can be resized as often as needed. Any characters in the cache when it is resized are lost. Memory used for the cache reduces the space available for label bitmaps, graphic, and fonts.
Some Asian fonts require an internal working buffer that is much larger than the normal cache.
Since most fonts do not require this larger buffer, it is now a selectable configuration option.
Printing with the Asian fonts greatly reduces the printer memory available for labels, graphics, fonts, formats, and label bitmaps.
ZPL II Programming Guide 13979L-005 Rev. A
144
ZPL Commands
^CT ~CT
^CT ~CT
Change Tilde
Description The
^CT
and
~CT
commands are used to change the control command prefix.
The default prefix is the tilde (~).
Format ^CTa or ~CTa
This table identifies the parameters for this format:
Parameters
a = change control command character
Details
Accepted Values: any ASCII character
Default Value: a parameter is required. If a parameter is not entered, the next character received is the new control command character.
Example •
This is an example of how to change the control command prefix from a ^ to a + :
^XA
^CT+
^XZ
+HS
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^CV
145
^CV
Code Validation
Description The
^CV
command acts as a switch to turn the code validation function on and off. When this command is turned on, all bar code data is checked for these error conditions:
• character not in character set
• check-digit incorrect
• data field too long (too many characters)
• data field too short (too few characters)
• parameter string contains incorrect data or missing parameter
When invalid data is detected, an error message and code is printed in reverse image in place of the bar code. The message reads
INVALID - X
where
X
is one of these error codes:
C
= character not in character set
E
= check-digit incorrect
L = data field too long
S = data field too short
P
= parameter string contains incorrect data
(occurs only on select bar codes)
Once turned on, the ^CV command remains active from format to format until turned off by another
^CV
command or the printer is turned off. The command is not permanently saved.
Format ^CVa
This table identifies the parameters for this format:
Parameters
a
= code validation
Details
Accepted Values:
N = no
Y = yes
Default Value: N
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
146
ZPL Commands
^CV
Example •
The examples below show the error labels ^CVY generates when incorrect field data is entered. Compare the letter following INVALID – to the listing on the previous page.
GENERATED LABEL ZPL II CODE
^XA
^CVY
^FO50,50
^BEN,100,Y,N
^FD97823456 890^FS
^XZ
^XA
^CVY
^FO50,50
^BEN,100,Y,N
^FD9782345678907^FS
^XZ
^XA
^CVY
^FO50,50
^BEN,100,Y,N
^FD97823456789081^FS
^XZ
^XA
^CVY
^FO50,50
^BEN,100,Y,N
^FD97823456789^FS
^XZ
^XA
^CVY
^FO50,50
^BQN2,3
^FDHM,BQRCODE-22^FS
^XZ
Comments If more than one error exists, the first error detected is the one displayed.
The
^CV
command tests the integrity of the data encoded into the bar code. It is not used for
(or to be confused with) testing the scan-integrity of an image or bar code.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^CW
147
^CW
Font Identifier
Description All built-in fonts are referenced using a one-character identifier. The
^CW command assigns a single alphanumeric character to a font stored in DRAM, memory card,
EPROM, or Flash.
If the assigned character is the same as that of a built-in font, the downloaded font is used in place of the built-in font. The new font is printed on the label wherever the format calls for the built-in font. If used in place of a built-in font, the change is in effect only until power is turned off.
If the assigned character is different, the downloaded font is used as an additional font. The assignment remains in effect until a new command is issued or the printer is turned off.
Format ^CWa,d:o.x
This table identifies the parameters for this format:
Parameters
a
= letter of existing font to be substituted, or new font to be added d
= device to store font in
(optional) o = name of the downloaded font to be substituted for the built-in, or as an additional font x = extension
Details
Accepted Values:
A through Z and 0 to 9
Default Value: a one-character entry is required
Accepted Values:
R: , E: , B: , and A:
Default Value: R:
Accepted Values: any name up to 8 characters
Default Value: if a name is not specified, UNKNOWN is used
.TTE is only supported in firmware version V60.14.x,
V50.14.x, or later.
Accepted Values:
.FNT = Font
.TTF
= TrueType Font
.TTE = TrueType Extension
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
148
ZPL Commands
^CW
•
•
•
Example •
These examples show how to use:
MYFONT.FNT
stored in DRAM whenever a format calls for Font A:
^XA
^CWA,R:MYFONT.FNT
^XZ
MYFONT.FNT
stored in DRAM additionally as Font Q:
^XA
^CWQ,R:MYFONT.FNT
^XZ
NEWFONT.FNT
stored in DRAM whenever a format calls for font F:
^XA
^CWF,R:NEWFONT.FNT
^XZ
Label Listing Before Assignment Label Listing After Assignment
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~DB
149
~DB
Download Bitmap Font
Description The
~DB
command sets the printer to receive a downloaded bitmap font and defines native cell size, baseline, space size, and copyright.
This command consists of two portions, a ZPL II command defining the font and a structured data segment that defines each character of the font.
Format ~DBd:o.x,a,h,w,base,space,#char,©,data
This table identifies the parameters for this format:
Parameters
d
= drive to store font o = name of font
Details
Accepted Values:
R: , E: , B: , and A:
Default Value: R:
Accepted Values: 1 to 8 alphanumeric characters
Default Value: if a name is not specified, UNKNOWN is used
Fixed Value: .FNT
Fixed Value: normal x
= extension a
= orientation of native font h = maximum height of w cell (in dots)
= maximum width of cell (in dots)
Accepted Values:
1
to
32000
Default Value: a value must be specified
Accepted Values:
1 to 32000
Default Value: a value must be specified
Accepted Values:
1
to
32000
Default Value: a value must be specified base = dots from top of cell to character baseline space = width of space or non-existent characters
#char = number of characters in font
Accepted Values:
1
to
32000
Default Value: a value must be specified
Accepted Values:
1
to
256
(must match the characters being downloaded)
Default Value: a value must be specified
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
150
ZPL Commands
~DB
Parameters
©
= copyright holder data = structured
ASCII data that defines each character in the font
Details
Accepted Values:
1 to 63 alphanumeric characters
Default Value: a value must be specified
The # symbol signifies character code parameters, which are separated with periods. The character code is from 1 to 4 characters to allow for large international character sets to be downloaded to the printer.
The data structure is:
#xxxx.h.w.x.y.i.data
#xxxx
= character code h
= bitmap height (in dot rows) w
= bitmap width (in dot rows) x = x-offset (in dots) y
= y-offset (in dots) i
= typesetting motion displacement (width, including
inter character gap of a particular character in the font) data = hexadecimal bitmap description
Example •
This is an example of how to use the characters of a font being downloaded to DRAM.
~DB command. It shows the first two
~DBR:TIMES.FNT,N,5,24,3,10,2,ZEBRA 1992,
#0025.5.16.2.5.18.
OOFF
OOFF
FFOO
FFOO
FFFF
#0037.4.24.3.6.26.
OOFFOO
OFOOFO
OFOOFO
OOFFOO
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~DE
151
~DE
Download Encoding
Description The standard encoding for TrueType Windows® fonts is always Unicode. The
ZPL II field data must be converted from some other encoding to Unicode that the Zebra printer understands. The required translation tables are provided with font packs. Some tables can be downloaded from www.zebra.com
.
Format ~DEd:o.x,s,data
This table identifies the parameters for this format:
Parameters
d
= location of table o = name of table x
= extension s
= table size data
= data string
Details
Accepted Values:
R: , E: , B: , and A:
Default Value: R:
Accepted Values: any valid name, up to 8 characters
Default Value: if a name is not specified, UNKNOWN is used
Fixed Value: .DAT
Accepted Values: the number of memory bytes required to hold the Zebra downloadable format of the font
Default Value: if an incorrect value or no value is entered, the command is ignored
Accepted Values: a string of ASCII hexadecimal values
Default Value: if no data is entered, the command is ignored
Example •
This is an example of how to download the required translation table:
~DER:JIS.DAT,27848,300021213001...
(27848 two-digit hexadecimal values)
Comments For more information on ZTools or ZebraNet Bridge, see the program documentation included with the software.
For assistance with editing or adding mappings to .DAT tables, ZebraNet Bridge includes a
.DAT table editor in the font wizard.
Encoding scheme for the data sent to the printer is the second four character and the encoding scheme for the font is the first four characters throughout the .DAT file. The data must be ordered by the second four characters (the encoding table).
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
152
ZPL Commands
~DE
Example •
This is an example of a .DAT table. The table below the example identifies the elements:
~DEE:EXAMPLE.DAT,16,
00310041
00320042
00330043
00340044
3
4
1
2
3
4
1
2
Input stream with 0041 will be mapped to
0031. The printer prints "1".
Input stream with 0042 will be mapped to
0032. The printer prints "2".
Input stream with 0043 will be mapped to
0033. The printer prints "3".
Input stream with 0044 will be mapped to
0034. The printer prints "4".
Data must have 0041, 0042, 0043, and 0044 in order. Multiple pairs can be on the same line.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^DF
153
^DF
Download Format
Description The
^DF
command saves ZPL II format commands as text strings to be later merged using ^XF with variable data. The format to be stored might contain field number
( ^FN ) commands to be referenced when recalled.
While use of stored formats reduces transmission time, no formatting time is saved—this command saves ZPL II as text strings formatted at print time.
Enter the ^DF stored format command immediately after the ^XA command, then enter the format commands to be saved.
Format ^DFd:o.x
This table identifies the parameters for this format:
Parameters Details
d
= device to store image Accepted Values:
R: , E: , B: , and A:
Default Value: R: o
= image name
Accepted Values:
1 to 8 alphanumeric characters
Default Value: if a name is not specified, UNKNOWN is used x
= extension
Fixed Value: .ZPL
For a complete example of the ^DF and ^XF command, see
format and recall format on page 37 .
Example •
This example is generated using the ^XF command to recall this format:
GENERATED LABEL ZPL II CODE
^XA
^DFR:STOREFMT.ZPL^FS
^FO25,25
^AD,36,20^FN1^FS
^FO165,25
^AD,36,20^FN2^FS
^FO25,75
^AB,22,14^FDBUILT BY^FS
^FO25,125
^AE,28,15^FN1
^XZ
^XA
^XFR:STOREFMT.ZPL^FS
^FN1^FDZEBRA^FS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
154
ZPL Commands
~DG
~DG
Download Graphics
Description The
~DG
command downloads an ASCII Hex representation of a graphic image. If .GRF
is not the specified file extension, .GRF
is automatically appended.
For more saving and loading options when downloading files, see
.
Format ~DGd:o.x,t,w,data
This table identifies the parameters for this format:
Parameters Details
d
= device to store image Accepted Values:
R: , E: , B: , and A:
Default Value: R: o
= image name
Accepted Values:
1 to 8 alphanumeric characters
Default Value: if a name is not specified, UNKNOWN is used x
= extension t = total number of bytes in graphic
Fixed Value: .GRF
See the formula in the examples below.
See the formula in the examples below.
w = number of bytes per row data
= ASCII hexadecimal string defining image
The data string defines the image and is an ASCII hexadecimal representation of the image. Each character represents a horizontal nibble of four dots.
This is the key for the examples that follow: x
= width of the graphic in millimeters y
= height of the graphic in millimeters z
= dots/mm = print density of the printer being programmed
8
= bits/byte
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
~DG
155
Examples •
These are some example related to the ~DG command:
To determine the t parameter use this formula:
8
= totalbytes
To determine the correct t parameter for a graphic 8 mm wide, 16 mm high, and a print density of 8 dots/mm, use this formula:
⎛ ⎞
×
= 1024 t = 1024
Raise any portion of a byte to the next whole byte.
To determine the w parameter (the width in terms of bytes per row) use this formula:
⎛ ⎞
= 8
To determine the correct w parameter for a graphic 8 mm wide and a print density of 8 dots/mm, use this formula:
⎛ w
⎞
= 8
Raise any portion of a byte to the next whole byte.
Parameter w is the first value in the t calculation.
The data parameter is a string of hexadecimal numbers sent as a representation of the graphic image. Each hexadecimal character represents a horizontal nibble of four dots. For example, if the first four dots of the graphic image are white and the next four black, the dot-by-dot binary code is 00001111. The hexadecimal representation of this binary value is 0F. The entire graphic image is coded in this way, and the complete graphic image is sent as one continuous string of hexadecimal values.
ZPL II Programming Guide 13979L-005 Rev. A
156
ZPL Commands
~DG
This is an example of using the
~DG
command to load a checkerboard pattern into DRAM. The name used to store the graphic is SAMPLE.GRF
:
ZPL II CODE GENERATED LABEL
~DGR:SAMPLE.GRF,00080,010,
FFFFFFFFFFFFFFFFFFFF
8000FFFF0000FFFF0001
8000FFFF0000FFFF0001
8000FFFF0000FFFF0001
FFFF0000FFFF0000FFFF
FFFF0000FFFF0000FFFF
FFFF0000FFFF0000FFFF
FFFFFFFFFFFFFFFFFFFF
^XA
^F020,20^XGR:SAMPLE.GRF,1,1^FS
^XZ
Comments Do not use spaces or periods when naming your graphics. Always use different names for different graphics.
If two graphics with the same name are sent to the printer, the first graphic is erased and replaced by the second graphic.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~DN
157
~DN
Abort Download Graphic
Description After decoding and printing the number of bytes in parameter t
of the
~DG command, the printer returns to normal Print Mode. Graphics Mode can be aborted and normal printer operation resumed by using the ~DN command.
Format ~DN
Comments If you need to stop a graphic from downloading, you should abort the transmission from the host device. To clear the ~DG command, however, you must send a ~DN command.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
158
ZPL Commands
~DS
~DS
Download Intellifont (Scalable Font)
Description The
~DS
command is used to set the printer to receive a downloadable scalable font and defines the size of the font in bytes.
The ~DS command, and its associated parameters, is the result of converting a vendorsupplied font for use on a Zebra printer. To convert this font use the ZTools utility.
Format ~DSd:o.x,s,data
This table identifies the parameters for this format:
Parameters Details
d
= device to store image Accepted Values:
R: , E: , B: , and A:
Default Value: R: o = image name
Accepted Values:
1
to
8
alphanumeric characters
Default Value: if a name is not specified, UNKNOWN is used x
= extension
Fixed Value: .FNT
s
= size of font in bytes
Fixed Value: this number is generated by ZTools and should not be changed data = ASCII hexadecimal string that defines font
Fixed Value: this number is generated by ZTools and should not be changed
Example •
This example shows the first three lines of a scalable font that was converted using the ZTools program and is ready to be downloaded to the printer. If necessary, the destination and object name can be changed.
~DSB:CGTIMES.FNT,37080,
OOFFOOFFOOFFOOFF
FFOAECB28FFFOOFF
Comments Downloaded scalable fonts are not checked for integrity. If they are corrupt, they cause unpredictable results at the printer.
If you are using a TrueType font use these commands: ~DT, ~DU, and ~DY. To determine
when to use the noted commands, see ~DT on page 159 ,
, and
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~DT
159
~DT
Download Bounded TrueType Font
Description Use ZTools to convert a TrueType font to a Zebra-downloadable format that
~DT command. For
information on converting and downloading Intellifont information, see ~DS on page 158
.
Format ~DTd:o.x,s,data
This table identifies the parameters for this format:
Parameters
d
= font location o x s
= font name
= extension
= font size data
= data string
Details
Accepted Values:
R: , E: , B: , and A:
Default Value: R:
Accepted Values: any valid TrueType name, up to 8 characters
Default Value: if a name is not specified, UNKNOWN is used
Fixed Value: .DAT
Accepted Values: the number of memory bytes required to hold the Zebra-downloadable format of the font
Default Value: if an incorrect value or no value is entered, the command is ignored
Accepted Values: a string of ASCII hexadecimal values (two hexadecimal digits/byte). The total number of two-digit values must match parameter s
.
Default Value: if no data is entered, the command is ignored
Example •
This is an example of how to download a true type font:
~DTR:FONT,52010,00AF01B0C65E...
(52010 two-digit hexadecimal values)
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
160
ZPL Commands
~DU
~DU
Download Unbounded TrueType Font
Description Some international fonts, such as Asian fonts, have more than
256 printable characters. These fonts are supported as large TrueType fonts and are downloaded to the printer with the ~DU command. Use ZTools to convert the large TrueType fonts to a Zebra-downloadable format.
Format ~DUd:o.x,s,data
This table identifies the parameters for this format:
Parameters
d
= font location o = font name x
= extension s
= font size data
= data string
Details
Accepted Values:
R: , E: , B: , and A:
Default Value: R:
Accepted Values: 1 to 8 alphanumeric characters
Default Value: if a name is not specified, UNKNOWN is used
Fixed Value: .FNT
Accepted Values: the number of memory bytes required to hold the Zebra-downloadable format of the font
Default Value: if no data is entered, the command is ignored
Accepted Values: a string of ASCII hexadecimal values (two hexadecimal digits/byte). The total number of two-digit values must match parameter s
.
Default Value: if no data is entered, the command is ignored
Example •
This is an example of how to download an unbounded true type font:
~DUR:KANJI,86753,60CA017B0CE7...
(86753 two-digit hexadecimal values)
For similar commands, see
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~DY
161
~DY
Download Objects
Description The
~DY
command downloads to the printer graphic objects or fonts in any supported format. This command can be used in place of ~DG for more saving and loading options. ~DY is the preferred command to download TrueType fonts on printers with firmware later than X.13. It is faster than ~DU. The ~DY command also supports downloading wireless certificate files.
Note •
When using certificate files, your printer supports:
•
•
•
Using Privacy Enhanced Mail (PEM) formatted certificate files.
Using the client certificate and private key as two files, each downloaded separately.
Using exportable PAC files for EAP-FAST.
Format ~DYd:f,b,x,t,w,data
This table identifies the parameters for this format:
Parameters
d
= file location
Details
Accepted Values:
R: , E: , B: , and A:
Default Value: R:
.NRD and .PAC files reside on E: in firmware versions V60.15.x,
V50.15.x, or later.
f
= file name b = format downloaded in data field
.TTE and .TTF are only supported in firmware versions V60.14.x,
V50.14.x, or later.
Accepted Values: 1 to 8 alphanumeric characters
Default Value: if a name is not specified, UNKNOWN is used
Accepted Values:
A
= uncompressed (ZB64, ASCII)
B = uncompressed (.TTE, .TTF, binary)
C = AR-compressed (used only by Zebra’s BAR-ONE v5)
®
P = portable network graphic (.PNG) - ZB64 encoded
Default Value: a value must be specified
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
162
ZPL Commands
~DY
Parameters
x
= extension of stored file
.TTE and .OTF are only supported in firmware versions V60.14.x,
V50.14.x, or later.
Details
Accepted Values:
B = bitmap
E = TrueType Extension (.TTE)
G = raw bitmap (.GRF)
P = store as compressed (.PNG)
T
= TrueType (.TTF) or OpenType (.OTF)
X = Paintbrush (.PCX)
NRD = Non Readable File (.NRD)
PAC = Protected Access Credential .PAC)
Default Value: a value other than the accepted values defaults to
.GRF
.NRD and .PAC are only supported in firmware versions V60.15.x,
V50.15.x, or later. t
= total number of bytes in file
.TTE is only supported in firmware versions
V60.14.x, V50.14.x, or later.
Accepted Values:
.BMP
This parameter refers to the actual size of the file, not the amount of disk space.
.GRF
images: the size after decompression into memory
This parameter refers to the actual size of the file, not the amount of disk space.
.PCX
This parameter refers to the actual size of the file, not the amount of disk space.
.PNG
images:
This parameter refers to the actual size of the file, not the amount of disk space.
.TTF
.TTE
This parameter refers to the actual size of the file, not the amount of disk space.
This parameter refers to the actual size of the file, not the amount of disk space.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~DY
163
Parameters
w
= total number of bytes per row
.TTE is only supported in firmware version V60.14.x,
V50.14.x, or later.
Details
Accepted Values:
.GRF
images: number of bytes per row
.PNG
images: value ignored
.TTF images: value ignored
.TTE images: value ignored
.NRD images: value ignored
.PAC images: value ignored
.NRD and .PAC files are supported in firmware version V60.15.x,
V50.15.x, or later. data = data
ASCII hexadecimal encoding, ZB64, or binary data, depending on b .
A, P
= ASCII hexadecimal or ZB64
B, C = binary
When binary data is sent, all control prefixes and flow control characters are ignored until the total number of bytes needed for the graphic format is received.
Note •
The ~DY command and the binary font file or binary graphic file can be sent as two separate files. If the files are sent to the printer separately, the data light might remain lit until the printer receives the TrueType font file. SIZE number of bytes must be received for the download to complete successfully. The graphic files must be monochrome (black and white).
Example •
This is an example of how to download a binary TrueType Font file of Size bytes using the name fontfile.ttf and storing it to permanent flash memory on the printer:
~DYE:FONTFILE.TTF,B,T,SIZE,,
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
164
ZPL Commands
~DY
Examples •
These examples show:
• that when the ^IM command is used with the ^FO command, the ^IM command moves the logo.png file from a storage area to the 0,0 position on the label. This is the ZPL code:
^XA
^FO0,0^IMR:LOGO.PNG^FS
^XZ
• that when the ^IL command is used at the beginning of a label format, it loads a stored image (logo.png) of a format and merges it with additional data. It is automatically positioned at the 0,0 position of the label and does not require the ^FO command. This is the ZPL code:
^XA
^ILR:LOGO.PNG
^XZ
Comments For more information on ZB64 encoding and compression, see
ZB64 Encoding and Compression on page 573
.
These are some important things to know about this command in firmware version V60.14.x,
V50.14.x, or later:
• ZebraNet Bridge can be used to download fonts and graphics with this command.
• OpenType tables are only supported when downloading the font with this command
• OpenType fonts (.OTF) are supported if they are downloaded as a TrueType font. In the printer .OTF fonts have the .TTF extension.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
~EG
Erase Download Graphics
See
ZPL Commands
~EG
165
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
166
ZPL Commands
^FB
^FB
Field Block
Description The
^FB
command allows you to print text into a defined block type format.
This command formats an ^FD or ^SN string into a block of text using the origin, font, and rotation specified for the text string. The ^FB command also contains an automatic word-wrap function.
Format ^FBa,b,c,d,e
This table identifies the parameters for this format:
Parameters
a
= width of text block line (in dots) b
= maximum number of lines in text block c
= add or delete space d e between lines (in dots)
= text justification
= hanging indent (in dots) of the second and remaining lines
Details
Accepted Values:
0 to the width of the label
Default Value: 0
If the value is less than font width or not specified, text does not print.
Accepted Values:
1 to 9999
Default Value: 1
Text exceeding the maximum number of lines overwrites the last line. Changing the font size automatically increases or decreases the size of the block.
Accepted Values:
-9999 to 9999
Default Value: 0
Numbers are considered to be positive unless preceded by a minus sign. Positive values add space; negative values delete space.
Accepted Values:
L = left
C = center
R = right
J = justified
Default Value: L
If J is used the last line is left-justified.
Accepted Values:
0 to 9999
Default Value:
0
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^FB
167
Example •
These are examples of how the ^FB command affects field data.
ZPL II CODE GENERATED LABEL
^XA
^CF0,30,30^FO25,50
^FB250,4,,
^FDFD command that IS preceded by an FB command.^FS
^XZ
^XA
^CF0,30,30^FO25,50
^FDFD command that IS NOT preceded by an FB command.^FS
^XZ
Comments
This scheme can be used to facilitate special functions:
\& = carriage return/line feed
\(*) = soft hyphen (word break with a dash)
\\ = backslash (\)
Item 1: ^CI13 must be selected to print a backslash (\).
Item 2: If a soft hyphen escape sequence is placed near the end of a line, the hyphen is printed.
If it is not placed near the end of the line, it is ignored.
(*) = any alphanumeric character
• If a word is too long to print on one line by itself (and no soft hyphen is specified), a hyphen is automatically placed in the word at the right edge of the block. The remainder of the word is on the next line. The position of the hyphen depends on word length, not a syllable boundary. Use a soft hyphen within a word to control where the hyphenation occurs.
• Maximum data-string length is 3K, including control characters, carriage returns, and line feeds.
• Normal carriage returns, line feeds, and word spaces at line breaks are discarded.
• When using ^FT (Field Typeset), ^FT uses the baseline origin of the last possible line of text. Increasing the font size causes the text block to increase in size from bottom to top.
This could cause a label to print past its top margin.
• When using ^FO (Field Origin), increasing the font size causes the text block to increase in size from top to bottom.
•
^FS
terminates an
^FB
command. Each block requires its own
^FB
command.
ZPL II Programming Guide 13979L-005 Rev. A
168
ZPL Commands
^FB
While the ^FB command has a text justification parameter that defines the justification of the text within the block, it also interacts with the justification of ^FO and ^FT that define the justification of the origin.
The ^FB command does not support soft hyphens as a potential line break point. However, soft hyphen characters are always printed as if they were a hyphen.
The ^FB command does not support complex text. For complex text support, use ^TB.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^FC
169
^FC
Field Clock
Description The
^FC
command is used to set the clock-indicators (delimiters) and the clock mode for use with the Real-Time Clock hardware. This command must be included within each label field command string each time the Real-Time Clock values are required within the field.
Format ^FCa,b,c
This table identifies the parameters for this format:
Parameters
a = primary clock indicator character indicator character c = third clock indicator character
Details
Accepted Values: any ASCII character
Default Value: %
Accepted Values: any ASCII character
Default Value: none—this value cannot be the same as a or c
Accepted Values: any ASCII character
Default Value: none—this value cannot be the same as a or b
Example •
Entering these ZPL commands sets the primary clock indicator to %, the secondary clock indicator to {, and the third clock indicator to #. The results are printed on a label with Primary, Secondary, and Third as field data.
GENERATED LABEL ZPL II CODE
^XA
^FO10,100^A0N,50,50
^FC%,{,#
^FDPrimary: %m/%d/%y^FS
^FO10,200^A0N,50,50
^FC%,{,#
^FDSecondary: {m/{d/{y^FS
^FO10,300^A0N,50,50
^FC%,{,#
^FDThird: #m/#d/#y^FS
^XZ
Comments The ^FC command is ignored if the Real Time Clock hardware is not present.
As of V60.13.0.10, (
^SN
) functions with (
^FC
) capabilities.
For more details on the Real Time Clock, see
.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
170
ZPL Commands
^FD
^FD
Field Data
Description The
^FD
command defines the data string for the field. The field data can be any printable character except those used as command prefixes ( ^ and ~ ).
Format ^FDa
This table identifies the parameters for this format:
Parameters
a = data to be printed
Details
Accepted Values: any data string up to 3072 bytes
Default Value: none—a string of characters must be entered
Comments The ^ and ~ characters can be printed by changing the prefix characters—see
^CT ~CT on page 144 . The new prefix characters cannot be
printed.
Characters with codes above 127, or the
^
and
~
characters, can be printed using the
^FH
and
^FD commands.
• ^CI13 must be selected to print a backslash (\).
For information on using soft hyphens, see
Comments on the ^FB command on page 167
.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^FH
171
^FH
Field Hexadecimal Indicator
Description The
^FH
command allows you to enter the hexadecimal value for any character directly into the ^FD statement. The ^FH command must precede each ^FD command that uses hexadecimals in its field.
Within the ^FD statement, the hexadecimal indicator must precede each hexadecimal value.
The default hexadecimal indicator is _ (underscore). There must be a minimum of two characters designated to follow the underscore. The a parameter can be added when a different hexadecimal indicator is needed.
This command can be used with any of the commands that have field data (that is ^FD , ^FV
(Field Variable), and
^SN
(Serialized Data)).
Valid hexadecimal characters are:
0 1 2 3 4 5 6 7 8 9 A B C D E F a b c d e f
Format ^FHa
This table identifies the parameters for this format:
Parameters
a
= hexadecimal indicator
Details
Accepted Values: any character except current format and control prefix (^ and ~ by default)
Default Value: _ (underscore)
Example •
This is an example of how to enter a hexadecimal value directly into a
^FD statement: This is an example for ascii data using ^CI0.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
172
ZPL Commands
^FH
Examples •
These are examples of how ^FH works with UTF-8 and UTF-16BE:
UTF-8
ZPL II CODE
^XA
^CI28
^LL500
^FO100,100
^AA,20,20
^FH^FDU+00A1 in UTF8 = _C2_A1^FS
^XZ
GENERATED LABEL
UTF-16BE
ZPL II CODE
^XA
^CI29
^LL500
^FO100,100
^AA,20,20
^FH^FDU+00A1 in UTF16BE = _00_A1^FS
^XZ
GENERATED LABEL
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^FL
173
^FL
Font Linking
This command is available only for printers with firmware versions V60.14.x, V50.14.x, or later.
Description The ^FL command provides the ability to link any TrueType font, including private character fonts, to associated fonts. If the base font does not have a glyph for the required character, the printer looks to the linked fonts for the glyph. The font links are userdefinable.
The font linking remains until the link is broken or the printer is turned off. To permanently save the font linking, use the
^JUS
command.
Note •
For assistance in setting up the font links, please use the font wizard in
ZebraNet Bridge.
Format ^FL<ext>,<base>,<link>
This table identifies the parameters for this format:
Parameters
<ext>
<base>
<link>
Details
This is the fully-qualified filename of the extension. This file name does not accept wildcards.
The supported extensions for this parameter are: .TTF and
.TTE. The format for this parameter is the memory device followed by the font name with the extension, as follows:
E:SWISS721.TTF
This is the filename of the base font(s) to which <ext> is associated. This can be partially or fully wild carded; all files that match the wildcard specification will have this extension associated with it.
The filename does not have to match a file that is currently defined on the printer. A specification of *.TTF results in all
*.TTF font files loaded on the printer currently or in the future to be associated with the specified <ext> font extension.
This is an indicator that determines if the extension is to be linked with the base, or unlinked from the base, as follows:
Accepted Values:
0 = <ext> is to be unlinked (disassociated) from the file(s) specified in <base>
1 = <ext> is to be linked (associated) with the file(s) specified by <base>
Default Value: must be an accepted value or it is ignored
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
174
ZPL Commands
^FL
Comments A font can have up to five fonts linked to it. The printer resident font, 0.FNT is always the last font in the list of font links, but is not included in the five link maximum. It can also be placed anywhere in the font links list.
The default glyph prints when a glyph cannot be found in any of the fonts in the link list. The advanced layout command ^PA determines if the default glyph is a space character or the default glyph of the base font, which is typically a hollow box.
The list of font links can be printed by using the ^LF command or retrieved with the ^HT command.
Examples •
These examples show the code and output for no font linking and for font linking:
No Font Linking
In the no font linking example, the Swiss721 font does not have the Asian glyphs, which is why Asian glyphs do not print.
ZPL II CODE GENERATED LABEL
13979L-005 Rev. A
Font Linking
In the font linking example, this code is sent down to link the ANMDJ.TTF font to
SWISS721.TTF font:
^XA
^FLE:ANMDJ.TTF,E:SWISS721.TTF,1^FS
^XZ
When the label reprints, the Asian characters are printed using the ANMDJ.TTF font, rather than the SWISS721.TTF font.
ZPL II Programming Guide 5/17/07
ZPL II CODE
ZPL Commands
^FL
175
GENERATED LABEL
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
176
ZPL Commands
^FM
^FM
Multiple Field Origin Locations
Description The
^FM
command allows you to control the placement of bar code symbols.
It designates field locations for the PDF417 ( ^B7 ) and MicroPDF417 ( ^BF ) bar codes when the structured append capabilities are used. This allows printing multiple bar codes from the same set of text information.
The structured append capability is a way of extending the text printing capacity of both bar codes. If a string extends beyond what the data limitations of the bar code are, it can be printed as a series: 1 of 3, 2 of 3, 3 of 3. Scanners read the information and reconcile it into the original, unsegmented text.
The
^FM
command triggers multiple bar code printing on the same label with
^B7
and
^BF only. When used with any other commands, it is ignored.
Format ^FMx1,y1,x2,y2,...
This table identifies the parameters for this format:
Parameters
x1 = x-axis location of first symbol (in dots) y1 = y-axis location of first symbol (in dots) x2 = x-axis location of second symbol (in dots) y2 = y-axis location of
… second symbol (in dots)
= continuation of X,Y pairs
Details
Accepted Values:
0
to
32000 e
= exclude this bar code from printing
Default Value: a value must be specified
Accepted Values:
0 to 32000 e
= exclude this bar code from printing
Default Value: a value must be specified
Accepted Values:
0 to 32000 e
= exclude this bar code from printing
Default Value: a value must be specified
Accepted Values:
0
to
32000 e
= exclude this bar code from printing
Default Value: a value must be specified
Maximum number of pairs:
60
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^FM
177
Example •
This example shows you how to generate three bar codes with the text “Zebra
Technologies Corporation strives to be…” would need to be repeated seven times, which includes 2870 characters of data (including spaces) between ^FD and ^FS:
ZPL II CODE
^XA
^FM100,100,100,600,100,1200
^BY2,3
^B7N,5,5,9,83,N
^FDZebra Technologies
Corporation strives to be the expert supplier of innovative solutions to specialty demand labeling and ticketing problems of business and government.
We will attract and retain the best people who will understand our customer's needs and provide them with systems, hardware, software, consumables and service offering the best value, high quality, and reliable performance, all delivered in a timely manner
…
^FS^XZ
GENERATED LABEL
1
1
The ellipse is not part of the code. It indicates that the text needs to be repeated seven times, as mentioned in the example description.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
178
ZPL Commands
^FM
Example •
This example assumes a maximum of three bar codes, with bar code 2 of 3 omitted:
ZPL II CODE
^XA
^FM100,100,e,e,100,1200
^BY2,3
^B7N,5,5,9,83,N
^FDZebra Technologies
Corporation strives to be the expert supplier of innovative solutions to specialty demand labeling and ticketing problems of business and government.
We will attract and retain the best people who will understand our customer's needs and provide them with systems, hardware, software, consumables and service offering the best value, high quality, and reliable performance, all delivered in a timely manner
…
^FS^XZ
GENERATED LABEL
13979L-005 Rev. A
1
1
The ellipse is not part of the code. It indicates that the text needs to be repeated seven times, as mentioned in the example description.
Comments Subsequent bar codes print once the data limitations of the previous bar code have been exceeded. For example, bar code 2 of 3 prints once 1 of 3 has reached the maximum amount of data it can hold. Specifying three fields does not ensure that three bar codes print; enough field data to fill three bar code fields has to be provided.
The number of the x,y pairs can exceed the number of bar codes generated. However, if too few are designated, no symbols print.
ZPL II Programming Guide 5/17/07
ZPL Commands
^FN
179
^FN
Field Number
Description The
^FN
command numbers the data fields. This command is used in both
^DF (Store Format) and ^XF (Recall Format) commands.
In a stored format, use the ^FN command where you would normally use the ^FD (Field
Data) command. In recalling the stored format, use ^FN in conjunction with the ^FD command.
The number of fields and data that can be stored is dependent in the available printer memory.
Note •
The maximum number of ^FN commands that can be used depends on the amount of data that is placed in the fields on the label. It is recommended to use 400 or fewer fields.
Format ^FN#
This table identifies the parameters for this format:
Parameters
#
= number to be assigned to the field
Details
Accepted Values:
0 to 9999
Default Value: 0
For a complete example of the ^DF and ^XF command, see
format and recall format on page 37 .
Comments
• The same ^FN value can be stored with several different fields.
• If a label format contains a field with ^FN and ^FD , the data in that field prints for any other field containing the same
^FN
value.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
180
ZPL Commands
^FO
^FO
Field Origin
Description The
^FO
command sets a field origin, relative to the label home (
^LH
) position.
Format ^FOx,y,z
This table identifies the parameters for this format:
Parameters
x = x-axis location (in dots) y
= y-axis location (in dots) z = justification
Details
Accepted Values:
0
to
32000
Default Value: 0
Accepted Values:
0 to 32000
Default Value: 0
Accepted Values:
0 = left justification
1 = right justification
2 = auto justification (script dependent)
Default Value: last accepted ^FW value or ^FW default
The z parameter is only supported in firmware versions V60.14.x,
V50.14.x, or later.
Comments If the value entered for the field origin completely off the label.
x
or y
parameter is too high, it could position the
This command interacts with the field direction parameter of ^FP and with the rotation parameter of ^A. For output and examples, see
Field Interactions on page 579
.
The auto justification option might cause unexpected results if variable fields or bidirectional text are used with ^FO. For the best results with bidirectional text and/or variable fields, use either the left of right justification option.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^FP
181
^FP
Field Parameter
Description The
^FP
command allows vertical and reverse formatting of the font field, commonly used for printing Asian fonts.
Format ^FPd,g
This table identifies the parameters for this format:
Parameters
d = direction g
= additional inter-character gap
(in dots)
.
Details
Accepted Values:
H
= horizontal printing (left to right)
V
= vertical printing (top to bottom)
R
= reverse printing (right to left)
Default Value: H
Accepted Values:
0 to 9999
Default Value: 0 if no value is entered
Example •
This is an example of how to implement reverse and vertical print:
5/17/07
For vertical and reverse printing directions, combining semantic clusters are used to place characters.
This command interacts with the justification parameters of ^FO and ^FT and with the rotation parameter of ^A. For output and examples, see
Field Interactions on page 579 .
ZPL II Programming Guide 13979L-005 Rev. A
182
ZPL Commands
^FR
^FR
Field Reverse Print
Description The
^FR
command allows a field to appear as white over black or black over white. When printing a field and the ^FR command has been used, the color of the output is the reverse of its background.
Format ^FR
Example •
In this example, the ^GB command creates areas of black allowing the printing to appear white:
GENERATED LABEL ZPL II CODE
^XA
^PR1
^FO100,100
^GB70,70,70,,3^FS
^FO200,100
^GB70,70,70,,3^FS
^FO300,100
^GB70,70,70,,3^FS
^FO400,100
^GB70,70,70,,3^FS
^FO107,110^CF0,70,93
^FR^FDREVERSE^FS
^XZ
Comments The
^FR command applies to only one field and has to be specified each time.
When multiple
^FR
commands are going to be used, it might be more convenient to use the
^LR command.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^FS
183
^FS
Field Separator
Description The
^FS
command denotes the end of the field definition. Alternatively,
^FS command can also be issued as a single ASCII control code SI (Control-O, hexadecimal 0F).
Format ^FS
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
184
ZPL Commands
^FT
^FT
Field Typeset
Description The
^FT
command sets the field position, relative to the home position of the label designated by the ^LH command. The typesetting origin of the field is fixed with respect to the contents of the field and does not change with rotation.
Note •
The ^FT command is capable of concantination of fields.
Format ^FTx,y,z
This table identifies the parameters for this format:
Parameters
x
= x-axis location (in dots) y
= y-axis location (in dots) z = justification
The z parameter is only supported in firmware version V60.14.x,
V50.14.x, or later.
Text
Bar Codes
Graphic Boxes
Images
Text
Bar Codes
Graphic Boxes
Images
Details
Accepted Values:
0 to 32000
Default Value: position after last formatted text field
Accepted Values:
0 to 32000
Default Value: position after last formatted text field
Accepted Values:
0 = left justification
1 = right justification
2 = auto justification (script dependent)
Default Value: last accepted ^FW value or ^FW default
The auto justification option may cause unexpected results if variable fields or bidirectional text are used with ^FT. For best results with bidirectional text and/or variable fields, use either the left of right justification options.
Table 12 • Typeset Justification
For examples, see
Field Interactions on page 579 .
Origin is base of bar code, at left edge
Origin is bottom-left corner of the box
Origin is bottom-left corner of the image area
For examples, see
Field Interactions on page 579 .
Origin is base of bar code, at right edge
Origin is bottom-right corner of the box
Origin is bottom-right corner of the image area
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Example •
This is an example of the ^FT command and concatenation:
ZPL Commands
^FT
185
When a coordinate is missing, the position following the last formatted field is assumed. This
remembering simplifies field positioning with respect to other fields. Once the first field is positioned, other fields follow automatically.
There are several instances where using the ^FT command without specifying x and y parameters is not recommended:
• when positioning the first field in a label format
• at any time with the ^FN (Field Number) command
• following an ^SN (Serialization Data) command
• variable data
• bidirectional text
The right typeset justified is available only for printers with firmware version V60.14.x,
V50.14.x, or later.
This command interacts with the field direction parameters of ^FP and with the rotation
parameter of ^A. For output and code examples, see Field Interactions on page 579
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
186
ZPL Commands
^FV
^FV
Field Variable
Description
^FV
replaces the
^FD
(field data) command in a label format when the field is variable.
Format ^FVa
This table identifies the parameters for this format:
Parameters
a = variable field data to be printed
Details
Accepted Values: 0 to 3072 byte string
Default Value: if no data is entered, the command is ignored
Example •
This is an example of how to use the ^MC and ^FV command:
GENERATED LABEL ZPL II CODE
^XA
^FO40,40
^GB300,203,8^FS
^FO55,60^CF0,25
^FVVARIABLE DATA #1^FS
^FO80,150
^FDFIXED DATA^FS
^MCN
^XZ
^XA
^FO55,60 ^CF0,25
^FVVARIABLE DATA #2^FS
^MCY
^XZ
Comments
^FV fields are always cleared after the label is printed. ^FD fields are not cleared.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^FW
187
^FW
Field Orientation
Description The
^FW
command sets the default orientation for all command fields that have an orientation (rotation) parameter and sets the default justification for all commands with a justification parameter. Fields can be rotated 0, 90, 180, or 270 degrees clockwise by using this command. Justification can be left, right, or auto.
The
^FW
command affects only fields that follow it. Once you have issued a
^FW
command, the setting is retained until you turn off the printer or send a new ^FW command to the printer.
Format ^FWr,z
This table identifies the parameters for this format:
Parameters
r = rotate field z = justification
The z parameter is available only with printers with firmware version
V60.14.x, V50.14.x, or later.
Details
Accepted Values:
N
= normal
R
= rotated 90 degrees
I
= inverted 180 degrees
B = bottom-up 270 degrees, read from bottom up
Initial Value at Power-up: N
Accepted Values:
0 = left justification
1 = right justification
2 = auto justification (script dependent)
Default Value: auto for ^TB and left for all other commands
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
188
ZPL Commands
^FW
Example •
This example shows how ^FW rotation works in conjunction with ^FO. In this example, note that:
•
•
the fields using A0N print the field in normal rotation the fields with no rotation indicated (A0) follow the rotation used in the ^FW command (^FWR).
GENERATED LABEL
ZPL II CODE
^XA
^FWR
^FO150,90^A0N,25,20^FDZebra Technologies^FS
^FO115,75^A0,25,20^FD0123456789^FS
^FO150,115^A0N,25,20^FD333 Corporate Woods
Parkway^FS
^FO400,75^A0,25,20^FDXXXXXXXXX^FS
^XZ
Comments
^FW affects only the orientation in commands where the rotation parameter has not been specifically set. If a command has a specific rotation parameter, that value is used.
^FW affects only the justification in commands where the parameter has not been set. If a command has a specific justification parameter that value is used .
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^FX
189
^FX
Comment
Description The
^FX
command is useful when you want to add non-printing informational comments or statements within a label format. Any data after the ^FX command up to the next caret (^) or tilde (~) command does not have any effect on the label format. Therefore, you should avoid using the caret (^) or tilde (~) commands within the
^FX
statement.
Format ^FXc
This table identifies the parameters for this format:
Parameters
c
= non printing comment
Details
Creates a non-printable comment.
Example •
This is an example of how to use the ^FX command effectively:
ZPL II CODE
^XA
^LH100,100^FS
^FXSHIPPING LABEL^FS
^FO10,10^GB470,280,4^FS
^FO10,190^GB470,4,4^FS
^FO10,80^GB240,2,2^FS
^FO250,10^GB2,100,2^FS
^FO250,110^GB226,2,2^FS
^FO250,60^GB226,2,2^FS
^FO156,190^GB2,95,2^FS
^FO312,190^GB2,95,2^FS
^XZ
GENERATED LABEL
Comments Correct usage of the ^FX command includes following it with the ^FS command.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
190
ZPL Commands
^GB
^GB
Graphic Box
Description The
^GB
command is used to draw boxes and lines as part of a label format.
Boxes and lines are used to highlight important information, divide labels into distinct areas, or to improve the appearance of a label. The same format command is used for drawing either boxes or lines.
Format ^GBw,h,t,c,r
This table identifies the parameters for this format:
Parameters Details
w
= box width (in dots)
Accepted Values: value of t to 32000
Default Value: value used for thickness (t) or 1 h = box height (in dots)
Accepted Values: value of t
to
32000
Default Value: value used for thickness (t) or 1 t
= border thickness (in dots) c r
= line color
= degree of cornerrounding
Accepted Values:
1 to 32000
Default Value: 1
Accepted Values:
B
= black
W = white
Default Value: B
Accepted Values:
0
(no rounding) to
8
(heaviest rounding)
Default Value: 0
For the w and h parameters, keep in mind that printers have a default of 6, 8, 12, or
24 dots/millimeter. This comes out to 153, 203, 300, or 600 dots per inch. To determine the values for w and h, calculate the dimensions in millimeters and multiply by 6, 8, 12, or 24.
If the width and height are not specified, you get a solid box with its width and height as specified by value t
.
The roundness-index is used to determine a rounding-radius for each box. Formula:
rounding-radius = (rounding-index / 8) * (shorter side / 2)
where the shorter side is the lesser of the width and height (after adjusting for minimum and default values).
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^GB
191
Examples •
Here are a few examples of graphic boxes:
Width: 1.5 inch; Height: 1 inch; Thickness: 10; Color: default; Rounding: default
ZPL II CODE GENERATED LABEL
^XA
^FO50,50
^GB300,200,10^FS
^XZ
Width: 0 inch; Height: 1 inch; Thickness: 20; Color: default; Rounding: default:
ZPL II CODE GENERATED LABEL
^XA
^FO50,50
^GB0,203,20^FS
^XZ
Width: 1 inch; Height: 0 inch; Thickness: 30; Color: default; Rounding: default
ZPL II CODE GENERATED LABEL
^XA
^FO50,50
^GB203,0,20^FS
^XZ
Width: 1.5 inch; Height: 1 inch; Thickness: 10; Color: default; Rounding: 5
ZPL II CODE GENERATED LABEL
^XA
^FO50,50
^GB300,200,10,,5^FS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
192
ZPL Commands
^GC
^GC
Graphic Circle
Description The
^GC
command produces a circle on the printed label. The command parameters specify the diameter (width) of the circle, outline thickness, and color. Thickness extends inward from the outline.
Format
^GCd,t, c
This table identifies the parameters for this format:
Parameters
d
= circle diameter (in dots) t = border thickness (in dots) c
= line color
Details
Accepted Values:
3 to 4095 (larger values are replaced with
4095)
Default Value: 3
Accepted Values:
2
to
4095
Default Value: 1
Accepted Values:
B = black
W = white
Default Value: B
Example •
This is an example of how to create a circle on the printed label:
ZPL II CODE GENERATED LABEL
^XA
^FO50,50
^GC250,10,B^FS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^GD
193
^GD
Graphic Diagonal Line
Description The
^GD
command produces a straight diagonal line on a label. This can be used in conjunction with other graphic commands to create a more complex figure.
Format ^GDw,h,t,c,o
This table identifies the parameters for this format:
Parameters Details
w = box width (in dots)
Accepted Values:
3
to
32000
Default Value: value of t (thickness) or 1 h
= box height (in dots)
Accepted Values:
3 to 32000
Default Value: value of t (thickness) or 1 t = border thickness (in dots)
Accepted Values: 1 to 32000
Default Value: 1 c
= line color o
= orientation (direction of the diagonal)
Accepted Values:
B = black
W = white
Default Value: B
Accepted Values:
R (or /)
= right-leaning diagonal
L (or \)
= left-leaning diagonal
Default Value: R
Example •
This is an example of how to create a diagonal line connecting one corner with the opposite corner of a box on a printed label:
ZPL II CODE GENERATED LABEL
^XA
^FO150,100
^GB350,203,10^FS
^FO155,110
^GD330,183,10,,R^FS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
194
ZPL Commands
^GE
^GE
Graphic Ellipse
Description The
^GE
command produces an ellipse in the label format.
Format ^GEw,h,t,c
This table identifies the parameters for this format:
Parameters Details
w
= ellipse width (in dots) Accepted Values: 3 to 4095 (larger values are replaced with
4095)
Default Value: value used for thickness ( t ) or 1 h
= ellipse height (in dots) t = border thickness (in dots)
Accepted Values: 3 to 4095
Default Value: value used for thickness ( t ) or 1
Accepted Values: 2 to 4095
Default Value: 1 c
= line color
Accepted Values:
B = black
W = white
Default Value: B
Example •
This is an example of how to create a ellipse on a printed label:
ZPL II CODE
GENERATED LABEL
^XA
^FO100,100
^GE300,100,10,B^FS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^GF
195
^GF
Graphic Field
Description The
^GF
command allows you to download graphic field data directly into the printer’s bitmap storage area. This command follows the conventions for any other field, meaning a field orientation is included. The graphic field data can be placed at any location within the bitmap space.
Format ^GFa,b,c,d,data
This table identifies the parameters for this format:
Parameters Details
a
= compression type
Accepted Values:
A
= ASCII hexadecimal (follows the format for other download commands)
B
= binary (data sent after the c parameter is strictly binary)
C
= compressed binary (data sent after the c parameter is in compressed binary format. The data is compressed on the host side using Zebra’s compression algorithm. The data is then decompressed and placed directly into the bitmap.)
Default Value: A b
= binary byte count
Accepted Values: 1 to 99999
This is the total number of bytes to be transmitted for the total image or the total number of bytes that follow parameter d
. For ASCII download, the parameter should match parameter c
. Out-of-range values are set to the nearest limit.
Default Value: command is ignored if a value is not specified c = graphic field count
Accepted Values: 1 to 99999
This is the total number of bytes comprising the graphic format (width x height), which is sent as parameter d .
Count divided by bytes per row gives the number of lines in the image. This number represents the size of the image, not necessarily the size of the data stream (see d ).
Default Value: command is ignored if a value is not specified
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
196
ZPL Commands
^GF
Parameters
d
= bytes per row data
= data
Details
Accepted Values: 1 to 99999
This is the number of bytes in the downloaded data that comprise one row of the image.
Default Value: command is ignored if a value is not specified
Accepted Values:
ASCII hexadecimal data: 00 to FF
A string of ASCII hexadecimal numbers, two digits per image byte. CR and LF can be inserted as needed for readability. The number of two-digit number pairs must match the above count. Any numbers sent after count is satisfied are ignored. A comma in the data pads the current line with 00 (white space), minimizing the data sent. ~DN or any caret or tilde character prematurely aborts the download.
Binary data: Strictly binary data is sent from the host. All control prefixes are ignored until the total number of bytes needed for the graphic format is sent.
Example •
This example downloads 8,000 total bytes of data and places the graphic data at location 100,100 of the bitmap. The data sent to the printer is in ASCII form.
^FO100,100^GFA,8000,8000,80,ASCII data
Example •
This example downloads 8,000 total bytes of data and places the graphic data at location 100,100 of the bitmap. The data sent to the printer is in binary form.
^FO100,100^GFB,8000,8000,80,Binary data
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^GS
197
^GS
Graphic Symbol
Description The
^GS
command enables you to generate the registered trademark, copyright symbol, and other symbols.
Format ^GSo,h,w
This table identifies the parameters for this format:
Parameters
o = field orientation h
= character height proportional to width
(in dots) w
= character width proportional to height (in dots)
Details
Accepted Values:
N
= normal
R
= rotate 90 degrees clockwise
I
= inverted 180 degrees
B = bottom-up, 270 degrees
Default Value: N or last ^FW value
Accepted Values: 0 to 32000
Default Value: last ^CF value
Accepted Values: 0 to 32000
Default Value: last ^CF value
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
198
ZPL Commands
^GS
Example •
Use the ^GS command followed by ^FD and the appropriate character (A through E) within the field data to generate the desired character:
GENERATED LABEL ZPL II CODE
^XA^CFD
^FO50,50
^FDZEBRA PROGRAMMING^FS
^FO50,75
^FDLANGUAGE II (ZPL II )^FS
^FO280,75
^GS^FDC^FS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~HB
199
~HB
Battery Status
Description When the
~HB
command is sent to the printer, a data string is sent back to the host. The string starts with an <STX> control code sequence and terminates by an
<ETX><CR><LF> control code sequence.
Important •
This command only responds to mobile printers.
Format ~HB
Parameters: when the printer receives the command, it returns:
<STX>bb.bb,hh.hh,bt<ETX><CR><LF>
<STX> bb.bb
hh.hh
bt
<ETX>
<CR>
<LF>
=
=
=
=
=
=
=
ASCII start-of-text character current battery voltage reading to the nearest 1/4 volt current head voltage reading to the nearest 1/4 volt battery temperature in Celsius
ASCII end-of-text character
ASCII carriage return
ASCII line feed character
Comments This command is used for the power-supply battery of the printer and should not be confused with the battery backed-up RAM.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
200
ZPL Commands
~HD
~HD
Head Diagnostic
Description The
~HD
command echoes printer status information that includes the power supply and head temperature using the terminal emulator.
Format ~HD
Example •
This is an example of the ~HD command:
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^HF
201
^HF
Host Format
Description The
^HF
command sends stored formats to the host.
Format ^HFd,o,x
This table identifies the parameters for this format:
Parameters
d
= device to recall image o
= image name x
= extension
Details
Accepted Values:
R: , E: , B: , and A:
Default Value: R:
Accepted Values:
1 to 8 alphanumeric characters
Default Value: if a name is not specified, UNKNOWN is used
Fixed Value: .ZPL
Example •
This example shows the sequence and results.
Using a terminal emulator, you download this code to the printer:
^XA
^DFB:FILE1.ZPL
^FO100,100^A0,100
^FDTEST^FS
^XZ
Then you send this code to the printer:
^XA
^HFB:FILE1.ZPL
^XZ
The terminal emulator returns this code:
^XA^DFFILE1,
^FO100,100^A0,100^FDTEST^FS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
202
ZPL Commands
^HG
^HG
Host Graphic
Description The
^HG
command is used to upload graphics to the host. The graphic image can be stored for future use, or it can be downloaded to any Zebra printer.
Format ^HGd:o.x
This table identifies the parameters for this format:
Parameters
d = device location of object o
= object name x = extension
Details
Accepted Values:
R:
,
E:
,
B:
, and
A:
Default Value: search priority
Accepted Values:
1 to 8 alphanumeric characters
Default Value: if a name is not specified, UNKNOWN is used
Fixed Value: .GRF
Comments For more information on uploading graphics, see ^HY on page 216 .
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^HH
203
^HH
Configuration Label Return
Description The
^HH
command echoes printer configuration back to the host, using a terminal emulator.
Format ^HH
Example •
This is an example of what is returned to the host when ^XA^HH^XZ is sent to the printer:
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
204
ZPL Commands
~HI
~HI
Host Identification
Description The
~HI
command is designed to be sent from the host to the Zebra printer to retrieve information. Upon receipt, the printer responds with information on the model, software version, dots-per-millimeter setting, memory size, and any detected objects.
Format ~HI
When the printer receives this command, it returns:
XXXXXX,V1.0.0,dpm,000KB,X
XXXXXX = model of Zebra printer
V1.0.0 = version of software
dpm = dots/mm
6, 8, 12, or 24 dots/mm printheads
000KB = memory
512KB = 1/2 MB
1024KB = 1 MB
2048KB = 2 MB
4096KB = 4 MB
8192KB = 8 MB
x = recognizable objects
only options specific to printer are shown (cutter, options, et cetera.)
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~HM
205
~HM
Host RAM Status
Description Sending
~HM
to the printer immediately returns a memory status message to the host. Use this command whenever you need to know the printer’s RAM status.
When ~HM is sent to the Zebra printer, a line of data containing information on the total amount, maximum amount, and available amount of memory is sent back to the host.
Format ~HM
Example •
This example shows when the ~HM is sent to the printer, a line of data containing three numbers are sent back to the host. Each set of numbers is identified and explained in the table that follows:
2
1
3584,3586,3586
3
1
2
3
The total amount of RAM (in kilobytes) installed in the printer. In this example, the printer has 1024K RAM installed.
The maximum amount of RAM (in kilobytes) available to the user. In this example, the printer has a maximum of 780K RAM available.
The amount of RAM (in kilobytes) currently available to the user.
In this example, there is 780K of RAM in the printer currently available to the user.
Comments Memory taken up by bitmaps is included in the currently available memory value (due to
^MCN
).
Downloading a graphic image, fonts, or saving a bitmap affects only the amount of RAM. The total amount of RAM and maximum amount of RAM does not change after the printer is turned on.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
206
ZPL Commands
~HQ
~HQ
Host Query
Description The
~HQ
command group requests information from the printer. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers.
Format ~HQquery-type
This table identifies the parameters for this format:
Parameter
query-type
Details
Accepted Values:
OD = odometer
MA = maintenance alert settings
PH = printhead life history
MI = maintenance information
Default Value: must be an accepted value or the command is ignored
Comments The response to the ~HQ command starts with STX, a CR LF is inserted between each line, and the response ends with ETX.
Example •
This is an example of how to use the odometer query for the ~HQ command. Note that the units of measure are controlled by the ^MA command.
1.
To get the current settings, type ~HQOD:
Something similar to this is shown:
2.
3.
PRINT METERS
TOTAL NONRESETTABLE: 8560 "
USER RESETTABLE CNTR1: 9 "
USER RESETTABLE CNTR2: 8560 "
The units of measure are set to inches.
To change the units of measure to centimeters, type:
^XA^MA,,,,C
^XZ
The units of measure are set to centimeters.
To check the settings, type ~HQOD.
Something similar to this is shown:
PRINT METERS
TOTAL NONRESETTABLE: 21744 cm
USER RESETTABLE CNTR1: 24 cm
USER RESETTABLE CNTR2: 21744 cm
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
~HQ
207
Example •
This is an example of how to use the maintenance alert query for the ~HQ command.
1.
To get the current settings, type ~HQMA:
Something similar to this is shown:
~HQMA
MAINTENANCE ALERT SETTINGS
HEAD REPLACEMENT INTERVAL: 1 km
HEAD REPLACEMENT FREQUENCY: 0 M
HEAD CLEANING INTERVAL: 0 M
HEAD CLEANING FREQUENCY: 0 M
PRINT REPLACEMENT ALERT: NO
PRINT CLEANING ALERT: NO
UNITS: C
Example •
This is an example of how to use the printhead life query for the ~HQ command.
Note that the units of measure are controlled by the ^MA command.
1.
To get the current settings, type ~HQPH:
Something similar to this is shown:
LAST CLEANED: 257 "
HEAD LIFE HISTORY
# DISTANCE
1: 257 "
2: 1489 "
3: 7070 "
1
2
1
2
The current life of the print head.
Line items 2 through 10 (the example only shows 2 through
3) tracks the measurement for each time the print head is changed.
Example •
This is an example of how to use the maintenance information query for the ~HQ command. Note that the message is controlled by the ^MI command.
1.
To get the current settings, type ~HQMI:
Something similar to this is shown:
MAINTENANCE ALERT MESSAGES
CLEAN: PLEASE CLEAN PRINT HEAD
REPLACE: PLEASE REPLACE PRINT HEAD
ZPL II Programming Guide 13979L-005 Rev. A
208
ZPL Commands
~HS
~HS
Host Status Return
Description When the host sends
~HS
to the printer, the printer sends three data strings back. Each string starts with an < STX > control code and is terminated by an
< ETX >< CR >< LF > control code sequence. To avoid confusion, the host prints each string on a separate line.
Note •
When a ~HS command is sent to the printer through the parallel port, the printer will not send a response to the host if the printer is in one of these conditions:
• MEDIA OUT
• RIBBON OUT
• HEAD OPEN
• REWINDER FULL
• HEAD OVER-TEMPERATURE
String 1
<STX>aaa,b,c,dddd,eee,f,g,h,iii,j,k,l<ETX><CR><LF>
j k f g aaa h iii
= communication (interface) settings*
b eee
= paper out flag (1
= paper out)
c
= pause flag (1 = pause active)
dddd
= label length (value in number of dots)
= number of formats in receive buffer
= buffer full flag (1
= receive buffer full)
= communications diagnostic mode flag (1
= diagnostic mode active)
= partial format flag (1
= partial format in progress)
= unused (always 000)
l
= corrupt RAM flag (1
= configuration data lost)
= temperature range (1 = under temperature)
= temperature range (1
= over temperature)
* This string specifies the printer’s baud rate, number of data bits, number of stop bits, parity setting, and type of handshaking. This value is a three-digit decimal representation of an eightbit binary number. To evaluate this parameter, first convert the decimal number to a binary number.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
~HS
209
The nine-digit binary number is read according to this table: a
7
= Handshake
0 = Xon/Xoff
1 = DTR a
6
= Parity Odd/Even
0 = Odd
1 = Even a a
5
4
= Disable/Enable
0 = Disable
1 = Enable
= Stop Bits
0 = 2 Bits
1 = 1 Bit
8 7 6 5 4 3 2 1 0 aaa = a a a a a a a a a
8 2 1 0 a a a a = Baud
0 000 = 110
0 001 = 300
0 010 = 600
0 011 = 1200
0 100 = 2400
0 101 = 4800
0 110 = 9600
0 111 = 19200
1 000 = 28800
1 001 = 38400
1 010 = 57600
1 011 = 14400
(available only on certain printer models)
(available only on certain printer models)
(available only on certain printer models)
a
3
= Data Bits
0 = 7 Bits
1 = 8 Bits
String 2
<STX>mmm,n,o,p,q,r,s,t,uuuuuuuu,v,www<ETX><CR><LF>
mmm
n o p q r s t uuuuuu uu v www
= function settings*
= unused
= head up flag (1
= head in up position)
= ribbon out flag (1
= ribbon out)
= thermal transfer mode flag (1
= Thermal Transfer Mode selected)
= Print Mode
0 = Rewind
1 = Peel-Off
2 = Tear-Off
3 = Cutter
4 = Applicator
5 = Delayed cut
6 = Reserved **
7 = Reserved **
= print width mode
=
=
=
=
label waiting flag (1
= label waiting in Peel-off Mode) labels remaining in batch
format while printing flag (always 1) number of graphic images stored in memory
* This string specifies the printer’s media type, sensor profile status, and communication diagnostics status. As in String 1, this is a three-digit decimal representation of an eight-bit binary number. First, convert the decimal number to a binary number.
ZPL II Programming Guide 13979L-005 Rev. A
210
ZPL Commands
~HS
** These values are only supported on the Zebra ZM400/ZM600™ printer.
The eight-digit binary number is read according to this table: m7 mmm = m7 m6 m5 m4 m3 m2 m1 m0
= Media Type
0 = Die-Cut
1 = Continuous m4 m3 m2 m1 = Unused
0 = Off
1 = On m6 = Sensor Profile
0 = Off m0 = Print Mode
0 = Direct Thermal
1 = Thermal Transfer m5 = Communications Diagnostics
0 = Off
1 = On
String 3
<STX>xxxx,y<ETX><CR><LF> xxxx = password y = 0 (static RAM not installed)
1 (static RAM installed)
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^HT
211
^HT
Host Linked Fonts List
This command is available only for printers with firmware version V60.14.x, V50.14.x, or later.
Description The ^HT command receives the complete list of font links over a communication port.
Example •
The SWISS.721.TTF is the base font, ANMDJ.TTF is the first linked font, and
MSGOTHIC.TTF is the second linked font:
^XA
^HT
^XZ
ZPL II CODE DATA RETURNED
LIST OF FONT LINKS
E:SWISS721.TTF
E:ANMDJ.TTF
E:MSGOTHIC.TTF
This is the code that was used to establish the font links:
^XA
^FLE:ANMDJ.TTF,E:SWISS721.TTF,1^FS
^FLE:MSGOTHIC.TTF,E:SWISS721.TTF,1^FS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
212
ZPL Commands
~HU
~HU
Return ZebraNet Alert Configuration
Description This command returns the table of configured ZebraNet Alert settings to the host.
Format ~HU
Example •
If the ~HU command is sent to the printer with existing Alert messages set to go to e-mail and SNMP traps, the data returned would look something like the information
for complete information on the individual parameter settings.
B,C,Y,Y,[email protected],0
J,F,Y,Y,,0
C,F,Y,Y,,0
D,F,Y,Y,,0
E,F,Y,N,,0
F,F,Y,N,,0
H,C,Y,N,[email protected],0
N,C,Y,Y,[email protected],0
O,C,Y,Y,[email protected],0
P,C,Y,Y,[email protected],0
Important •
If there are no ^SX (alerts) set, the printer will not respond to the ~HU command.
The first line indicates that condition B (ribbon out) is routed to destination C (e-mail address).
The next two characters, Y and Y, indicate that the condition set and condition clear options have been set to yes .
The following entry is the destination that the Alert e-mail should be sent to; in this example it is [email protected]
.
The last figure seen in the first line is 0, which is the port number.
Each line shows the settings for a different Alert condition as defined in the ^SX command.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^HV
213
^HV
Host Verification
Description This command is used to return data from specified fields, along with an optional ASCII header, to the host computer. The command can be used with any field that has been assigned a number with the ^RT command or the ^FN and ^RF commands.
Format ^HV#,n,h
This table identifies the parameters for this format:
Parameters
# = field number specified with another command n = number of bytes to be returned h = header
Details
The value assigned to this parameter should be the same as the one used in another command.
Accepted Values:
0
to
9999
Default Value: 0
Accepted Values:
1 to 256
Default Value: 64
Header to be returned with the data.
Accepted Values:
0 to 3072 bytes
Default Value: no header
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
214
ZPL Commands
^HW
^HW
Host Directory List
Description
^HW
is used to transmit a directory listing of objects in a specific memory area
(storage device) back to the host device. This command returns a formatted ASCII string of object names to the host.
Each object is listed on a line and has a fixed length. The total length of a line is also fixed.
Each line listing an object begins with the asterisk (*) followed by a blank space. There are eight spaces for the object name, followed by a period and three spaces for the extension. The extension is followed by two blank spaces, six spaces for the object size, two blank spaces, and three spaces for option flags (reserved for future use). The format looks like this:
<STX><CR><LF>
DIR R: <CR><LF>
*Name.ext(2sp.)(6 obj. sz.)(2sp.)(3 option flags)
*Name.ext(2sp.)(6 obj. sz.)(2sp.)(3 option flags)
<CR><LF>
-xxxxxxx bytes free
<CR><LF>
<ETX>
<STX> = start of text
<CR><LR> = carriage return/line feed
<ETX> = end on text
The command might be used in a stand-alone file to be issued to the printer at any time. The printer returns the directory listing as soon as possible, based on other tasks it might be performing when the command is received.
This command, like all ^ (caret) commands, is processed in the order that it is received by the printer.
Format ^HWd:o.x
This table identifies the parameters for this format:
Parameters
d
= location to retrieve object listing o = object name x
= extension
Details
Accepted Values:
R: , E: , B: , A: and Z:
Default Value: R:
Accepted Values:
1
to
8
alphanumeric characters
Default Value: asterisk (
*
). A question mark (
?
) can also be used.
Accepted Values: any extension conforming to Zebra conventions
Default Value: asterisk ( * ). A question mark ( ?
) can also be used.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^HW
215
Example •
Listed is an example of the ^HW command to retrieve from information R:
^XA
^HWR:*.*
^XZ
Example •
The printer returned this information as the Host Directory Listing:
-DIR
R:*.*
*R:ARIALN1.FNT 49140
*R:ARIALN2.FNT 49140
*R:ARIALN3.FNT 49140
*R:ARIALN4.FNT 49140
*R:ARIALN.FNT 49140
*R:ZEBRA.GRF 8420
-794292 bytes free R:RAM
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
216
ZPL Commands
^HY
^HY
Upload Graphics
Description The
^HY
command is an extension of the
^HG
command.
^HY
is used to upload graphic objects from the printer in any supported format.
Format ^HYd:o.x
This table identifies the parameters for this format:
Parameters
d = location of object o x
= object name
= extension
Details
Accepted Values:
R:
,
E:
,
B:
, and
A:
Default Value: search priority
Accepted Values:
1 to 8 alphanumeric characters
Default Value: an object name must be specified
Accepted Values:
G =
.GRF
(raw bitmap format)
P =
.PNG
(compressed bitmap format)
Default Value: format of stored image
Comments The image is uploaded in the form of a
~DY command. The data field of the returned
~DY
command is always encoded in the ZB64 format.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^HZ
217
^HZ
Display Description Information
Description The
^HZ
command is used for returning printer description information in
XML format. The printer returns information on format parameters, object directories, individual object data, and print status information.
Format ^HZb
This table identifies the parameters for this format:
Parameters
b
= display description to return
Details
Accepted Values:
a
= display all information f
= display printer format setting information l = display object directory listing information o
= display individual object data information r
= display printer status information
Default Value: if the value is missing or invalid, the command is ignored
Format ^HZO,d:o.x,l
This table identifies the parameters for this format:
Parameters
d
= location of stored object o = object name
Details
Accepted Values:
R: , E: , B: , and A:
Default Value: R:
Accepted Values: 1 to 8, or 1 to 16 alphanumeric characters based on parameter l.
Default Value: if a name is not specified, UNKNOWN is used.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
218
ZPL Commands
^HZ
Parameters Details
x = extension
Supported extensions for objects (parameter o ) include:
.FNT
— font
.GRF
— graphic
.PNG
— compressed graphic
.ZPL
— stored format
.DAT
— encoding table
.ZOB
— downloadable object
.STO
— Alert data file l = long filename support Accepted Values:
Y = Yes
If Y, the object data stores the filename as 16 characters. The data is only compatible with firmware version V60.13.0.5, or later.
N = No
If N, the object data stores the filename as 8 characters. The data is forward and backward compatible with all versions of firmware.
Default Value: N
Example •
This example shows the object data information for the object SAMPLE.GRF located on R:.
^XA
^HZO,R:SAMPLE.GRF
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^ID
219
^ID
Object Delete
Description The
^ID
command deletes objects, graphics, fonts, and stored formats from storage areas. Objects can be deleted selectively or in groups. This command can be used within a printing format to delete objects before saving new ones, or in a stand-alone format to delete objects.
The image name and extension support the use of the asterisk (
*
) as a wild card. This allows you to easily delete a selected groups of objects.
Format ^IDd:o.x
This table identifies the parameters for this format:
Parameters
d = location of stored object o x
= object name
= extension
Details
Accepted Values:
R:
,
E:
,
B:
, and
A:
Default Value: R:
Accepted Values: any 1 to 8 character name
Default Value: if a name is not specified, UNKNOWN is used
Accepted Values: any extension conforming to Zebra conventions
Default Value: .GRF
Example •
To delete stored formats from DRAM:
^XA
^IDR:*.ZPL^FS
^XZ
Example •
To delete formats and images named SAMPLE from DRAM, regardless of the extension:
XA
^IDR:SAMPLE.*^FS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
220
ZPL Commands
^ID
Example •
To delete the image SAMPLE1.GRF
prior to storing SAMPLE2.GRF
:
^XA
^FO25,25^AD,18,10
^FDDelete^FS
^FO25,45^AD,18,10
^FDthen Save^FS
^IDR:SAMPLE1.GRF^FS
^ISR:SAMPLE2.GRF^FS^XZ
Example •
In this the * is a wild card, indicating that all objects with the .GRF extension are deleted:
^XA
^IDR:*.GRF^FS
^XZ
Comments When an object is deleted from R: , the object can no longer be used and memory is available for storage. This applies only to R: memory. With the other memory types
(A:, B:, E:) the deleted object is no longer available. The memory space recovers when an automatic defragmentation or initiallization occurs.
The ^ID command also frees up the uncompressed version of the object in DRAM.
If the name is specified as *.ZOB
, all downloaded bar code fonts (or other objects) are deleted.
If the named downloadable object cannot be found in the
R:
,
E:
,
B:
, and
A:
device, the
^ID command is ignored.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^IL
221
^IL
Image Load
Description The
^IL
command is used at the beginning of a label format to load a stored image of a format and merge it with additional data. The image is always positioned at
^FO0,0 .
Important •
See
Using this technique to overlay the image of constant information with variable data greatly increases the throughput of the label format.
Format ^ILd:o.x
This table identifies the parameters for this format:
Parameters
d
= location of stored object o
= object name x
= extension
Details
Accepted Values:
R: , E: , B: , and A:
Default Value: R:
Accepted Values:
1 to 8 alphanumeric characters
Default Value: if a name is not specified, UNKNOWN is used
Fixed Value: .GRF, .PNG
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
222
ZPL Commands
^IL
Example •
This example recalls the stored image SAMPLE2.GRF
from DRAM and overlays it with the additional data. The graphic was stored using the
stored label format, see the ^IS on page 224
command.
^IS
command. For the
GENERATED LABEL ZPL II CODE
^XA
^ILR:SAMPLE2.GRF^FS
^CFD,36,20
^FO15,210
^FD900123^FS
^FO218,210
^FDLINE 12^FS
^FO15,360^AD
^FDZEBRA THERMAL^FS
^FO15,400^AD
^FDTRANSFER PRINTER^FS
^FO15,540
^FD54321^FS
^FO220,530
^FDZ58643^FS
^FO15,670^A0,27,18
^FDTesting Stored Graphic^FS
^FO15,700^A0,27,18
^FDLabel Formats!!^FS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^IM
223
^IM
Image Move
Description The
^IM
command performs a direct move of an image from storage area into the bitmap. The command is identical to the ^XG command (Recall Graphic), except there are no sizing parameters.
Format ^IMd:o.x
This table identifies the parameters for this format:
Parameters
d
= location of stored object o
= object name
Details
Accepted Values:
R:
,
E:
,
B:
, and
A:
Default Value: search priority
Accepted Values:
1 to 8 alphanumeric characters
Default Value: if a name is not specified, UNKNOWN is used
Fixed Value:
.GRF
,
.PNG
x
= extension
Example •
This example moves the image SAMPLE.GRF
from DRAM and prints it in several locations in its original size.
^XA
^FO100,100^IMR:SAMPLE.GRF^FS
^FO100,200^IMR:SAMPLE.GRF^FS
^FO100,300^IMR:SAMPLE.GRF^FS
^FO100,400^IMR:SAMPLE.GRF^FS
^FO100,500^IMR:SAMPLE.GRF^FS
^XZ
Comments By using the
^FO
command, the graphic image can be positioned anywhere on the label.
The difference between ^IM and ^XG : ^IM does not have magnification, and therefore might require less formatting time. However, to take advantage of this, the image must be at a 8-, 16-, or 32-bit boundary.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
224
ZPL Commands
^IS
^IS
Image Save
Description The
^IS
command is used within a label format to save that format as a graphic image, rather than as a ZPL II script. It is typically used toward the end of a script. The saved image can later be recalled with virtually no formatting time and overlaid with variable data to form a complete label.
Using this technique to overlay the image of constant information with the variable data greatly increases the throughput of the label format.
\
Important •
See
Format ^ISd:o.x,p
This table identifies the parameters for this format:
Parameters
d
= location of stored object o = object name x
= extension p = print image after storing
Details
Accepted Values: R: , E: , B: , and A:
Default Value:
R:
Accepted Values:
1 to 8 alphanumeric characters
Default Value: if a name is not specified, UNKNOWN is used
Accepted Values: .GRF
or .PNG
Default Value:
.GRF
Accepted Values:
N = no
Y = yes
Default Value:
Y
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^IS
225
Example •
This is an example of using the
The name used to store the graphic is
^IS command to save a label format to DRAM.
SAMPLE2.GRF
.
GENERATED LABEL ZPL II CODE
^XA
^LH10,15^FWN^BY3,3,85^CFD,36
^GB430,750,4^FS
^FO10,170^GB200,144,2^FS
^FO10,318^GB410,174,2^FS
^FO212,170^GB206,144,2^FS
^FO10,498^GB200,120,2^FSR
^FO212,498^GB209,120,2^FS
^FO4,150^GB422,10,10^FS
^FO135,20^A0,70,60
^FDZEBRA^FS
^FO80,100^A0,40,30
^FDTECHNOLOGIES CORP^FS
^FO15,180 ^CFD,18,10^FS
^FDARTICLE#^FS
^FO218,180
^FDLOCATION^FS
^FO15,328
^FDDESCRIPTION^FS
^FO15,508
^FDREQ.NO.^FS
^FO220,508
^FDWORK NUMBER^FS
^FO15,630^AD,36,20
^FDCOMMENTS:^FS
^ISR:SAMPLE2.GRF,Y
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
226
ZPL Commands
~JA
~JA
Cancel All
Description The
~JA
command cancels all format commands in the buffer. It also cancels any batches that are printing.
The printer stops after the current label is finished printing. All internal buffers are cleared of data and the DATA LED turn off.
Submitting this command to the printer scans the buffer and deletes only the data before the
~JA in the input buffer — it does not scan the remainder of the buffer for additional ~JA commands.
Format ~JA
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^JB
227
^JB
Initialize Flash Memory
Description The
^JB
command is used to initialize various types of Flash memory available in the Zebra printers.
Format ^JBa
This table identifies the parameters for this format:
Parameters
a = device to initialize
Details
Acceptable Values:
A = Option Flash memory
B
= Flash card (PCMCIA)
E = internal Flash memory
Default Value: a device must be specified
Example •
This is an example of initializing the different types of flash memory:
^JBA – initializes initial Compact Flash memory when installed in the printer.
^JBB – initializes the optional Flash card when installed in the printer.
^JBE – initializes the optional Flash memory when installed in the printer.
Note •
Initializing memory can take several minutes. Be sure to allow sufficient time for the initialization to complete before power cycling the printer.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
228
ZPL Commands
~JB
~JB
Reset Optional Memory
Description The
~JB
command is used for these conditions:
• The ~JB command must be sent to the printer if the battery supplying power to the battery powered memory card fails and is replaced. A bad battery shows a battery dead condition on the Printer Configuration Label.
• The
~JB
command can also be used to intentionally clear (reinitialize) the
B:
memory card. The card must not be write protected.
Format ~JB
Comments If the battery is replaced and this command is not sent to the printer, the memory card cannot function.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~JC
229
~JC
Set Media Sensor Calibration
Description The
~JC
command is used to force a label length measurement and adjust the media and ribbon sensor values.
Format ~JC
Comments In Continuous Mode, only the media and ribbon sensors are calibrated.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
230
ZPL Commands
~JD
~JD
Enable Communications Diagnostics
Description The
~JD
command initiates Diagnostic Mode, which produces an ASCII printout (using current label length and full width of printer) of all characters received by the printer. This printout includes the ASCII characters, the hexadecimal value, and any communication errors.
Format ~JD
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~JE
231
~JE
Disable Diagnostics
Description The
~JE
command cancels Diagnostic Mode and returns the printer to normal label printing.
Format ~JE
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
232
ZPL Commands
~JF
~JF
Set Battery Condition
Description There are two low battery voltage levels sensed by the PA/PT400™ printers.
When battery voltage goes below the first level, the green LED begins flashing as a warning but printing continues. When this warning occurs, it is recommended to recharge the battery.
As printing continues, a second low voltage level is reached. At this point, both green and orange LEDs flash as a warning, and printing automatically pauses.
When pause on low voltage is active ( ~JFY ) and the battery voltage level falls below the second low voltage level, printing pauses and an error condition is displayed as an indication that the printer should be plugged into the battery charger. By pressing FEED , printing continues on a label-by-label basis, but there is a high risk of losing label format information due to the continued decrease of battery voltage.
When pause on low voltage is not active ( ~JFN ), and the battery voltage level falls below the second low voltage level, printing continues and the orange LED remains off. If the battery voltage continues to decrease, label information could be lost and cause the printer to stop operating. This option should be selected only when the printer is connected to the Car Battery
Adapter. From time to time the printer might sense that battery voltage is below the first low
voltage level, but due to the continuous recharging of the car battery, further loss of battery voltage is not a concern and printing continues.
If this option is not selected when using the Car Battery Adapter, you might need to press
FEED
to take the printer out of Pause Mode and print each label.
Format ~JFp
This table identifies the parameters for this format:
Parameters Details
p = pause on low voltage Accepted Values:
Y
(pause on low voltage) or
N
(do not pause)
N
is suggested when the printer is powered by the Car
Battery Adapter.
Default Value:
Y
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~JG
233
~JG
Graphing Sensor Calibration
Description The
~JG
command prints a graph (media sensor profile) of the sensor values.
Format ~JG
Example •
Sending the
~JG
command to a printer configured for thermal transfer produces a series of labels resembling this image:
GENERATED LABELS
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
234
ZPL Commands
^JH
^JH
Early Warning Settings
Description The ^JH command configures the early warning messages that appear on the
LCD. This command is supported on the Zebra XiIII™, PAX4™, and ZM400/ZM600™, and
S4M™ printers.
Parameters a through e are only supported on the Zebra XiIIIPlus™ and PAX series printers.
The remaining parameters are supported on Zebra XiIII™, PAX4™, and ZM400/ZM600™, and S4M™ printers.
Format ^JHa,b,c,d,e,f,g,h,i,j
This table identifies the parameters for this format:
Parameter Details
a = early warning media b = labels per roll
Accepted Values:
E = enable
D = disable
Default Value: D
Accepted Values: 100 to 9999
Default Value: 900 c = media replaced
Accepted Values:
Y = yes
N = no
Default Value: N d = ribbon length
The accepted values for the XiIII series printers are 100M through
450M. PAX4 printers allow for values up to 900M.
Accepted Values:
0 = 100M
1 = 150M
2 = 200M
3 = 250M
4 = 300M
5 = 350M
6 = 400M
7 = 450M
8 = 500M
9 = 550M
Default Value: 7
10 = 600M
11 = 650M
12 = 700M
13 = 750M
14 = 800M
15 = 850M
16 = 900M e = ribbon replaced
Accepted Values:
Y = yes
N = no
Default Value: N
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Commands
^JH
235
Parameter
f = early warning maintenance g = head cleaning interval h = head clean i = head life threshold j = head replaced
Details
Accepted Values:
E = enabled
D = disabled
Default Value: D
Accepted value exceptions: accepted values for XiIII printer are
100M through 450M; accepted values for 600 dpi XiIII printers are 100M through 150M; accepted values for PAX4 series printers can accept values up to 900M by increments of 50M; accepted values for ZM400/ZM600 and S4M printers are 0M through
450M.
Accepted Values:
0 = 100M 11 = 650M
1 = 150M
(default for 96XiIII)
12 = 700M
2 = 200M 13 = 750M
3 = 250M
4 = 300M
5 = 350M
6 = 400M
14 = 800M
15 = 850M
16 = 900M
7 = 450M
(default for all except 96XiIII)
8 = 500M
9 = 550M
10= 600M
Default Value: see above
Accepted Values:
N = No
Y = Yes
Default Value: N
Accepted Values:
0 – 0 in or off
100-3500000 in
Default Value: ?
Accepted Values:
N = no
Y = yes
Default Value: N
Comments To permanently save the changes to the ^JH command, send ^XA^JUS^XZ.
ZPL II Programming Guide 13979L-005 Rev. A
236
ZPL Commands
^JJ
^JJ
Set Auxiliary Port
Description The
^JJ
command allows you to control an online verifier or applicator device.
Format ^JJa,b,c,d,e,f
This table identifies the parameters for this format:
Parameters
a = operational mode for auxiliary port b c
= application mode
= application mode start signal print
Details
Accepted Values:
0
= off
1
= reprint on error—the printer stops on a label with a verification error. When
PAUSE
is pressed, the label reprints (if ^JZ is set to reprint). If a bar code is near the upper edge of a label, the label feeds out far enough for the bar code to be verified and then backfeeds to allow the next label to be printed and verified.
2
= maximum throughput—the printer stops when a verification error is detected. The printer starts printing the next label while the verifier is still checking the previous label. This mode provides maximum throughput, but does not allow the printer to stop immediately on a label with a verification error.
Default Value:
0
Accepted Values:
0
= off
1 = End Print signal normally high, and low only when the printer is moving the label forward.
2
= End Print signal normally low, and high only when the printer is moving the label forward.
3 = End Print signal normally high, and low for 20 ms when a label has been printed and positioned.
4
= End Print signal normally low, and high for 20 ms when a label has been printed and positioned.
Default Value:
0
Accepted Values:
p
= Pulse Mode – Start Print signal must be de-asserted before it can be asserted for the next label.
l = Level Mode – Start Print signal does not need to be de-asserted to print the next label. As long as the
Start Print signal is low and a label is formatted, a label prints.
Default Value:
0
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^JJ
237
Parameters
d
= application label error mode e f
= reprint mode
= ribbon low mode
Details
Accepted Values:
e = error mode—the printer asserts the Service
Required signal (svce_req - pin 10) on the application port, enters into Pause Mode, and displays an error message on the LCD.
f = Feed Mode—a blank label prints when the web is not found where expected to sync the printer to the media.
Default Value:
f
Accepted Values:
e
= enabled—the last label reprints after the signal is asserted. If a label is canceled, the label to be reprinted is also canceled. This mode consumes more memory because the last printed label is not released until it reprints. d
= disabled—printer ignores the Reprint signal.
Default Value:
d
Accepted Values:
e
= enabled – printer warning issued when ribbon low.
d
= disabled – printer warning not issued when ribbon low.
Default Value: e
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
238
ZPL Commands
~JL
~JL
Set Label Length
Description The
~JL
command is used to set the label length. Depending on the size of the label, the printer feeds one or more blank labels.
Format ~JL
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^JM
239
^JM
Set Dots per Millimeter
Description The
^JM
command lowers the density of the print—24 dots/mm becomes 12,
12 dots/mm becomes 6, 8 dots/mm becomes 4, and 6 dots/mm becomes 3. ^JM also affects the field origin ( ^FO ) placement on the label (see example below).
When sent to the printer, the ^JM command doubles the format size of the label. Depending on the printhead, normal dot-per-millimeter capabilities for a Zebra printer are 12 dots/mm (304 dots/inch), 8 dots/mm (203 dots/inch) or 6 dots/mm (153 dots/inch).
This command must be entered before the first ^FS command in a format. The effects of ^JM are persistent.
Format ^JMn
This table identifies the parameters for this format:
Parameters
n
= set dots per millimeter
Details
Accepted Values:
A = 24 dots/mm, 12 dots/mm, 8 dots/mm or 6 dots/mm
B
= 12 dots/mm, 6 dots/mm, 4 dots/mm or 3 dots/mm
Default Value:
A
Example •
This example of the affects of alternating the dots per millimeter:
GENERATED LABEL ZPL II CODE
^XA
^JMA^FS
^FO100,100
^B2N,50,Y,N,N
^FD1234567890^FS
^XZ
^XA
^JMB^FS
^FO100,100
^B2N,50,Y,N,N
^FD1234567890^FS
^XZ
Comments If ^JMB is used, the UPS MaxiCode bar code becomes out of specification.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
240
ZPL Commands
~JN
~JN
Head Test Fatal
Description The
~JN
command turns on the head test option. When activated,
~JN
causes the printer to halt when a head test failure is encountered.
Once an error is encountered the printer remains in error mode until the head test is turned off
( ~JO ) or power is cycled.
Format ~JN
Comments If the communications buffer is full, the printer is not able to receive data. In this condition, the ~JO command is not received by the printer.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~JO
241
~JO
Head Test Non-Fatal
Description The
~JO
command turns off the head test option.
~JO
is the default printhead test condition and overrides a failure of printhead element status check. This state is changed when the printer receives a ~JN (Head Test Fatal) command. The printhead test does not produce an error when
~JO
is active.
Format ~JO
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
242
ZPL Commands
~JP
~JP
Pause and Cancel Format
Description The
~JP
command clears the format currently being processed and places the printer into Pause Mode.
The command clears the next format that would print, or the oldest format from the buffer.
Each subsequent ~JP command clears the next buffered format until the buffer is empty. The
DATA
indicator turns off when the buffer is empty and no data is being transmitted.
Issuing the ~JP command is identical to using
CANCEL
on the printer, but the printer does not have to be in Pause Mode first.
Format ~JP
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~JR
243
~JR
Power On Reset
Description The
~JR
command resets all of the printer’s internal software, performs a power-on self-test (POST), clears the buffer and DRAM, and resets communication parameters and default values. Issuing a ~JR command performs the same function as a manual power-on reset.
Format ~JR
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
244
ZPL Commands
^JS
^JS
Sensor Select
Format ^JSa
Note •
This command is ignored on Zebra ZM400/ZM600™ printers.This command is only for use with the Z series and S4M printers (with the exception of the ZM400/ZM600).
This table identifies the parameters for this format:
Parameters
a = sensor selection
Details
Accepted Values:
A
= auto select
R
= reflective sensor
T = transmissive sensor
Default Value: Z series
= A and the S4M = R
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~JS
245
~JS
Change Backfeed Sequence
Description The
~JS
command is used to control the backfeed sequence. This command can be used on printers with or without built-in cutters.
These are the primary applications:
• to allow programming of the rest point of the cut edge of continuous media.
• provide immediate backfeed after peel-off when the printer is used in a print/apply application configuration.
This command stays in effect only until the printer is turned off, a new ~JS command is sent, or the setting is changed on the control panel. When a ~JS command is encountered, it overrides the current control panel setting for the Backfeed Sequence.
The most common way of eliminating backfeed is to operate in Rewind Mode. Rewind Mode does not backfeed at all. After a label prints, the leading edge of the next label is placed at the print line. This eliminates the need to backfeed and does not introduce a non printable area at the leading edge or bottom of the label. It also does not allow the label to be taken from the printer because it is not fed out from under the printhead.
Running in another mode with backfeed turned off allows the label to be removed and eliminates the time-reduction of the backfeed sequence.
Format ~JSb
This table identifies the parameters for this format:
Parameters
b
= backfeed order in relation to printing
Details
Accepted Values:
A = 100 percent backfeed after printing and cutting
B = 0 percent backfeed after printing and cutting, and
100 percent before printing the next label
N
= normal — 90 percent backfeed after label is printed
O = off — turn backfeed off completely
10 to 90
= percentage value
The value entered must be a multiple of 10. Values not divisible by 10 are rounded to the nearest acceptable value. For example,
~JS55
is accepted as 50 percent backfeed.
Default Value:
N
Comments When using a specific value, the difference between the value entered and 100 percent is calculated before the next label is printed. For example, a value of 40 means 40 percent of the backfeed takes place after the label is cut or removed. The remaining 60 percent takes place before the next label is printed.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
246
ZPL Commands
~JS
The value for this command is also reflected in the Backfeed parameter on the printer configuration label.
For ~JSN — the Backfeed parameter is listed as DEFAULT
For ~JSA — or 100% the Backfeed parameter is listed as AFTER
For ~JSB — or 0% the Backfeed parameter is listed as BEFORE
For ~JS10 — 10% of the backfeed takes place after the label is cut or removed. The remaining 90% takes place before the next label is printed.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^JT
247
^JT
Head Test Interval
Description The
^JT
command allows you to change the printhead test interval from every
100 labels to any desired interval. With the ^JT command, the printer is allowed to run the test after printing a label. When a parameter is defined, the printer runs the test after printing a set amount of labels.
The printer’s default head test state is off. Parameters for running the printhead test are defined by the user.
Format ^JT####,a,b,c
This table identifies the parameters for this format:
Parameters
#### = four-digit number of labels printed between head tests a = manually select range of elements to test
Details
Accepted Values:
0000 to 9999
If a value greater than 9999 is entered, it is ignored.
Default Value: 0000 (off) b = first element to check when parameter a is
Y c
= last element to check when parameter a
is
Y
Accepted Values:
N = no
Y = yes
Initial Value at Power-up: N
Accepted Values: 0 to 9999
Initial Value at Power-up: 0
Accepted Values:
0 to 9999
Initial Value at Power-up: 9999
Comments The ^JT command supports testing a range of print elements. The printer automatically selects the test range by tracking which elements have been used since the previous test.
^JT
also turns on Automatic Mode to specify the first and last elements for the head test. This makes it possible to select any specific area of the label or the entire print width.
If the last element selected is greater than the print width selected, the test stops at the selected print width.
Whenever the head test command is received, a head test is performed on the next label unless the count is set to 0 (zero).
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
248
ZPL Commands
^JU
^JU
Configuration Update
Description The
^JU
command sets the active configuration for the printer.
Format ^JUa
This table identifies the parameters for this format:
Parameters Details
a
= active configuration
Accepted Values:
F
= reload factory values
These values are lost at power-off if not saved with ^JUS .
R
= recall last saved values
S = save current settings
These values are used at power-on.
Default Value: a value must be specified
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
^JW
Set Ribbon Tension
Description
^JW
sets the ribbon tension for the printer it is sent to.
Format ^JWt
This table identifies the parameters for this format:
Parameters
t
= tension
Details
Accepted Values:
L
= low
M
= medium
H
= high
Default Value: a value must be specified
Comments
^JW is used only for PAX series printers.
ZPL Commands
^JW
249
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
250
ZPL Commands
~JX
~JX
Cancel Current Partially Input Format
Description The
~JX
command cancels a format currently being sent to the printer. It does not affect any formats currently being printed, or any subsequent formats that might be sent.
Format ~JX
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^JZ
251
^JZ
Reprint After Error
Description The
^JZ
command reprints a partially printed label caused by a error condition is corrected.
Ribbon
Out
,
Media Out
, or
Head Open
error condition. The label is reprinted as soon as the
This command remains active until another ^JZ command is sent to the printer or the printer is turned off.
Format ^JZa
This table identifies the parameters for this format:
Parameters
a
= reprint after error
Details
Accepted Values:
N = no
Y = yes
Initial Value at Power-up:
Y
Comments
^JZ sets the error mode for the printer. If ^JZ changes, only labels printed after the change are affected.
If the parameter is missing or incorrect, the command is ignored.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
252
ZPL Commands
~KB
~KB
Kill Battery (Battery Discharge Mode)
Description To maintain performance of the rechargeable battery in the portable printers, the battery must be fully discharged and recharged regularly. The ~KB command places the printer in battery discharge mode. This allows the battery to be drained without actually printing.
Format ~KB
Comments While the printer is in Discharge Mode, the green power LED flashes in groups of three flashes.
Discharge Mode might be terminated by sending a printing format to the printer or by pressing either of the control panel keys.
If the battery charger is plugged into the printer, the battery is automatically recharged once the discharge process is completed.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^KD
253
^KD
Select Date and Time Format (for Real Time Clock)
Description The
^KD
command selects the format that the Real-Time Clock’s date and time information presents as on a configuration label. This is also displayed on the Printer Idle
LCD control panel display, and displayed while setting the date and time.
Format ^KDa
This table identifies the parameters for this format:
Parameters
a
= value of date and time format
Details
Accepted Values:
0
= normal, displays Version Number of firmware
1
= MM/DD/YY (24-hour clock)
2 = MM/DD/YY (12-hour clock)
3
= DD/MM/YY (24-hour clock)
4
= DD/MM/YY (12-hour clock)
Default Value: 0
Comments If the Real-Time Clock hardware is not present, Display Mode is set to 0
(Version Number).
If Display Mode is set to 0 (Version Number) and the Real-Time Clock hardware is present, the date and time format on the configuration label is presented in format 1.
If Display Mode is set to 0 (Version Number) and the Real-Time Clock hardware is present, the date and time format on the control panel display is presented in format 1.
For more details on select date and time format for the Real Time Clock, see
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
254
ZPL Commands
^KL
^KL
Define Language
Description The
^KL
command selects the language displayed on the control panel.
Format ^KLa
This table identifies the parameters for this format:
Parameters
a
= language
Details
Accepted Values:
1
= English
2
= Spanish
3
= French
4 = German
5
= Italian
6
= Norwegian
7
= Portuguese
8 = Swedish
9
= Danish
10
= Spanish2
11
= Dutch
12 = Finnish
13
= Japanese
14 = Korean *
15 = Simplified Chinese *
16 = Traditional Chinese *
Default Value:
1
* These values are only supported on Zebra ZM400/ZM600™ printer.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^KN
255
^KN
Define Printer Name
Description The printer’s network name and description can be set using the
^KN command. ^KN is designed to make your Zebra printer easy for users to identify. The name the administrator designates is listed on the configuration label and on the Web page generated by the printer.
Format ^KNa,b
This table identifies the parameters for this format:
Parameters
a
= printer name b
= printer description
Details
Accepted Values: up to 16 alphanumeric characters
Default Value: if a value is not entered, the parameter is ignored
If more than 16 characters are entered, only the first 16 are used.
Accepted Values: up to 35 alphanumeric characters
Default Value: if a value is not entered, the parameter is ignored
If more than 35 characters are entered, only the first 35 are used.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
256
ZPL Commands
^KN
Example •
This is an example of how to change the printer’s network name an description:
This shows how a configuration looks before using this command and after using this command:
^XA
^KNZebra1,desk_printer
^XZ
Before using this command: After using this command:
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^KP
257
^KP
Define Password
Description The
^KP
command is used to define the password that must be entered to access the control panel switches and LCD Setup Mode.
Format ^KPa,b
This table identifies the parameters for this format:
Parameters
a = mandatory four-digit password b = password level
Details
Accepted Values: any four-digit numeric sequence
Default Value: 1234
Accepted Values: 1, 2, 3, 4
Default Value: 3
Example •
This is an example of how to set a new control panel password:
^XA
^KP5678
^XZ
Comments If you forget your password, the printer can be returned to a default Setup Mode and the default password 1234 is valid again. Caution should be used, however — this also sets the printer configuration values back to their defaults.
To return the printer to the default factory settings using ZPL, send this:
^XA
^JUF
^XZ
To return the printer to the default factory settings using the control panel keys, see your printer’s User Guide for the procedure.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
258
ZPL Commands
^LF
^LF
List Font Links
This command is available only for printers with firmware version V60.14.x, V50.14.x, or later.
Description The ^LF command prints out a list of the linked fonts.
Example •
This example shows that SWISS721.TTF is the based font. ANMDJ.TTF is the first linked font, and MSGOTHIC.TTF is the second linked extension:
ZPL II CODE
GENERATED LABEL
^XA
^LF
^XZ
This is the code that established the font links:
^XA
^FLE:ANMDJ.TTF,E:SWISS721.TTF,1^FS
^FLE:MSGOTHIC.TTF,E:SWISS721.TTF,1^FS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^LH
259
^LH
Label Home
Description The
^LH
command sets the label home position.
The default home position of a label is the upper-left corner (position 0,0 along the x and y axis). This is the axis reference point for labels. Any area below and to the right of this point is available for printing. The ^LH command changes this reference point. For instance, when working with preprinted labels, use this command to move the reference point below the preprinted area.
This command affects only fields that come after it. It is recommended to use ^LH as one of the first commands in the label format.
Format ^LHx,y
This table identifies the parameters for this format:
Parameters
x
= x-axis position (in dots) y = y-axis position (in dots)
Details
Accepted Values: 0 to 32000
Initial Value at Power-up: 0 or last permanently saved value
Accepted Values: 0 to 32000
Initial Value at Power-up:
0 or last permanently saved value
Depending on the printhead used in your printer, use one of these when figuring the values for x and y :
6 dots
= 1 mm, 152 dots = 1 inch
8 dots
= 1 mm, 203 dots = 1 inch
11.8 dots
= 1 mm, 300 dots = 1 inch
24 dots
= 1 mm, 608 dots = 1 inch
Comments To be compatible with existing printers, this command must come before the first
^FS
(Field Separator) command. Once you have issued an
^LH
command, the setting is retained until you turn off the printer or send a new ^LH command to the printer.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
260
ZPL Commands
^LL
^LL
Label Length
Description The
^LL
command defines the length of the label. This command is necessary when using continuous media (media not divided into separate labels by gaps, spaces, notches, slots, or holes).
To affect the current label and be compatible with existing printers, ^LL must come before the first
^FS
(Field Separator) command. Once you have issued
^LL
, the setting is retained until you turn off the printer or send a new ^LL command.
Format ^LLy
This table identifies the parameters for this format:
Parameters
y = y-axis position (in dots)
Details
Accepted Values: 1 to 32000 , not to exceed the maximum label size.
While the printer accepts any value for this parameter, the amount of memory installed determines the maximum length of the label.
Default Value: typically set through the LCD (if applicable), or to the maximum label length capability of the printer.
Comments These formulas can be used to determine the value of y:
For 6 dot/mm printheads...
Label length in inches x 152.4 (dots/inch) = y
For 8 dot/mm printheads...
Label length in inches x 203.2 (dots/inch) = y
For 12 dot/mm printheads... Label length in inches x 304.8 (dots/inch) = y
For 24 dot/mm printheads... Label length in inches x 609.6 (dots/inch) = y
Values for y depend on the memory size. If the entered value for y exceeds the acceptable limits, the bottom of the label is cut off. The label also shifts down from top to bottom.
If multiple ^LL commands are issued in the same label format, the last ^LL command affects the next label unless it is prior to the first ^FS .
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^LR
261
^LR
Label Reverse Print
Description The
^LR
command reverses the printing of all fields in the label format. It allows a field to appear as white over black or black over white.
Using the ^LR is identical to placing an ^FR command in all current and subsequent fields.
Format ^LRa
This table identifies the parameters for this format:
Parameters Details
a
= reverse print all fields Accepted Values:
N = no
Y = yes
Initial Value at Power-up:
N
or last permanently saved value
Example •
This is an example that shows printing white over black and black over white.
The ^GB command is used to create the black background.
GENERATED LABEL ZPL II CODE
^XA^LRY
^FO100,50
^GB195,203,195^FS
^FO180,110^CFG
^FDLABEL^FS
^FO130,170
^FDREVERSE^FS
^XZ
Comments The
^LR
setting remains active unless turned off by
^LRN
or the printer is turned off.
Note •
^GB
needs to be used together with
^LR
.
Only fields following this command are affected.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
262
ZPL Commands
^LS
^LS
Label Shift
Description The
^LS
command allows for compatibility with Z-130 printer formats that are set for less than full label width. It is used to shift all field positions to the left so the same commands used on a Z-130 or Z-220 Printer can be used on other Zebra printers.
To determine the value for the ^LS command, use this formula:
Z-130 and Z-220 values for ^LHx + ^FOx
(distance from edge of label) = printer value for ^LSa
If the print position is less than 0, set ^LS to 0.
Format ^LSa
Important •
The ability to save the
^LS
command depends on the version of firmware.
This table identifies the parameters for this format:
Parameters
a
= shift left value (in dots)
Details
Accepted Values: -9999 to 9999
Initial Value at Power-up:
0
Comments When entering positive values, it is not necessary to use the + sign. The value is assumed to be positive unless preceded by a negative sign (-).
To be compatible with existing Zebra printers, this command must come before the first ^FS
(Field Separator) command. Once you have issued an ^LS command, the setting is retained until you turn off the printer or send a new
^LS
command to the printer.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^LT
263
^LT
Label Top
Description The
^LT
command moves the entire label format a maximum of
120 dot rows up or down from its current position, in relation to the top edge of the label. A negative value moves the format towards the top of the label; a positive value moves the format away from the top of the label.
This command can be used to fine-tune the position of the finished label without having to change any of the existing parameters.
Important •
For some printer models, it is possible to request a negative value large enough to cause the media to backup into the printer and become unthreaded from the platen. This condition can result in a printer error or unpredictable results.
Format ^LTx
This table identifies the parameters for this format:
Parameters
x
= label top (in dot rows)
Details
Accepted Values:
-120
to
120
Default Value: a value must be specified or the command is ignored
Comments The Accepted Value range for x might be smaller depending on the printer platform.
The ^LT command does not change the media rest position.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
264
ZPL Commands
^MA
^MA
Set Maintenance Alerts
Description The
^MA
command controls how the printer issues printed maintenance alerts.
Maintenance alerts are labels that print with a warning that indicates the printhead needs to be cleaned or changed. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers.
Format ^MAtype,print,printlabel_threshold,frequency,units
This table identifies the parameters for this format:
Parameters Details
type = type of alert Accepted Values:
R = head replacement
C = head cleaning
Default Value: This parameter must be specified as R or C for parameter 2-4 to be saved. However, parameter 5 will always be set.
print = determines if the alert prints a label printlabel threshold= distance where the first alert occurs frequency = distance before reissuing the alert units = odometer and printhead maintenance commands
Accepted Values:
Y = print a label
N = do not print label
Default Value: N
Accepted Values:
R = head replacement (unit of measurement for head is km with a range of 0 to 150 km)
C = clean head (unit of measurement is 1 meter = 39.37 inches with a range of 0 to 2000 meters)
0 = off (when set to 0, the selected alert is disabled; otherwise it is enabled.
Default Value: R = 50 km (1,968,500 inches) and C = 0 (off).
The unit of measurement is in meters. The range is 0 to 2000.
When set to 0, the alert label is only printed on power-up or when the printer is reset.
Default Value: 0 (print on power-up).
The units parameter reports units of the odometer and printhead maintenance commands, as follows: ~HQOD,~HQPH,~WQOD,
~WQPH.
Accepted Values:
C = centimeters (displays as: cm )
I = inches (displays as: ” )
M = meters (displays as: M )
Default Value: I
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^MA
265
Example •
This example sets the printed head cleaning message to print after five meters and to repeat every one meter after that until a ~ROC command is issued.
The Early Warning Maintenance setting must be ON.
1.
To set ^MA to print out a label flagging the need to clean the head, type:
2.
^XA^MAC,Y,5,1^XZ
When the threshold is met a label will print indicating that the head needs to be clean.
For this example, the message on the label looks like this:
For details resetting the units of measure, see the ~HQ examples on page 206 .
Comments Any values outside the specified range are ignored.
The intent of this command is to cause a label to print when the defined threshold is reached.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
266
ZPL Commands
^MC
^MC
Map Clear
Description In normal operation, the bitmap is cleared after the format has been printed.
The ^MC command is used to retain the current bitmap. This applies to current and subsequent labels until cleared with ^MCY .
Format ^MCa
Important •
To produce a label template,
^MC
must be used with
^FV
.
This table identifies the parameters for this format:
Parameters
a
= map clear
Details
Accepted Values: Y (clear bitmap) or N (do not clear bitmap)
Initial Value at Power-up: Y
Comments The
^MC
command retains the image of the current label after formatting. It appears in the background of the next label printed.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^MD
267
^MD
Media Darkness
Description The
^MD
command adjusts the darkness relative to the current darkness setting.
Format ^MDa
This table identifies the parameters for this format:
Parameters Details
a = media darkness level
Accepted Values: -30 to 30 , depending on current value
Initial Value at Power-up: 0
If no value is entered, this command is ignored.
Example •
These examples show setting the printer to different darkness levels:
•
•
If the current value (value on configuration label) is 16, entering the command ^MD-9 decreases the value to 7.
If the current value (value on configuration label) is 1, entering the command ^MD15 increases the value to 16.
•
If the current value (value on configuration label) is 25, entering the command ^MD10 increases only the value to 30, which is the maximum value allowed.
Each ^MD command is treated separately in relation to the current value as printed on the configuration label.
Important •
The darkness setting range for the XiIIIPlus is 0 to 30 in increments of 0.1.
The firmware is setup so that the ^MD and ~SD commands (ZPL darkness commands) accepts that range of settings.
Example •
These are examples of the XiIIIPlus Darkness Setting:
^MD8.3
~SD8.3
Example •
For example, this is what would happen if two
^MD
commands were received:
Assume the current value is 15. An ^MD-6 command is received that changes the current value to 9. Another command, ^MD2 , is received. The current value changes to 17.
The two ^MD commands are treated individually in relation to the current value of 15.
Comments The ~SD command value, if applicable, is added to the ^MD command.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
268
ZPL Commands
^MF
^MF
Media Feed
Description The
^MF
command dictates what happens to the media at power-up and at head-close after the error clears.
Format ^MFp,h
This table identifies the parameters for this format:
Parameters
p = feed action at powerup h
= feed action after closing printhead
Details
Accepted Values:
F
= feed to the first web after sensor
C
= (see
L = (see
N
= no media feed
S = short calibration *
Default Value:
C
Accepted Values:
F
= feed to the first web after sensor
C
= (see
L
= (see
N = no media feed
S = short calibration *
Default Value: C
* This value is only supported on Zebra XiIIIPlus, PAX, ZM400/ZM600, and S4M printers.
Comments It is important to remember that if you choose the N setting, the printer assumes that the media and its position relative to the printhead are the same as before power was turned off or the printhead was opened. Use the
^JU command to save changes.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^MI
269
^MI
Set Maintenance Information Message
Description The
^MI
command controls the content of maintenance alert messages, which are reminders printed by the printer to instruct the operator to clean or replace the printhead.
This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers.
Format ^MItype,message
This table identifies the parameters for this format:
Parameters
type = identifies the type of alert message = message that prints on the label when a maintenance alert occurs
Details
Accepted Values:
R = head replacement
C = head cleaning
Default Value: R
The maximum length of each message is 63 characters. All characters following the comma and preceding the next tilde (~) or carat (^) define the message string. Commas (,) are not allowed in the message.
Default Value:
head cleaning = please clean printhead head replacement = please replace printhead
Example •
This example sets the printhead (head) replacement warning message. Printing of this message is controlled by the ^MA command.
1.
To customize the text of this label, type something like this:
2.
^XA^MIR,PRINT HEAD NEEDS REPLACEMENT - CALL EXT 1000^XZ
The label prints whatever you program it to say.
For this example, the message on the label looks like this:
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
270
ZPL Commands
^ML
^ML
Maximum Label Length
Description The
^ML
command lets you adjust the maximum label length.
Format ^MLa
This table identifies the parameters for this format:
Parameters
a
= maximum label length (in dot rows)
Details
Accepted Values: 0 to maximum length of label
Default Value: last permanently saved value
Comments For calibration to work properly, you must set the maximum label length equal to or greater than your actual label length.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^MM
271
^MM
Print Mode
Description The
^MM
command determines the action the printer takes after a label or group of labels has printed.
Format ^MMa,b
This table identifies the parameters for this format:
Parameters
a = desired mode b = prepeel select
Details
Accepted Values:
T
= Tear-off
P
= Peel-off (not available on S-300)
R = Rewind (depends on printer model)
A
= Applicator (depends on printer model)
C
= Cutter (depends on printer model)
D
= Delayed cutter
L = Reserved *
U = Reserved *
Default Value: T
The values available for parameter a are dependent on the printer being used and whether it supports the option.
Accepted Values:
N = no
Y = yes
Default Value: N
The command is ignored if parameters are missing or invalid. The current value of the command remains unchanged.
* These values are only supported on the Zebra ZM400/ZM600™ printer.
This bulleted list identifies the different modes of operation:
• Tear-off — after printing, the label advances so the web is over the tear bar. The label, with liner attached, can be torn off manually.
• Peel-off — after printing, the label moves forward and activates a Label Available Sensor.
Printing stops until the label is manually removed from the printer. Liner feeds down the front of the printer and is manually removed, or is routed to a liner take-up spindle or full roll rewinder.
Prepeel – after each label is manually removed, the printer feeds the next label forward to prepeel a small portion of the label away from the liner material. The printer then backfeeds and prints the label. The prepeel feature assists in the proper peel operation of some media types.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
272
ZPL Commands
^MM
• Rewind — the label and backing are rewound on an (optional) external rewind device.
The next label is positioned under the printhead (no backfeed motion).
• Applicator — when used with an application device, the label move far enough forward to be removed by the applicator and applied to an item.
• Cutter — after printing, the media feeds forward and is automatically cut into predetermined lengths.
• Delayed cutter — When the printer is in the Delayed Cut PRINT MODE, it will cut the label when it receives the ~JK (Delayed Cut) command. To activate the ~JK command, the printer's PRINT MODE must be set to Delayed Cut and there must be a label waiting to be cut. When the printer is not in the Delayed Cut PRINT MODE, the printer will not cut the label when it receives the ~JK command.
The Delayed Cut feature can be activated:
• through PRINT MODE on the printer’s control panel
• with a ^MMD command
Comments Be sure to select the appropriate value for the print mode being used to avoid unexpected results.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^MN
273
^MN
Media Tracking
Description The
^MN
command relays to the printer what type of media is being used
(continuous or non-continuous) for purposes of tracking. This bulleted list shows the types of media associated with this command:
• Continuous Media – this media has no physical characteristic (web, notch, perforation, mark, et cetera) to separate labels. Label length is determined by the
^LL
command.
• Non-continuous Media – this media has some type of physical characteristic (web, notch, perforation, mark, et cetera) to separate the labels.
Format ^MNa
This table identifies the parameters for this format:
Parameters Details
a
= media being used Accepted Values:
N
= continuous media
Y = non-continuous media web sensing *
W
= non-continuous media web sensing
*
M
= non-continuous media mark sensing
Default Value: a value must be entered or the command is ignored
* provides the same result.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
274
ZPL Commands
^MP
^MP
Mode Protection
Description The
^MP
command is used to disable the various mode functions on the control panel. Once disabled, the settings for the particular mode function can no longer be changed and the LED associated with the function does not light.
Because this command has only one parameter, each mode must be disabled with an individual
^MP
command.
Format ^MPa
This table identifies the parameters for this format:
Parameters
a
= mode to protect
Details
Accepted Values:
D
= disable Darkness Mode
P
= disable Position Mode
C
= disable Calibration Mode
E = enable all modes
S
= disable all mode saves (modes can be adjusted but values are not saved)
W
= disable Pause
F = disable Feed
X
= disable Cancel
M
= disable menu changes
Default Value: a value must be entered or the command is ignored
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^MP
275
Example •
This example shows the ZPL code that disables modes D and C. It also shows the effects on the configuration label before and after the ZPL code is sent:
^XA
^MPD
^MPC
^XZ
Before
After
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
276
ZPL Commands
^MT
^MT
Media Type
Description The
^MT
command selects the type of media being used in the printer. There are the choices for this command:
• Thermal Transfer Media – this media uses a high-carbon black or colored ribbon. The ink on the ribbon is bonded to the media.
• Direct Thermal Media – this media is heat sensitive and requires no ribbon.
Format ^MTa
This table identifies the parameters for this format:
Parameters
a
= media type used
Details
Accepted Values:
T
= thermal transfer media
D
= direct thermal media
Default Value: a value must be entered or the command is ignored
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^MU
277
^MU
Set Units of Measurement
Description The
^MU
command sets the units of measurement the printer uses.
^MU
works on a field-by-field basis. Once the mode of units is set, it carries over from field to field until a new mode of units is entered.
^MU also allows for printing at lower resolutions — 600 dpi printers are capable of printing at
300, 200, and 150 dpi; 300 dpi printers are capable of printing at 150 dpi.
Format ^MUa,b,c
This table identifies the parameters for this format:
Parameters
a
= units b = format base in dots per inch c
= desired dots-per-inch conversion
Details
Accepted Values:
D
= dots
I
= inches
M
= millimeters
Default Value:
D
Accepted Values: 150 , 200 , 300
Default Value: a value must be entered or the command is ignored
Accepted Values: 300 , 600
Default Value: a value must be entered or the command is ignored
Example •
This is an example of Setting Units:
Assume 8 dot/millimeter (203 dot/inch) printer.
Field based on dots:
^MUd^FO100,100^GB1024,128,128^FS
Field based on millimeters:
^MUm^FO12.5,12.5^GB128,16,16^FS
Field based on inches:
^MUi^FO.493,.493^GB5.044,.631,.631^FS
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
278
ZPL Commands
^MU
Example •
This is an example of Converting dpi Values.
Convert a 150 dpi format to a 300 dpi format with a base in dots:
^MUd,150,300
Convert a 150 dpi format to a 600 dpi format with a base in dots:
^MUd,150,600
Convert a 200 dpi format to a 600 dpi format with a base in dots:
^MUd,200,600
To reset the conversion factor to the original format, enter matching values for parameters
b
and
c
:
^MUd,150,150
^MUd,200,200
^MUd,300,300
^MUd,600,600
Comments This command should appear at the beginning of the label format to be in proper ZPL II format.
To turn the conversion off, enter matching values for parameter b and c .
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^MW
279
^MW
Modify Head Cold Warning
Description The
^MW
command allows you to set the head cold warning indicator based on the operating environment.
Format ^MWy
This table identifies the parameters for this format:
Parameters
a =
enable head cold warning
Details
Accepted Values:
Y
= enable head cold warning
N
= disable head cold warning
Important •
When a parameter is not given, the instruction is ignored.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
280
ZPL Commands
^NC
^NC
Select the Primary Network Device
Description The ^NC command selects the wired or wireless print server as the primary network device. This command is supported only on Zebra ZM400/ZM600™ printers.
The ZM400 and ZM600 printers support the simultaneous installation of an internal, external, and a wireless print server. Even though all three print servers may be installed, only one is connected to the network and is the active print server.
outlines priorities and identifies which device becomes the active print server when multiple print servers are installed.
Table 13 • Effect of Primary Network Setting on Active Print Server
If the
Primary
Network is set to:
Installed and Connected to a Live Ethernet Network
Internal External Wireless*
Then, the Active
Print Server will be:
Wired
Wireless
X
X
X
X
X
X
X
X
X
X
X
X
Internal
External
Wireless
Wireless
Internal
External
* NOTE: A wireless option board must have an active radio that can properly associate to an access point.
Format ^NCa
This table identifies the parameters for this format:
Parameters
a = primary network device
Details
Accepted Values:
1 = wired primary
2 = wireless primary
Default Value: 1 must be an accepted value or it is ignored
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~NC
281
~NC
Network Connect
Description The
~NC
command is used to connect a particular printer to a network by calling up the printer’s network ID number.
Format ~NC###
This table identifies the parameters for this format:
Parameters
### = network ID number assigned
(must be a three-digit entry)
Details
Accepted Values:
001 to 999
Default Value: 000 (none)
Comments Use this command at the beginning of any label format to specify which printer on the network is going to be used. Once the printer is established, it continues to be used until it is changed by another ~NC command. This command must be included in the label format to
wake up the printer.
The commands ^MW, ~ NC , ^NI , ~NR , and ~NT are used only with RS-422/485 printer communications.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
282
ZPL Commands
^ND
^ND
Change Network Settings
Description The ^ND command changes the network settings on Zebra ZM400/ZM600™ and S4M™ printers running V53.13.xZ or later.
For the external wired print server settings, the ^ND command is the same as the ^NS command. For the wireless print server settings, the ^ND command is the same as the ^WI command. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later.
Format ^NDa,b,c,d,e,f,g,h,i,j
This table identifies the parameters for this format:
Parameters Details
a = the device that is being modified b = IP resolution c = IP address d = subnet mask
Accepted Values:
1 = external wired
2 = internal wired
3 = wireless
Accepted Values:
A = All
B = BOOTP
C = DHCP and BOOTP
D = DHCP
G = Gleaning only (Not recommended when the Wireless
Print Server or Wireless Plus Print Server is installed.)
R = RARP
P = Permanent
Default Value: A
Accepted Values: Any properly formatted IP address in the xxx.xxx.xxx.xxx format.
Accepted Values: Any properly formatted subnet mask in the xxx.xxx.xxx.xxx format.
e = default gateway
Accepted Values: Any properly formatted gateway in the xxx.xxx.xxx.xxx format.
f = WINS server address
Accepted Values: Any properly formatted WINS server in the xxx.xxx.xxx.xxx format.
g = connection timeout checking
Accepted Values:
Y = yes
N = no
Default Value: Y
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^ND
283
Parameters
h = timeout value i = ARP broadcast interval j = base raw port number
Details
Time, in seconds, before the connection times out.
Accepted Values: 0 through 9999
Default Value: 300
Time, in minutes, that the broadcast is sent to update the device’s
ARP cache.
Accepted Values: 0 through 30
Default Value: 0 (no ARP sent)
The port number that the printer should use for its RAW data.
Accepted Values: 1 through 65535
Default Value: 9100
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
284
ZPL Commands
^NI
^NI
Network ID Number
Description The
^NI
command is used to assign a network ID number to the printer. This must be done before the printer can be used in a network.
Format ^NI###
This table identifies the parameters for this format:
Parameters
### = network ID number assigned
(must be a three-digit entry)
Details
Accepted Values:
001 to 999
Default Value: 000 (none)
Comments The last network ID number set is the one recognized by the system.
The commands
~NC
,
^NI
,
~NR
, and
~NT
are used only with RS-485 printer communications.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~NR
285
~NR
Set All Network Printers Transparent
Description The
~NR
command sets all printers in the network to be transparent, regardless of ID or current mode.
Format ~NR
Comments The commands
~NC , ^NI , ~NR , and ~NT are used only with RS-485 printer communications.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
286
ZPL Commands
^NS
^NS
Change Wired Networking Settings
Description Use this command to change the wired print server network settings.
Format ^NSa,b,c,d,e,f,g,h,i
The following table identifies the parameters for this format.
Parameters Details
a b c d
= IP resolution
= IP address
= subnet mask
= default gateway
Accepted Values:
A = ALL
B = BOOTP
C = DHCP AND BOOTP
D = DHCP
G = GLEANING ONLY
R = RARP
P = PERMANENT
Default Value: A
Use of GLEANING ONLY is not recommended when the
Wireless Print Server or Wireless Plus Print Server is installed.
Accepted Values: Any properly formatted IP address in the xxx.xxx.xxx.xxx format.
Accepted Values: Any properly formatted subnet mask in the xxx.xxx.xxx.xxx format.
Accepted Values: Any properly formatted gateway in the xxx.xxx.xxx.xxx format.
e
= WINS server address Accepted Values: Any properly formatted WINS server in the xxx.xxx.xxx.xxx format.
f = connection timeout checking g = timeout value
Accepted Values:
Y = Yes
N = No
Default Value: Y
Time, in seconds, before the connection times out.
Accepted Values: 0 through 9999
Default Value: 300
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^NS
287
Parameters Details
h = ARP broadcast interval
Time, in minutes, that the broadcast is sent to update the device’s ARP cache.
Accepted Values: 0 through 30
Default Value: 0 (no ARP sent) i = base raw port number The port number that the printer should use for its RAW data.
Accepted Values: 1 through 65535
Default Value: 9100
Comments For the ZM400 and ZM600 printers, Zebra recommends that you use the ^ND command instead of the ^NS command.
Example •
^XA
^NSa,192.168.0.1,255.255.255.0,192.168.0.2
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
288
ZPL Commands
~NT
~NT
Set Currently Connected Printer Transparent
Description The
~NT
command sets the currently connected network printer to be transparent.
Format ~NT
Comments With Z Series
®
printers, the ~NT command functions the same as the ~NR command. All Z Series printers on a network receive the transmission.
The commands ~NC , ^NI , ~NR , and ~NT are used only with RS-485 printer communications.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^PA
289
^PA
Advanced Text Properties
This command is available only for printers with firmware version V60.14.x, V50.14.x, or later.
Description The ^PA command is used to configure advanced text layout features.
Format ^PAa,b,c,d
This table identifies the parameters for this format:
Parameters
a
= default glyph b
= bidirectional text layout c = character shaping d = OpenType table support
Details
This determines whether the default glyph is a space character or the default glyph of the base font, which is typically a hollow box.
Accepted Values:
0 = off (space as default glyph)
1 = on (default glyph of font is used, often a hollow box, but depends on the font.)
Default Value: 0
This determines whether the bidirectional text layout is turned on or off.
Accepted Values:
0 = off
1 = on
Default Value: 0
This determines whether character shaping is turned on or off.
Accepted Values:
0 = off
1 = on
Default Value: 0
This determines whether the OpenType support is turned on or off.
Accepted Values:
0 = off
1 = on
Default Value: 0
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
290
ZPL Commands
^PF
^PF
Slew Given Number of Dot Rows
Description The
^PF
command causes the printer to slew labels (move labels at a high speed without printing) a specified number of dot rows from the bottom of the label. This allows faster printing when the bottom portion of a label is blank.
Format ^PF#
This table identifies the parameters for this format:
Parameters
#
= number of dots rows to slew
Details
Accepted Values:
0 to 32000
Default Value: a value must be entered or the command is ignored
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^PH ~PH
291
^PH ~PH
Slew to Home Position
Description The
^PH
or
~PH
command causes the printer to feed one blank label.
The ~PH command feeds one label after the format currently being printed is done or when the printer is placed in pause.
The ^PH command feeds one blank label after the current format prints.
Format ^PH or ~PH
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
292
ZPL Commands
^PM
^PM
Printing Mirror Image of Label
Description The
^PM
command prints the entire printable area of the label as a mirror image. This command flips the image from left to right.
Format ^PMa
This table identifies the parameters for this format:
Parameters
a = print mirror image of entire label
Details
Accepted Values:
N = no
Y = yes
Default Value:
N
Example •
This is an example of printing a mirror image on a label:
ZPL II CODE
^XA^PMY
^FO100,100
^CFG
^FDMIRROR^FS
^FO100,160
^FDIMAGE^FS
^XZ
GENERATED LABEL
Comments If the parameter is missing or invalid, the command is ignored. Once entered, the ^PM command remains active until ^PMN is received or the printer is turned off.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^PO
293
^PO
Print Orientation
Description The
^PO
command inverts the label format 180 degrees. The label appears to be printed upside down. If the original label contains commands such as ^LL , ^LS , ^LT and
^PF , the inverted label output is affected differently.
Format ^POa
This table identifies the parameters for this format:
Parameters
a
= invert label
180 degrees
Details
Accepted Values:
N
(normal) or
I
(invert)
Default Value:
N
Example •
This is an example of printing a label at 180 degrees:
GENERATED LABEL ZPL II CODE
^XA^CFD
^POI
^LH330,10
^FO50,50
^FDZEBRA TECHNOLOGIES^FS
^FO50,75
^FDVernon Hills, IL^FS
^XZ
The ^POI command inverts the x, y coordinates. All image placement is relative to these inverted coordinates. Therefore, a different ^LH (Label Home) can be used to move the print back onto the label.
Comments If multiple
^PO
commands are issued in the same label format, only the last command sent to the printer is used.
Once the ^PO command is sent, the setting is retained until another ^PO command is received or the printer is turned off.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
294
ZPL Commands
^PP ~PP
^PP ~PP
Programmable Pause
Description The
~PP
command stops printing after the current label is complete (if one is printing) and places the printer in Pause Mode.
The ^PP command is not immediate. Therefore, several labels might print before a pause is performed. This command pauses the printer after the current format prints.
The operation is identical to pressing
PAUSE
on the control panel of the printer. The printer remains paused until
PAUSE
is pressed or a ~PS (Print Start) command is sent to the printer.
Format ^PP or ~PP
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^PQ
295
^PQ
Print Quantity
Description The
^PQ
command gives control over several printing operations. It controls the number of labels to print, the number of labels printed before printer pauses, and the number of replications of each serial number.
Format ^PQq,p,r,o
This table identifies the parameters for this format:
Parameters Details
q
= total quantity of labels to print p
= pause and cut value
(labels between pauses)
Accepted Value:
1
to
99,999,999
Default Value: 1
Accepted Value:
Default Value:
1 to 99,999,999
0 (no pause) r
= replicates of each serial number
Accepted Value: 0 to 99,999,999 replicates
Default Value:
0
(no replicates) o = override pause count
Accepted Values:
N = no
Y = yes
Default Value: N
If the o parameter is set to Y , the printer cuts but does not pause, and the printer does not pause after every group count of labels has been printed. With the o
parameter set to
N
(default), the printer pauses after every group count of labels has been printed.
Example •
This example shows the control over print operations:
^PQ50,10,1,Y: This example prints a total of 50 labels with one replicate of each serial number. It prints the total quantity in groups of 10, but does not pause after every group.
^PQ50,10,1,N: This example prints a total of 50 labels with one replicate of each serial number. It prints the total quantity in groups of 10, pausing after every group.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
296
ZPL Commands
^PR
^PR
Print Rate
Description The
^PR
command determines the media and slew speed (feeding a blank label) during printing.
The printer operates with the selected speeds until the setting is reissued or the printer is turned off.
The print speed is application-specific. Because print quality is affected by media, ribbon, printing speeds, and printer operating modes, it is very important to run tests for your applications.
Important •
Some models go to default print speed when power is turned off.
Note •
To set the print rate to 1 inch per second the 600 dpi XiIIIPlus accepts a ^PR1 command.
Format ^PRp,s,b
This table identifies the parameters for this format:
Parameters
p
= print speed
Details
Accepted Values:
A or 2 = 50.8 mm/sec. (2 inches/sec.)
B or 3 = 76.2 mm/sec. (3 inches/sec.)
C or 4 = 101.6 mm/sec. (4 inches/sec.)
5 = 127 mm/sec.(5 inches/sec.)
D or 6 = 152.4 mm/sec. (6 inches/sec.)
E or 8 = 203.2 mm/sec. (8 inches/sec.)
9 = 220.5 mm/sec. 9 inches/sec.)
10 = 245 mm/sec.(10 inches/sec.)
11 = 269.5 mm/sec.(11 inches/sec.)
12 = 304.8 mm/sec. 12 inches/sec.)
Default Value: A
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^PR
297
Parameters
s
= slew speed b
= backfeed speed
Details
Accepted Values:
A or 2 = 50.8 mm/sec. (2 inches/sec.)
B
or
3 =
76.2 mm/sec. (3 inches/sec.)
C or 4 = 101.6 mm/sec. (4 inches/sec.)
5 = 127 mm/sec. 5 inches/sec.)
D or 6 = 152.4 mm/sec. (6 inches/sec.)
E
or
8 =
203.2 mm/sec. (8 inches/sec.)
9 = 220.5 mm/sec. (9 inches/sec.)
10 = 245 mm/sec. (10 inches/sec.)
11 = 269.5 mm/sec. 11 inches/sec.)
12 = 304.8 mm/sec. 12 inches/sec.)
Default Value: D
Accepted Values:
A or 2 = 50.8 mm/sec. (2 inches/sec.)
B
or
3 = 76.2 mm/sec. (3 inches/sec.)
C or 4 = 101.6 mm/sec. (4 inches/sec.)
5 = 127 mm/sec.(5 inches/sec.)
D or 6 = 152.4 mm/sec. (6 inches/sec.)
E
or
8 =
203.2 mm/sec. (8 inches/sec.)
9 = 220.5 mm/sec. 9 inches/sec.)
10 = 245 mm/sec. 10 inches/sec.)
11 = 269.5 mm/sec. 11 inches/sec.)
12 = 304.8 mm/sec. 12 inches/sec.)
Default Value: A
Comments The speed setting for p , s , and b is dependent on the limitations of the printer.
If a particular printer is limited to a rate of 6 ips (inches per second), a value of 12 can be entered but the printer performs only at a 6 ips rate. See your printer’s User Guide for specifics on performance.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
298
ZPL Commands
~PR
~PR
Applicator Reprint
Description The
~PR
command is supported only by the PAX and PAX2 series printers. If the ~PR
command is enabled (see ^JJ on page 236
), the last label printed reprints, similar to the applicator asserting the Reprint signal on the applicator port.
Format ~PR
Comments Pressing
PREVIOUS
on the control panel also causes the last label to reprint.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~PS
299
~PS
Print Start
Description The
~PS
command causes a printer in Pause Mode to resume printing. The operation is identical to pressing
PAUSE
on the control panel of the printer when the printer is already in Pause Mode.
Format ~PS
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
300
ZPL Commands
^PW
^PW
Print Width
Description The
^PW
command allows you set the print width.
Format ^PWa
This table identifies the parameters for this format:
Parameters Details
a
= label width (in dots)
Accepted Values: 2 , to the width of the label
If the value exceeds the width of the label, the width is set to the label’s maximum size.
Default Value: last permanently saved value
Limitation Not all Zebra printers support the
^PW command.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~RO
301
~RO
Reset Advanced Counter
Description The
~RO
command resets the advanced counters used by the printer to monitor label generation in inches, centimeters, and number of labels. These resettable counters are available and can be reset.
Format ~ROc
This table identifies the parameters for this format:
Parameters
c
= counter number
Details
Accepted Values:
1 = reset counter 1
2 = reset counter 2
R = reset head replaced counter *
R resets the head cleaned counter and the head replaced counter.
C = reset head cleaned counter *
Default Value: a value must be specified or the command is ignored
* These values are only supported on Zebra ZM400/ZM600™ and S4M™ printers.
Example •
This example shows how the counter portion of the printer configuration label looks when counter 1 is reset by sending ~RO1:
Before
After
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
302
ZPL Commands
^SC
^SC
Set Serial Communications
Description The
^SC
command allows you to change the serial communications parameters you are using.
Format ^SCa,b,c,d,e,f
This table identifies the parameters for this format:
Parameters
a = baud rate b = word length (in data bits) c
= parity d e f
= stop bits
= protocol mode
= Zebra protocol
Details
Accepted Values:
110*
;
300
;
600
;
1200
;
2400
;
4800
;
9600 ; 14400 ; 19200 ; 28800 ; 38400 ; or 57600;
115200
Default Value: must be specified or the parameter is ignored
Accepted Values:
7
or
8
Default Value: must be specified
Accepted Values:
N (none), E (even), or O (odd)
Default Value: must be specified
Accepted Values: 1 or 2
Default Value: must be specified
Accepted Values:
X = XON/XOFF
D =
DTR/DSR
R =
RTS
Default Value: must be specified
Accepted Values:
A = ACK/NAK
N
= none
Z
= Zebra
Default Value: must be specified
* This option is not supported on Zebra ZM400/ZM600™ and S4M™ printers.
Comments If any of the parameters are missing, out of specification, not supported by a particular printer, or have a ZPL-override DIP switch set, the command is ignored.
A ^JUS command causes the changes in Communications Mode to persist through power-up and software resets.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~SD
303
~SD
Set Darkness
Description The
~SD
command allows you to set the darkness of printing.
~SD
is the equivalent of the darkness setting parameter on the control panel display.
Format ~SD##
This table identifies the parameters for this format:
Parameters
## = desired darkness setting (two-digit number)
Details
Accepted Values: 00 to 30
Default Value: last permanently saved value
Important •
The darkness setting range for the XiIIIPlus is 0 to 30 in increments of 0.1.
The firmware is setup so that the ^MD and ~SD commands (ZPL darkness commands) accepts that range of settings.
Example •
These are examples of the XiIIIPlus Darkness Setting:
^MD8.3
~SD8.3
Comments The
^MD
command value, if applicable, is added to the
~SD
command.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
304
ZPL Commands
^SE
^SE
Select Encoding Table
Description The
^SE
command is used to select the desired ZPL or ZPL II encoding table.
Format ^SEd:o.x
This table identifies the parameters for this format:
Parameters
d
= location of encoding table o
= name of encoding table x
= extension
Details
Accepted Values:
R: , E: , B: , and A:
Default Value: R:
Accepted Value:
1
to
8
alphanumeric characters
Default Value: a value must be specified
Fixed Value: .DAT
The encoding tables are provided with the font card or downloaded in flash with the font. The table appears as XXXXXXX.DAT in a directory label printed by the ZPL commands.
The most active encoding table is indicated by the * on the directory label.
Example •
^XA^WD*:*.*^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^SF
305
^SF
Serialization Field (with a Standard ^FD String)
Description The
^SF
command allows you to serialize a standard
^FD
string. Strings are serialized from the last character in the backing store with regard to the alignment of the mask and increment strings. The maximum size of the mask and increment string is 3K combined.
For combining semantic clusters that do not get incremented, the mask character % needs to be added to the increment string.
Format ^SFa,b
This table identifies the parameters for this format:
Parameters
a
= mask string b
= increment string
Details
The mask string sets the serialization scheme. The length of the string mask defines the number of combining semantic clusters in the current
^FD
string to be serialized. The mask is aligned to the combining semantic clusters in the ^FD string starting with the last in the backing store position.
Mask String placeholders:
D or d – Decimal numeric 0–9
H or h – Hexadecimal 0–9 plus a-f or A-F
O
or o
– Octal 0–7
A or a – Alphabetic A–Z or a–z
N or n – Alphanumeric 0–9 plus A–Z or a–z
% – Ignore character or skip
The increment string is the value to be added to the field on each label. The default value is equivalent to a decimal value of one. The string is composed of any combining semantic clusters defined in the serial string. Invalid combining semantic clusters are assumed to be equal to a value of zero in that combining semantic clusters position.
The increment value for alphabetic strings start with ‘ A ’ or ‘ a ’ as the zero placeholder. This means to increment an alphabetic combining semantic cluster by one, a value of ‘
B
’ or ‘ b ’ must be in the increment string.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
306
ZPL Commands
^SF
Example •
This is an example of serializing a ^FD string. The ZPL II code generates three separate labels as seen in Generated Labels:
ZPL II CODE GENERATED LABELS
^XA
^FO100,100
^CF0,100
^FD12A^SFnnA,F^FS
^PQ3
^XZ
This mask has the first combining semantic clusters as alphanumeric (nn
= 12) and the last digit as uppercase alphabetic (A). The decimal value of the increment number is equivalent to
5 (F). The number of labels generated depends on the number specified by the
^PQ
command.
In a similar instance, the
^FD
string could be replaced with either of the
^FD
strings below to generate a series of label, determined by ^PQ .
Using this ZPL code:
^FDBL0000^SFAAdddd,1
The print sequence on this series of labels is:
BL0000, BL0001,...BL0009, BL0010,...
BL0099, BL0100,...BL9999, BM0000...
Using this ZPL code:
^FDBL00-0^SFAAdd%d,1%1
The print sequence on this series of labels is:
BL00-0, BL01-1, BL02-2,...BL09-9,
BL11-0, BL12-1...
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^SF
307
Examples •
These examples show the importance of capitalization and location within the mask.
In this example, the printer cycles with every two printed labels and alternates between H
(position 18), and then Z (position 36). With n or N, the serial number increments from 0 - 9 and a–z or A–Z (36 positions overall). With each completed cycle, the second cluster (nn) increments one position (from 00, 01, 02 …) per cycle:
ZPL II CODE
^XA
^FO100,50^A0N,50,50^FDzzZ^SFnnN,I^FS
^PQ10
^XZ
GENERATED LABELS
In this example, lower case i increments with a mask string of nnN. Nothing changes because the first cluster (Z) never triggers the second cluster (zz) to change.
ZPL II CODE
^XA
^FO100,50^A0N,50,50^FDzzZ^SFnnN,i^FS
^PQ10
^XZ
GENERATED LABELS
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
308
ZPL Commands
^SF
Important notes about masking for firmware version V60.14.x, V50.14.x, or later:
• A single % masks an entire combining semantic cluster rather than a single code point.
• The mask string and increment string should be aligned at the last code point in their respective backing stores.
• Control and bidirectional characters do not require a mask and are ignored for serialization purposes.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^SI
309
^SI
Set Sensor Intensity
Description The
^SI
command is used to change the values for the media sensors, which are also set during the media calibration process. The media calibration process is described in your specific printer’s user’s guide. This command is only supported on Zebra
ZM400/ZM600™ printers.
Format ^SIa,b
This table identifies the parameters for this format:
Parameters
a
= indicates the setting to modify b
= the value to use for the sensor being configured
Details
Accepted Values:
1 = transmissive sensor brightness setting
2
= transmissive sensor baseline setting
Default Value: must be an accepted value or the entire command is ignored
The ranges for this parameter are the same for the accepted values in parameter a.
Accepted Values: 0 to 196
Default Value: must be an accepted value or the entire command is ignored
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
310
ZPL Commands
^SL
^SL
Set Mode and Language (for Real-Time Clock)
Description The
^SL
command is used to specify the Real-Time Clock’s mode of operation and language for printing information.
•
•
Important •
Time is read when the image is created. If the image stays in the queue longer than the specified time the image will be recreated with a new time.
There are incidents when the same time or a larger space of time may be printed on labels.
This is due to the format complexity and print speed.
Format ^SLa,b
This table identifies the parameters for this format:
Parameters
a
= mode
Details
Accepted Values:
S
= Start Time Mode. This is the time that is read from the Real-Time Clock when label formatting begins
(when ^XA is received). The first label has the same time placed on it as the last label.
T
= Time Now Mode. This is the time that is read from the Real-Time Clock when the label to be printed is placed in print queue. Time Now is similar to a serialized time or date field.
Numeric Value = With the Enhanced Real Time
Clock (V60.13.0.10 or later) a time accuracy tolerance can be specified. Range = 1 to 999 seconds, 0 = one second tolerance
Example: SL30,1
= Accuracy tolerance of 30 seconds and use English.
Default Value:
S
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^SL
311
Parameters
b
= language
Value 13 is only supported in firmware versions
V60.14.x, V50.14.x, or later.
Details
Accepted Values:
1 = English
2
= Spanish
3
= French
4
= German
5 = Italian
6
= Norwegian
7
= Portuguese
8
= Swedish
9 = Danish
10
= Spanish 2
11
= Dutch
12
= Finnish
13
= Japanesed
14 = Korean *
15 = Simplified Chinese *
16 = Traditional Chinese *
Default Value: the language selected with
^KL or the control panel
* These values are only supported on Zebra ZM400/ZM600™ printers.
•
•
Comments These are some comments to be aware of:
The
^SL
command must be placed before the first ^FO command.
As of V60.13.0.10 all supported printers have Enhanced Real Time Clock capabilities the
RTC will not print time fields that are more than sixty seconds old, rather it will update the time prior to printing (^SLT or ^ seconds the
SL60
). To control time with increments other than sixty
^SL
command can be used with a numeric value (^SL30).
^SLS can keep times longer than sixty seconds.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
312
ZPL Commands
^SN
^SN
Serialization Data
Description The
^SN
command allows the printer to index data fields by a selected increment or decrement value, making the data fields increase or decrease by a specified value each time a label is printed. This can be performed on 100 to 150 fields in a given format and can be performed on both alphanumeric and bar code fields. A maximum of 12 of the rightmost integers are subject to indexing. The first integer found when scanning from the end of the backing store towards the beginning starts the indexing portion of the data field.
If the backing store of the alphanumeric field to be indexed ends with an alpha character, the data is scanned, character by character, from the end of the backing store until a numeric character is encountered. Serialization takes place using the value of the first number found.
Format ^SNv,n,z
This table identifies the parameters for this format:
Parameters
v
= starting value n
= increment or decrement value z = add leading zeros (if needed)
Details
Accepted Values: 12-digits maximum for the portion to be indexed
Default Value: 1
Accepted Values: 12-digit maximum
Default Value:
1
To indicate a decrement value, precede the value with a minus (–) sign.
Accepted Values:
N = no
Y = yes
Default Value:
N
Example •
This example shows incrementing by a specified value:
ZPL II CODE GENERATED LABELS
^XA
^FO260,110
^CFG
^SN001,1,Y^FS
^PQ3
^XZ
Note: The ZPL II code above will generate three separate labels, seen to the right.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^SN
313
Comments Incrementing and decrementing takes place for each serial-numbered field when all replicates for each serial number have been printed, as specified in parameter r of the
^PQ (print quality) command.
If, during the course of printing serialized labels, the printer runs out of either paper or ribbon, the first label printed (after the media or ribbon has been replaced and calibration completed) has the same serial number as the partial label printed before the out condition occurred. This is done in case the last label before the out condition did not fully print. This is controlled by the ^JZ command.
Using Leading Zeros
In the ^SN command, the z parameter determines if leading zeros are printed or suppressed.
Depending on which value is used ( Y = print leading zeros; N = do not print leading zeros), the printer either prints or suppresses the leading zeros.
The default value for this parameter is N (do not print leading zeros).
Print Leading Zeros
The starting value consists of the first number working backwards in the backing store consecutive sequence of digits. The width (number of digits in the sequence) is determined by scanning from right to left until the first non-digit (space or alpha character) is encountered. To create a specific width, manually place leading zeros as necessary.
Suppressing Leading Zeros
The starting value consists of the first number working backwards in the backing store consecutive sequence of digits, including any leading spaces. The width (number of digits in the sequence) is determined by scanning from right to left until the first alpha character (except a space) is encountered. To create a specific width, manually place leading spaces or zeros as necessary. Suppressed zeros are replaced by spaces. During the serialization process, when the entire number contains all zeros, the last zero is not suppressed.
The
^SN
command replaces the Field Data (
^FD
) command within a label formatting program.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
314
ZPL Commands
^SO
^SO
Set Offset (for Real-Time Clock)
Description The
^SO
command is used to set the secondary and the tertiary offset from the primary Real-Time Clock.
Note •
For each label only one SO2 command can be used. If more than one offset is required, SO3 must be used.
Format ^SOa,b,c,d,e,f,g
This table identifies the parameters for this format:
Parameters
a
= clock set b c d e f g
= months offset
= days offset
= years offset
= hours offset
= minutes offset
= seconds offset
Details
Accepted Values:
2 = secondary
3 = third
Default Value: value must be specified
Accepted Values:
–32000 to 32000
Default Value:
0
Accepted Values:
–32000 to 32000
Default Value: 0
Accepted Values:
–32000 to 32000
Default Value:
0
Accepted Values: –32000 to 32000
Default Value: 0
Accepted Values:
–32000 to 32000
Default Value:
0
Accepted Values:
–32000 to 32000
Default Value:
0
For more detail on set offset, see
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^SP
315
^SP
Start Print
Description The
^SP
command allows a label to start printing at a specified point before the entire label has been completely formatted. On extremely complex labels, this command can increase the overall throughput of the print.
The command works as follows: Specify the dot row at which the ^SP command is to begin.
This creates a label segment. Once the
^SP
command is processed, all information in that segment prints. During the printing process, all of the commands after the ^SP continue to be received and processed by the printer.
If the segment after the ^SP command (or the remainder of the label) is ready for printing, media motion does not stop. If the next segment is not ready, the printer stops mid-label and wait for the next segment to be completed. Precise positioning of the ^SP command requires a trial-and-error process, as it depends primarily on print speed and label complexity.
The ^SP command can be effectively used to determine the worst possible print quality. You can determine whether using the
^SP
command is appropriate for the particular application by using this procedure.
If you send the label format up to the first ^SP command and then wait for printing to stop before sending the next segment, the printed label is a sample of the worst possible print quality. It drops any field that is out of order.
If the procedure above is used, the end of the label format must be:
^SP#^FS
Comments ^SPa
This table identifies the parameters for this format:
Parameters
a
= dot row to start printing
Details
Accepted Values:
0
to
32000
Default Value: 0
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
316
ZPL Commands
^SP
Example •
In this example, a label 800 dot rows in length uses ^SP500 . Segment 1 prints while commands in Segment 2 are being received and formatted.
Dot position 0
Label Segment 2
Dot position 500
Label Segment 1
Dot position 800
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
^SQ
Halt ZebraNet Alert
Description The
^SQ
command is used to stop the ZebraNet Alert option.
Format ^SQa,b,c
This table identifies the parameters for this format:
ZPL Commands
^SQ
317
Parameters
a
= condition type
Details
Accepted Values:
A = paper out
B = ribbon out
C = printhead over-temp
D = printhead under-temp
E = head open
F = power supply over-temp
G = ribbon-in warning (Direct Thermal Mode)
H = rewind full
I = cut error
J = printer paused
K = PQ job completed
L = label ready
M = head element out
N = reserved
O = reserved
P = power on
Q = clean printhead
R = media low
S = ribbon low
T = replace head
U = battery low
V = RFID error (in RFID printers only)
W = all errors (in RFID printers only)
* = all errors (in non-RFID printers)
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
318
ZPL Commands
^SQ
Parameters
b
= destination c
= halt messages
Details
Accepted Values:
A = serial port
B
= parallel port
C
= e-mail address
D
= TCP/IP
E = UDP/IP
F
= SNMP trap
*
= wild card to stop alerts for all destinations
Accepted Values:
Y = halt messages
N = start messages
Default Value: Y
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
^SR
Set Printhead Resistance
Description The
^SR
command allows you to set the printhead resistance.
Format ^SR####
This table identifies the parameters for this format:
ZPL Commands
^SR
319
Parameters
####
= resistance value
(four-digit numeric value)
Details
Accepted Value: 0488 to 1175
Default Value: last permanently saved value
Comments To avoid damaging the printhead, this value should be less than or equal to the value shown on the printhead being used. Setting a higher value could damage the printhead.
Note •
New printer models automatically set head resistance.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
320
ZPL Commands
^SS
^SS
Set Media Sensors
Description The
^SS
command is used to change the values for media, web, ribbon, and label length set during the media calibration process. The media calibration process is described in your specific printer’s user’s guide.
Format ^SSw,m,r,l,m2,r2,a,b,c
This table identifies the parameters for this format:
Parameters
w
= web (three-digit value) m r
= media (three-digit value)
= ribbon (three-digit value) l
= label length (in dots, four-digit value) m2 = intensity of media
LED (three-digit value) r2
= intensity of ribbon
LED (three-digit value) a
= mark sensing (threedigit value) b = mark media sensing
(three-digit value) c
= mark LED sensing
(three-digit value)
Details
Accepted Values:
000
to
100
Default Value: value shown on the media sensor profile or configuration label
Accepted Values: 000 to 100
Default Value: value shown on the media sensor profile or configuration label
Accepted Values:
000 to 100
Default Value: value shown on the media sensor profile or configuration label
Accepted Values:
0001 to 32000
Default Value: value calculated in the calibration process
Accepted Values:
000 to 100
Default Value: value calculated in the calibration process
Accepted Values:
000 to 100
Default Value: value calculated in the calibration process
Accepted Values:
000 to 100
Default Value: value calculated in the calibration process
Accepted Values: 000 to 100
Default Value: value calculated in the calibration process
Accepted Values:
000 to 100
Default Value: value calculated in the calibration process
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^SS
321
Example •
Below is an example of a media sensor profile. Notice the numbers from 000 to
100 and where the words WEB, MEDIA, and RIBBON appear in relation to those numbers.
Also notice the black vertical spike. This represents where the printer sensed the transition from media-to-web-to-media.
The media and sensor profiles produced vary in appearance from printer to printer.
Comments The m2 and r2 parameters have no effect in Stripe
®
S-300 and S-500 printers.
Maximum values for parameters depend on which printer platform is being used.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
322
ZPL Commands
^ST
^ST
Set Date and Time (for Real-Time Clock)
Description The
^ST
command sets the date and time of the Real-Time Clock.
Format
^STa,b,c,d,e,f,g
This table identifies the parameters for this format:
Parameters
a
= month b c d e f g
= day
= year
= hour
= minute
= second
= format
Details
Accepted Values: 01 to 12
Default Value: current month
Accepted Values:
01
to
31
Default Value: current day
Accepted Values:
1998 to 2097
Default Value: current year
Accepted Values:
00
to
23
Default Value: current hour
Accepted Values: 00 to 59
Default Value: current minute
Accepted Values:
00
to
59
Default Value: current second
Accepted Values:
A
= a.m.
P
= p.m.
M
= 24-hour military
Default Value:
M
For more details on set date and time, see Real Time Clock on page 585
.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^SX
323
^SX
Set ZebraNet Alert
Description The
^SX
command is used to configure the ZebraNet Alert System.
Format ^SXa,b,c,d,e,f
This table identifies the parameters for this format:
Note •
The values in this table apply to firmware version v48_12_4 or later.
Parameters
a
= condition type
Details
Accepted Values:
A = paper out
B = ribbon out
C = printhead over-temp
D = printhead under-temp
E = head open
F = power supply over-temp
G = ribbon-in warning (Direct Thermal Mode)
H = rewind full
I = cut error
J = printer paused
K = PQ job completed
L = label ready
M = head element out
N = reserved
O = reserved
P = power on
Q = clean printhead
R = media low
S = ribbon low
T = replace head
U = battery low
V =
RFID error (in RFID printers only)
W = all errors (in RFID printers only)
* = all errors (in non-RFID printers)
Default Value: if the parameter is missing or invalid, the command is ignored
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
324
ZPL Commands
^SX
Parameters
b
= destination for route alert c
= enable condition set alert to this destination d
= enable condition e f clear alert to this destination
= destination setting
= port number
Details
Accepted Values:
A = serial port
B*
= parallel port
C
= e-mail address
D
= TCP/IP
E = UDP/IP
F
= SNMP trap
Default Value: if this parameter is missing or invalid, the command is ignored
* Requires bidirectional communication.
Accepted Values:
N = no
Y = yes
Default Value:
Y or previously configured value
Accepted Values:
N = no
Y = yes
Default Value: N or previously configured value
Parameters e
and f
are sub-options based on destination. If the sub-options are missing or invalid, these parameters are ignored.
Accepted Values:
Internet e-mail address (e.g. [email protected])
IP address (for example, 10.1.2.123)
SNMP trap
IP or IPX addresses
Accepted Values:
TCP port # ( 0 to 65535 )
UPD port # ( 0 to 65535 )
Example •
This is an example of the different (b) destinations that you can send for the condition type (a):
Serial: ^SXA,A,Y,Y
Parallel: ^SXA,B,Y,Y
E-Mail:
^SXA,C,Y,Y,[email protected]
TCP:
^SXA,D,Y,Y,123.45.67.89,1234
UDP: ^SXA,E,Y,Y,123.45.67.89,1234
SNMP Trap: ^SXA,F,Y,Y,255.255.255.255
Comments In the example above for SNMP Trap, entering 255.255.255.255 broadcasts the notification to every SNMP manager on the network. To route the device to a single SNMP manager, enter a specific address (123.45.67.89).
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^SZ
325
^SZ
Set ZPL
Description The
^SZ
command is used to select the programming language used by the printer. This command gives you the ability to print labels formatted in both ZPL and ZPL II.
This command remains active until another ^SZ command is sent to the printer or the printer is turned off.
Format ^SZa
This table identifies the parameters for this format:
Parameters
a
= ZPL version
Details
Accepted Values:
1 = ZPL
2
= ZPL II
Default Value: 2
Comments If the parameter is missing or invalid, the command is ignored.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
326
ZPL Commands
~TA
~TA
Tear-off Adjust Position
Description The
~TA
command lets you adjust the rest position of the media after a label is printed, which changes the position at which the label is torn or cut.
Format ~TA###
Important •
These are some important facts about this command:
•
•
For 600 dpi printers, the step size doubles.
If the number of characters is less than 3, the command is ignored.
This table identifies the parameters for this format:
Parameters
###
= change in media rest position
(3-digit value in dot rows must be used.)
Details
Accepted Values:
–120 to 120
Default Value: last permanent value saved
Comments If the parameter is missing or invalid, the command is ignored.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^TB
327
^TB
Text Blocks
This command is available only for printers with firmware version V60.14.x, V50.14.x, or later.
Description The ^TB command prints a text block with defined width and height. The text block has an automatic word-wrap function. If the text exceeds the block height, the text is truncated. This command supports complex text layout features.
Note •
^TB is the preferred command for printing fields or blocks of text, instead of ^FB.
Format ^TBa,b,c
This table identifies the parameters for this format:
Parameters Details
a = block rotation b = block width in dots
Accepted Values:
N = normal
R = rotate 90 degrees clockwise
I = invert 180 degrees
B = read from bottom up-270 degrees
Default Value: whatever was specified by the last ^A (which has the default of ^FW)
Accepted Values:
1 to the width of the label in dots
Default Value: 1 dot c = block height in dots
Accepted Values:
1 to the length of the label in dots
Default Value: 1 dot
Comments Facts about the ^TB command:
• Justification of ^TB command comes from ^FO, ^FT, or ^FN command. If no justification is determined then the default is auto justification.
• Data between < and > is processed as an escape sequence. This is a list of defined escape sequences: <<> prints <.
• The ^TB command has an automatic word-wrap function. Soft hyphens do not print and are not used as a line break position.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
328
ZPL Commands
^TO
^TO
Transfer Object
Description The
^TO
command is used to copy an object or group of objects from one storage device to another. It is similar to the copy function used in PCs.
Source and destination devices must be supplied and must be different and valid for the action specified. Invalid parameters cause the command to be ignored.
The asterisk (*) can be used as a wild card for object names and extensions. For instance,
ZEBRA.* or *.GRF are acceptable forms for use with the
^TO command.
At least one source parameter ( d , o , or x ) and one destination parameter ( s , o , or x ) must be specified. If only ^TO is entered, the command is ignored.
Format ^TOs:o.x,d:o.x
This table identifies the parameters for this format:
Parameters Details
s
= source device of stored object
Accepted Values:
R: , E: , B: , and A:
Default Value: if a drive is not specified, all objects are transferred to the drive set in parameter s o = stored object name
Accepted Values: any existing object conforming to Zebra conventions
Default Value: if a name is not specified, * is used — all objects are selected x d o x
= extension
= destination device of the stored object
= name of the object at destination
= extension
Accepted Values: any extension conforming to Zebra conventions
Default Value: if an extension is not specified, * is used — all extensions are selected
Accepted Values:
R:
,
E:
,
B:
, and
A:
Default Value: a destination must be specified
Accepted Values: up to 8 alphanumeric characters
Default Value: if a name is not specified, the name of the existing object is used
Accepted Values: any extension conforming to Zebra conventions
Default Value: if an extension is not specified, the extension of the existing object is used
Comments Parameters o , x , and s support the use of the wild card (*).
If the destination device does not have enough free space to store the object being copied, the command is canceled.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^TO
329
Zebra files (
Z:*.*
) cannot be transferred. These files are copyrighted by
Zebra Technologies.
Transferring Objects
These are some examples of using the
^TO
command.
Example •
To copy the object and rename it
ZLOGO.GRF
from DRAM to an optional Memory Card
ZLOGO1.GRF
, write the following format:
^XA
^TOR:ZLOGO.GRF,B:ZLOGO1.GRF
^XZ
Example •
To copy the object
SAMPLE.GRF
from an optional Memory Card to DRAM and keep the same name, write this format:
^
XA
^TOB:SAMPLE.GRF,R:SAMPLE.GRF
^XZ
Transferring Multiple Objects
The asterisk ( * ) can be used to transfer multiple object files (except *.FNT
) from DRAM to the Memory Card. For example, assume you have several object files that contain logos. These files are named LOGO1.GRF
, LOGO2.GRF
, and LOGO3.GRF
.
To transfer all these files to the memory card using the name NEW instead of LOGO, place an asterisk after the names NEW and LOGO in the transfer command. This copies all files beginning with LOGO in one command.
^XA
^TOR:LOGO*.GRF,B:NEW*.GRF
^XZ
During a multiple transfer, if a file is too big to be stored on the memory card, that file is skipped. All remaining files attempt to be transferred. All files that can be stored within the space limitations are transferred, while other files are ignored.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
330
ZPL Commands
~WC
~WC
Print Configuration Label
Description The
~WC
command is used to generate a printer configuration label. The printer configuration label contains information about the printer setup, such as sensor type, network ID, ZPL mode, firmware version, and descriptive data on the R: , E: , B: , and A: devices.
Format ~WC
Comments This command works only when the printer is idle.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^WD
331
^WD
Print Directory Label
Description The
^WD
command is used to print a label listing bar codes, objects stored in
DRAM, or fonts.
For bar codes, the list shows the name of the bar code. For fonts, the list shows the name of the font, the number to use with ^A command, and size. For objects stored in DRAM, the list shows the name of the object, extension, size, and option flags. All lists are enclosed in a double-line box.
Format ~WDd:o.x
This table identifies the parameters for this format:
Parameters
d = source device — optional o
= object name — optional x
= extension — optional
.TTF and .TTE are only supported in firmware version V60.14.x,
V50.14.x, or later.
Details
Accepted Values:
R: , E: , B: , A: and Z:
Default Value: R:
Accepted Values: 1 to 8 alphanumeric characters
Default Value: *
The use of a ?
(question mark) is also allowed.
Accepted Values: any extension conforming to Zebra conventions
.FNT
= font
.BAR
= bar code
.ZPL = stored ZPL format
.GRF
= GRF graphic
.CO
= memory cache
.DAT
= font encoding
.STO = data storage
.PNG
= PNG graphic
* = all objects
.TTF = TrueType Font
.TTE = True Type Extension
Default Value:
*
The use of a
?
(question mark) is also allowed.
Example •
To print a label listing all objects in DRAM, enter:
^XA
^WDR:*.*
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
332
ZPL Commands
^WD
Example •
To print a label listing all resident bar codes, enter:
^XA
^WDZ:*.BAR
^XZ
Example •
To print a label listing all resident fonts, enter:
^XA
^WDZ:*.FNT
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
~WQ
333
~WQ
Write Query
Description The
~WQ
command triggers the printer to print a label with odometer, maintenance or alert, and printhead history information. This command is only supported on
Zebra ZM400/ZM600™ and S4M™ printers.
Format ~WQquery-type
This table identifies the parameters for this format:
Parameter
query-type
Details
Accepted Values:
OD = odometer
MA = maintenance alert settings
PH = printhead life history
MI = maintenance information
Default Value: must be an accepted value or the command is ignored
Example •
This is an example of how to use the odometer query for the ~WQ command. Note that the units of measure are controlled by the ^MA command.
1.
To get the current settings, type ~WQOD:
A label similar to this prints out:
2.
3.
The units of measure are set to inches.
To change the units of measure to centimeters, type:
^XA^MA,,,,C
^XZ
The units of measure are set to centimeters.
To check the settings, type ~WQOD.
A label similar to this prints out:
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
334
ZPL Commands
~WQ
Example •
This is an example of how to use the maintenance alert query for the ~WQ command.
1.
To get the current settings, type ~WQMA:
A label similar to this prints out:
Example •
This is an example of how to use the printhead life query for the ~WQ command.
Note that the units of measure are controlled by the ^MA command.
1.
To get the current settings, type ~WQPH:
A label similar to this prints out:
1
2
1
2
The current life of the print head.
Line items 2 through 10 (the example only shows 2 through
3) tracks the measurement for each time the print head is changed.
Example •
This is an example of how to use the maintenance information query for the ~WQ command. Note that the message is controlled by the ^MI command.
1.
To get the current settings, type ~WQMI:
A label similar to this prints out:
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^XA
335
^XA
Start Format
Description The
^XA
command is used at the beginning of ZPL II code. It is the opening bracket and indicates the start of a new label format. This command is substituted with a single
ASCII control character STX.
Format ^XA
Comments Valid ZPL II format requires that label formats should start with the
^XA command and end with the ^XZ command.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
336
ZPL Commands
^XB
^XB
Suppress Backfeed
Description The
^XB
command suppresses forward feed of media to tear-off position depending on the current printer mode. Because no forward feed occurs, a backfeed before printing of the next label is not necessary; this improves throughput. When printing a batch of labels, the last label should not contain this command.
Format ^XB
^XB in the Tear-off Mode
Normal Operation: backfeed, print, and feed to rest
^XB
Operation: print (Rewind Mode)
^XB in Peel-off Mode
Normal Operation: backfeed, print, and feed to rest
^XB
Operation: print (Rewind Mode)
Note •
To prevent jamming in cutter mode, ^XB suppresses backfeed and cutting.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^XF
337
^XF
Recall Format
Description The
^XF
command recalls a stored format to be merged with variable data.
There can be multiple ^XF commands in one format, and they can be located anywhere within the code.
When recalling a stored format and merging data using the ^FN (Field Number) function, the calling format must contain the
^FN
command to merge the data properly.
While using stored formats reduces transmission time, no formatting time is saved. The ZPL II format being recalled is saved as text strings that need to be formatted at print time.
Format ^XFd:o.x
This table identifies the parameters for this format:
Parameters Details
d
= source device of stored image
Accepted Values:
R:
,
E:
,
B:
, and
A:
Default Value: search priority ( R: , E: , B: , and A: ) o
= name of stored image Accepted Values: 1 to 8 alphanumeric characters
Default Value: if a name is not specified, UNKNOWN is used x
= extension l
Fixed Value:
.ZPL
For a complete example of the ^DF and ^XF command, see
format and recall format on page 37 .
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
338
ZPL Commands
^XG
^XG
Recall Graphic
Description The
^XG
command is used to recall one or more graphic images for printing.
This command is used in a label format to merge graphics, such as company logos and piece parts, with text data to form a complete label.
An image can be recalled and resized as many times as needed in each format. Other images and data might be added to the format.
Format ^XGd:o.x,mx,my
This table identifies the parameters for this format:
Parameters Details
d
= source device of stored image
Accepted Values: R: , E: , B: , and A:
Default Value: search priority ( R: , E: , B: , and A: ) o
= name of stored image Accepted Values:
1
to
8
alphanumeric characters
Default Value: if a name is not specified, UNKNOWN is used
Fixed Value: .GRF
x
= extension l mx = magnification factor on the x-axis my
= magnification factor on the y-axis
Accepted Values:
Default Value: 1
1 to 10
Accepted Values:
1 to 10
Default Value:
1
Example •
This is an example of using the the same label:
^XG
command to recall the image
SAMPLE.GRF
from DRAM and print it in five different sizes in five different locations on
^XA
^FO100,100^XGR:SAMPLE.GRF,1,1^FS
^FO100,200^XGR:SAMPLE.GRF,2,2^FS
^FO100,300^XGR:SAMPLE.GRF,3,3^FS
^FO100,400^XGR:SAMPLE.GRF,4,4^FS
^FO100,500^XGR:SAMPLE.GRF,5,5^FS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Commands
^XZ
339
^XZ
End Format
Description The
^XZ
command is the ending (closing) bracket. It indicates the end of a label format. When this command is received, a label prints. This command can also be issued as a single ASCII control character ETX.
Format ^XZ
Comments Label formats must start with the
^XA
command and end with the
^XZ command to be in valid ZPL II format.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
340
ZPL Commands
^ZZ
^ZZ
Printer Sleep
Description The
^ZZ
command places the printer in an idle or shutdown mode.
Format ^ZZt,b
This table identifies the parameters for this format:
Parameters
t
= number of second
(idle time) prior to shutdown b
= label status at shutdown
Details
Accepted Values: 0 to 999999 – setting 0 disables automatic shutdown
Default Value: last permanently saved value or 0
Accepted Values:
Y = indicates to shutdown when labels are still queued
N
= indicates all labels must be printed before shutting down
Default Value: N
Comments The ^ZZ command is only valid on the PA400 and PT400 battery-powered printers.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
3
ZPL RFID Commands
This section contains the ZPL II commands for RFID-specific applications.
For more information about the RFID commands, refer to the RFID Programming Guide. A copy is available on the User CD provided with your printer and online at http://www.zebra.com/manuals .
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
342
ZPL RFID Commands
RFID Command Overview
RFID Command Overview
In addition to reading or encoding RFID tags, the RFID ZPL commands also provide for RFID exception handling, such as setting the number of read/write retries before declaring a transponder defective (set with ^RR , ^RT , and ^WT ) or setting the number of labels that will be attempted if an error occurs (set with ^RS ).
For example, if an RFID label fails to program correctly or if the transponder cannot be detected, the printer ejects the label and prints VOID across it. The printer will try to print another label with the same data and format for the number of RFID labels specified by the
^RS command. If the problem persists, the printer follows the error handling instructions specified by the
^RS
command: the printer may remove the problematic format from the print queue and proceed with the next format (if one exists in the buffer), or it may place the printer in Pause or Error mode.
•
•
Important •
Consider the following before using any command in this section:
Before using a particular command, verify that it is compatible with your printer and
firmware version. See Table 14 on page 343 .
If a parameter in the following tables is designated as not applicable for a particular printer, any value entered for the parameter will be ignored, but the place holder for the field is required.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
R4Mplus
Xi HF R110
R2844-Z
X
SP1082 all all
X
SP1027
SP1056X
999X SP
4
PAX
R110
X
R62.13.
Xi
Xi and R170
R110
X
R60.13.
994X SP
920X SP
X
R63.13.
ZPL RFID Commands
Printer and Firmware Compatibility
343
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
344
ZPL RFID Commands
Printer and Firmware Compatibility
R2844-Z all
Xi HF R110 all
1082X SP
1056X
1027X SP
SP
R4Mplus
999X SP
4
PAX
R110
X
R62.13.
Xi
Xi R110 and R170
X
R60.13.
994X SP
920X SP
X
R63.13.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^HL or ~HL
345
^HL or ~HL
Return RFID Data Log to Host
Description The printer continually logs RFID data and stores it in the printer’s RAM. Use this command to request that the RFID data log be returned to the host computer, to clear the current data log, and to restart data recording. The data returned show the status of the RFID read, write, and lock commands and show any resulting error codes.
Format ^HL or ~HL
Comments
• Data is shown in the format sent by the ^RFW command (ASCII, Hex, or EPC).
• In the log, the data displays in this manner:
C,EEEE,DDDDDDDDDDDDDDDDDDDDDDDD where
C = the RFID operation (R = read, W = write, L = lock)
EEEE = the RFID error code
DDDDDDDDDDDDDDDDDDDDDDDD = data read or written
• If the log exceeds 64K (approximately 2000 operations), the data log is cleared automatically, and data recording restarts. When this happens, the following appears in the log:
Logfile automatically reset
• If the printer loses power, the log is lost. If the log results are important to you, retrieve the log frequently.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
346
ZPL RFID Commands
^HR
^HR
Calibrate RFID Transponder Position
Important •
This command is not supported by all printers or firmware. See
Table 14 on page 343 for the list of printers and firmware with which you can use this command.
Description Use this command to initiate an RFID transponder calibration for a specific
RFID label. Results are returned to the host computer. This calibration is used to determine the optimal programming position for RFID media that may not meet the transponder placement specifications for the printer.
Do not perform transponder calibration for RFID media that meets the transponder placement specifications for your printer. Doing so will slow the printer’s throughput unnecessarily. To order media that is designed for use with your RFID printer, contact your authorized Zebra reseller.
During transponder calibration, the printer feeds the RFID label one-dot row at a time while taking readings (via the READ TAG command and the WRITE TAG commands) to profile the
RFID transponder. Based on the results, the printer determines the optimal programming position for the label and returns a results table to the host. The calibrated value is used as the programming position for the ^RS command, can be overwritten by the ^RS command, and is saved to nonvolatile memory (the value is saved even if the power is turned off).
This calibration takes into account the print mode, backfeed mode, and tear off position. The
RUN
option in the
RFID TAG CALIB
control panel parameter performs the same calibration but does not create a results table.
Important •
If a label format specifies a value for parameter transponder) in the p (read/write position of the
^RS
command, that value will be used for the programming position for all RFID labels until a new position is specified or until the printer is turned Off (
O
) and then back On (
I
).
Format ^HRa,b
This table identifies the parameters for this format.
Parameters
a = start string b
= end string
Details
User text to appear before the results table.
Accepted values: any string less than 65 characters
Default value: start
User text to appear after the results table.
Accepted values: any string less than 65 characters
Default value: end
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^HR
347
Comments
• Based on the recommended transponder placement position for most RFID labels, the printer’s default RFID programming position is zero for the R110PAX4. For other RFID printers, the default programming position is the label length minus 1 mm (0.04 in.).
To return to the default programming position at any time, use the RESTORE option in the
RFID TAG CALIB
control panel parameter.
• At the end of calibration, a results table is returned to the host. Each line in the results table appears as:
Row, Read Result, Write Result where
Row = the dot row where calibration occurred
Read Result = results of calibration (R = read, “ ” = unable to read)
Write Result = results of calibration (W = write, “ ” = unable to write)
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
348
ZPL RFID Commands
^HR
Example •
If the following command is sent to the printer:
^XA^HR^XZ
The printer starts the transponder calibration and returns a results table such as the following: start position=195
215, ,
214, ,
213, ,
212, ,
211, ,
210, ,W
209,R,
208, ,
207, ,
206, ,W
205,R,
204, ,
203, ,
202, ,W
201,R,W
200,R,W
199,R,W
198,R,W
197,R,W
196,R,W
195,R,W <---****
194,R,W
193,R,W
192,R,W
191,R,W
190,R,W
189,R,
188, ,
187, ,
186, ,
.
.
185, ,
.
end
In this example, the optimal programming position is 195. This is identified at the top of the table ( position=195 ) and with an the arrow ( <---**** ) in the table.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^RA
349
^RA
Read AFI or DSFID Byte
Important •
This command is not supported by all printers or firmware. See
Table 14 on page 343 for the list of printers and firmware with which you can use this command.
Description Use this command to read the AFI or DSFID byte. The data can be returned to the host via the ^HV command.
Format ^RA#,f,r,m,b
This table identifies the parameters for this format.
Parameters Details
# = field number f specified with another command
= format
The value assigned to this parameter should be the same as the one used in the ^RT command.
Accepted values: 0 to 9999
Default value: 0
Accepted values:
0 = ASCII
1 = Hexadecimal
Default value: 0 r m
= number of retries
= motion
Accepted values: 0 to 10
Default value: 0
Accepted values:
0 =
Feed label after writing.
1 =
No Feed after writing. Other ZPL may cause a feed.
Default value: 0 b = type of byte to read
Accepted values:
A = AFI byte
D = DSFID byte
Default value: A
Example 1 •
This example reads the AFI byte in ASCII format and returns AFI Byte:x to the host. The printer will retry the command five times if necessary. A voided label is generated if the read is unsuccessful after these retries. The data read will go into the ^FN1 location of the recalled format.
^XA
^FO20,120^A0N,60^FN1^FS
^RA1,0,5,0^FS
^HV1,,AFI Byte:^FS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
350
ZPL RFID Commands
^RA
Example 2 •
This example reads the DSFID byte in ASCII format and returns
DSFID Byte:x to the host. The printer will retry the command three times if necessary. A voided label is generated if the read is unsuccessful after these retries. The data read will go into the ^FN1 location of the recalled format.
^XA
^FO20,120^A0N,60^FN1^FS
^RA1,0,3,0,D^FS
^HV1,,DSFID Byte:^FS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^RB
351
^RB
Define EPC Data Structure
Important •
This command is not supported by all printers or firmware. See
Table 14 on page 343 for the list of printers and firmware with which you can use this command.
Description Use this command to define the structure of EPC data, which can be read from or written to an RFID transponder. For more information about EPC specifications, refer to the
EPC Global web site. All parameters in this command are persistent and will be used in subsequent formats if not provided. The values are initially set to the default values.
RFID transponders can have different partitions defined. This command specifies the number of partitions and how many bits are in each partition.
Format ^RBn,p0,p1,p2, ..., p15
This table identifies the parameters for this format.
Parameters
n = total bit size of the partitions p1 ... p15 = partition sizes
Details
Specify the number of bits to include in the partitions.
Accepted values: 1 to n, where n is the bit size of the tag.
Default value: 96
Specify the number of bits to include in the individual partitions. The partition sizes must add up to the bit size specified for the previous parameter. The largest individual partition size is 64 bits.
Accepted values: 1 to 64
Default value: 1
Example 1 •
The following command specifies that there are 96 bits used with three fields.
Fields 1, 2, and 3 contain 10, 26, and 60 bits, respectively.
^RB96,10,26,60
The ZPL code to encode a tag with this format would look like this:
^RFW,E^FD1000.67108000.1122921504606846976^FS
When the tag is being encoded, the tag stores the data in the following way:
• Field 1 contains 1000 . This value is stored in the first 10 bits
• Field 2 contains 67108000 . This value is stored in the next 26 bits.
• Field 3 contains
1122921504606846976
. This value is stored in the remaining
60 bits.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
352
ZPL RFID Commands
^RB
Example 2 •
The following command specifies that there are 64 bits used with eight 8-bit fields.
^RB64,8,8,8,8,8,8,8,8^FS
The ZPL code to encode a tag with this format would look like this:
^RFW,E^FD1.123.160.200.249.6.1.0^FS
When writing to the tag, each set of data is written in its respective 8-bit field.
Example 3 •
This example uses the SGTIN-64 standard, which defines 64-bit structure in the following way:
Header Filter Value
Company
Prefix Index
Item Reference Serial Number
SGTIN-64 2 bits 3 bits 14 bits 20 bits
10
(binary value)
8
(decimal capacity)
16,383
(decimal capacity)
9 to 1,048,575
(decimal capacity*)
* Capacity of Item Reference field varies with the length of the company prefix.
25 bits
33,554,431
(decimal capacity)
The ZPL code to encode a tag with this format would look like this:
•
•
•
•
•
^XA
^RB64,2,3,14,20,25
^RFW,E^FD0,3,12345,544332,22335221^FS
^XZ
These commands would put
0 in the header
3 as the filter value
12345 as the company prefix
544332 as the item reference
22335221 as the serial number
To read this EPC data and print the results on the label, you would use the following code:
^XA
^RB64,2,3,14,20,25
^FO50,50^A0N,40^FN0^FS
^FN0^RFR,E^FS
^XZ
The resulting label would look like this:
0.3.12345.544332.22335221
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^RE
353
^RE
Enable/Disable E.A.S. Bit
Important •
This command is not supported by all printers or firmware. See
Table 14 on page 343 for the list of printers and firmware with which you can use this command.
Description Use this command to enable or disable the Electronic Article Surveillance
(E.A.S.) bit that is available in some ISO15693 tags (such as Philips). This command works only on those ISO15693 transponders and will be ignored if the tag does not support E.A.S.
Format ^REt,r
The following table identifies the parameters for this format.
Parameters
E.A.S. bit in the
ISO15693 transponder r = number of retries
Details
Accepted values:
N = Disable E.A.S.
Y = Enable E.A.S.
Default value: N
Accepted values: 0 to 10
Default value: 0
Example •
This example enables the E.A.S. bit in the transponder. It will retry the command five times if necessary.
^XA
^REy,5
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
354
ZPL RFID Commands
^RF
^RF
Read or Write RFID Format
Description Use this command to read or write to (encode) an RFID tag. When using this command to read a tag, you may use a field variable to print the tag data on the label or to return the data to the host.
Format ^RFo,f,b,n,m
This table identifies the parameters for this format.
Parameters
o = operation f = format b = starting block number
Details
Specifies the action to be performed.
Accepted Values:
W = w rite to (encode) the tag
L = write with LOCK (if supported by tag type; Gen 2 tag type does not use this locking function)
R = read the tag
P = read password (Gen 2 tag type only)
Default Value: W
Accepted Values:
A = ASCII
H =
Hexadecimal
E = EPC (ensure proper setup with the ^RB command)
Default Value: H
For tag types other Gen 2:
Specifies the starting block number.
Accepted Values: 0 to n, where n is the maximum number of blocks for the tag.
•
•
Default Value:
0
For Gen 2 tag type only:
What you specify for this parameter depends on what you entered for the operation parameter.
When W, L, or R are specified for the operation parameter, this parameter specifies a 16-bit word block number.
Accepted Values: 0 to n, where n is the maximum number of blocks for the bank specified in the memory bank parameter
Default Value: 0
When P is specified for the operation parameter, this parameter specifies which password to read.
Accepted Values:
K = kill password
A = access password
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL RFID Commands
^RF
355
Parameters
n = number of bytes to read or write m = memory bank
Details
Specifies the number of bytes to read or write.
For high-frequency (HF) printers:
Accepted Values: 1 to n, where n is the maximum number of bytes for the tag.
Default Value: 1
For Gen 2 tag type only:
When E is specified for the memory bank parameter, this value is not required.
Accepted Values: 1 to n, where n is the maximum number of bytes for the tag.
Default Value: 1
For all other printers and tag types:
This parameter applies only when the starting block number is 1.
Accepted Values: 1 to n, where n is the maximum number of bytes for the tag. For UCODE EPC 1.19, n is 32.
Default Value: 1
Note •
This parameter applies to Gen 2 tags only.
Specifies the Gen 2 memory bank. See the RFID
Programming Guide for more information about Gen 2 memory.
Accepted Values:
E =
EPC 96-bit (command automatically performs operation on Gen 2 bit address 20 h
12 bytes of the EPC memory bank)
and accesses
0 = Reserved
1 = EPC
2 =
TID (Tag ID)
3 = User
Default Value:
E
Example 1 •
This example encodes 96-bit data in ASCII format.
^XA
^RS4
^RFw,a^FD00 my data^FS
^XZ
Example 2 •
This example encodes 64-bit data in hexadecimal format.
^XA
^RS3
^RFW,H^FD1122334455667788^FS
^XZ
ZPL II Programming Guide 13979L-005 Rev. A
356
ZPL RFID Commands
^RF
Example 3 •
This example encodes 96-bit EPC data, as specified by the ^RB command.
^XA
^RB96,8,3,3,20,24,38
^RFw,e^FD16,3,5,78742,146165,1234567891^FS
^XZ
Example 4 •
This example encodes 4 bytes of hexadecimal formatted data, starting in block 3 of Gen 2 EPC bank 1.
^XA
^RS8
^RFW,H,3,4,1^FD11112222^FS
^XZ
Example 5 •
This example reads the extended Gen 2 tag ID (TID), which is not read by the
^RI command, and returns the results to the host computer. The results are labeled with the header “8-byte Tag ID Data.”
^XA
^RS8
^RFR,H,0,8,2^FN1^FS^HV1,,8-byte Tag ID Data:^FS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^RI
357
^RI
Get RFID Tag ID
Description Use this command to get the unique serial number of the tag and return it in hexadecimal format. The data can be sent back to the host via the ^HV command.
For Gen 2 tag types, this command will return the 32-bit tag ID (TID) for the tag. If your
Gen 2 tag supports TID data beyond 32 bits, see ^RF on page 354
to access the TID memory bank.
Format ^RI#,s,r,m
This table identifies the parameters for this format.
Parameters
# = number to be assigned to the field s = specify data order
Details
Accepted values: 0 to 9999
Default value: 0
Note •
This parameter applies only to the R110Xi HF and R2844-Z printers.
r m
= number of retries
= motion
Accepted values:
Accepted Values:
0 = Most significant byte first for Tag*It and PicoTag.
Least significant byte first for I*code and
ISO15693.
1 = Reverse the data order
Default value: 0
Accepted values: 0 to 10
Default value: 0
Accepted values:
0 =
Feed label after writing
1 =
No Feed after writing (other ZPL commands may cause a feed)
Default value: 0
Example •
This example reads a tag ID, prints it on a label, and sends string
Tag ID:xxxxxxxx to the host. The data read will go into the ^FN0 location of the format. The printer will retry the command five times, if necessary.
^XA
^FO20,120^A0N,60^FN0^FS
^RI0,,5^FS
^HV0,,Tag ID:^FS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
358
ZPL RFID Commands
^RM
^RM
Enable RFID Motion
Important •
This command is not supported by all printers or firmware. See
Table 14 on page 343 for the list of printers and firmware with which you can use this command.
Description Use this command to enable or disable RFID motion. By default, labels automatically print at the end of the format. This command allows you to inhibit the label from actually moving when it reaches the program position, which is useful for debugging, setup, and custom applications. This parameter is not persistent (carried over from label to label).
Format ^RMe
This table identifies the parameters for this format.
Parameters
e
= enable
Details
Accepted values:
Y = Yes, move the label
N = No, do not move the label
Default value: Y
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^RN
359
^RN
Detect Multiple RFID Tags in Encoding Field
Important •
This command is not supported by all printers or firmware. See
Table 14 on page 343 for the list of printers and firmware with which you can use this command.
Description Use this command to enable or disable detection of multiple RFID tags in the encoding field. By default, the printer checks for more than one tag in the field before attempting to read or write. If more than one tag is found, the label over the antenna support is voided, and the
RFID ERR STATUS
parameter on the control panel displays
MULTIPLE TAGS
. To speed up printing and encoding by up to 200 ms, the check may be disabled. This parameter is persistent (carried over from label to label).
Format ^RNe
The following table identifies the parameters for this format.
Parameters
e = enable
Details
Accepted Values:
Y = Yes, check for multiple tags
N =
No, do not check for multiple tags
Default Value: Y
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
360
ZPL RFID Commands
~RO
~RO
Reset Advanced Counters
Important •
This command is not supported by all printers or firmware. See
Table 14 on page 343 for the list of printers and firmware with which you can use this command.
Description Use this command to reset the advanced counters used by the printer to monitor label generation in inches and centimeters, the number of labels printed, and the number of valid and voided RFID labels. Any single error during programming of an RFID tag will result in that label being considered “void” by the counter.
Four resettable counters are available. The values for the counters are displayed on the printer configuration label.
Note •
For the R4Mplus, the counter values are not saved, so power cycling the printer resets all counters to zero.
Format ~ROc
This table identifies the parameters for this format:
Parameters
c
= counter to reset
Details
Accepted Values:
1 = counter 1
2 = counter 2
3 = valid RFID label counter
4 = voided RFID label counter
Default Value: None. If a value is not specified, the command is ignored.
Example 1 •
This example shows how the counter portion of the printer configuration labels looks when counter 1 is reset by sending ~RO1 .
Before
After
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
~RO
361
Example 2 •
This example shows how the counter portion of the printer configuration labels looks when the RFID counters are reset by sending ~RO3 and ~RO4 .
Before
After
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
362
ZPL RFID Commands
^RR
^RR
Specify RFID Retries for a Block
Important •
This command is not supported by all printers or firmware. See
Table 14 on page 343 for the list of printers and firmware with which you can use this command.
Description Use this command to change the number of times that the printer attempts to read or write to a particular block of a single RFID tag. By default, the printer will attempt six retries. This command is persistent and will be used in subsequent formats if not provided.
Note •
This command’s function is different than the “number of labels” parameter in the
^RS command.
Format ^RRn
This table identifies the parameters for this format.
Parameters
n = number of retries
Details
Accepted values:
0
to
10
Default value: 0
Examples •
Set read block retries to 5
^XA
^FN1^RR5^RFR,H^FS
^HV1^FS
^XZ
Set write block retries to 2
^XA
^RR2^RFW,H^FD1234^FS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^RS
363
^RS
Set Up RFID Parameters
Description Use this command to set up RFID parameters including tag type, read/write position of the transponder, and error handling.
Important •
Use care when using this command in combination with ^RT or ^RF for reading tag data. Problems can occur if the data read from the tag is going to be printed on the label. Any data read from the transponder must be positioned to be printed above the read/write position. Failure to do this will prevent read data from being printed on the label.
Format ^RSt,p,v,n,e,a,c,s
This table identifies the parameters for this format.
Parameters
t = tag type
Details
Tells the printer/print engine which tag type you are using. If you specify a tag type that is not supported by your printer or firmware, the printer uses the default value. For the supported tag types and defaults, see
.
UHF Printers
0 = None
1 = EPC Class 0
2 = EPC Class 0 Plus
3 = EPC Class 1 64-bit
4 = EPC Class 1 96-bit
5 = UCODE EPC 1.19
6 = Impinj Class 0 Plus
7 = ISO 18000-06A
8 = EPC Class 1, Generation 2 (Gen 2)
9 = ISO 18000-06B
HF Printers
Note •
Only the R110Xi HF printer (firmware version
R65.X.X) supports the use of letters for this parameter. All other printers use the numbers.
A or 0 = None
B or 1 = Auto detect (query tag to determine)
C or 2 = Tag*It (Texas Instruments Tagit tags)
D or 3 = I*code (Phillips Icode tags)
E or 4 = Pico Tag (Inside Technology’s)
F or 5 = ISO 15693
G or 6 = EPC tag (13.56 MHz)
H or 7 = UID Tag
I or 8 = Mifare UltraLight
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
364
ZPL RFID Commands
^RS
Parameters
p = read/write position of the transponder v n e
= length of void printout
= number of labels
= error handling
Details
Sets the read/write position of the transponder in vertical
(Y axis) dot rows from the top of the label. Set to 0 (no movement) if the transponder is already in the effective area without moving the media.
Important •
If a label format specifies a value for this parameter, this value will be used for the programming position for all labels until a new position is specified or until the printer is turned off (
O
) and then back on
(
I
).
Accepted values: 0 to label length
Default value:
For the R110PAX4 and R2844-Z: 0
For all other supported printers: label length minus
1 mm (1/16 in.)
Sets the length of the void printout in vertical (Y axis) dot rows.
Accepted values: 0 to label length
Default value: label length
The number of labels that will be attempted in case of read/encode failure.
Accepted values: 1 to 10
Default value: 3
If an error persists after the specified number of labels are tried, perform this error handling action.
Accepted values:
N =
No action (printer drops the label format causing the error and moves to the next queued label)
P = Place printer in Pause mode (label format stays in the queue until the user cancels)
E =
Place printer in Error mode (label format stays in the queue until the user cancels)
Default value: N
Note •
You can set the printer to send an error message to the host for each failure. To enable or disable this unsolicited error message, refer to the
^SX
and
^SQ
ZPL commands. Use
V
for the condition type for an RFID error.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^RS
365
Parameters
a = signals on applicator
Details
Note •
This parameter does not apply to the R2844-Z.
For the R4Mplus, this parameter applies only to printers with firmware version SP994X (R4Mplus
European version).
When the value for parameter p (read/write position of the transponder) is nonzero, this parameter changes the number of start and stop print signals required for printing.
In Single mode, one start print command is required. In
Double mode, two are required, so the printer will resume printing only after the second start print command is received.
Accepted values:
S = single signal
D = double signal (For the R110PAX4, Double mode will work only if the read/write position is changed from the default of zero.)
Default value: S
Not applicable.
c = certify tag with a pre-read s = void print speed
Note •
This parameter does not apply to the R2844-Z.
For the R4Mplus, this parameter applies only to printers with firmware version SP994X (R4Mplus
European version).
If a label is voided, the speed at which “VOID” will be printed across the label.
Accepted values: any valid print speed
Default value: the printer’s maximum print speed
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
366
ZPL RFID Commands
^RS
Table 15 shows the tag types supported by different RFID
printers/print engines and firmware versions. Depending on your country or on the firmware version that you are using, your printer may not support all of the tag types listed. If you specify an unsupported tag type in the ^RS command, the printer uses the default value. If a tag type is shown as supported but does not work with your printer, you may need to upgrade the printer’s firmware (see http://www.zebra.com/firmware ).
Table 15 • Supported Tag Types and Default Values
UHF Printers HF Printers
Tag Type
UHF Tag Types and Options
None (no tag type specified)
EPC Class 0
EPC Class 0 Plus
EPC Class 1 64-bit
EPC Class 1 96-bit
UCODE EPC 1.19
Impinj Class 0 Plus
ISO 18000-06A
EPC Class 1, Generation 2 (Gen 2)
ISO 18000-06B
HF Tag Types and Options
Auto-detect the tag type by querying the tag
Tag*It (Texas Instruments Tagit tags)
I*code (Phillips Icode tags)
Pico Tag (Inside Technology’s)
ISO 15693
EPC tag
UID Tag
Mifare UltraLight
# = Default value
*.
Requires R60.13.0.13ZD or later.
*
*
#
—
*
*
*
*
*
*
#
* *
*
—
*
*
*
*
*
*
—
—
#
#
—
—
—
*
—
—
—
#
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
*
*
#
*
*
—
—
—
*
—
—
—
—
—
—
—
—
—
—
—
*
—
—
—
—
—
—
#
—
—
—
—
—
—
—
—
—
—
—
#
—
—
*
—
—
—
—
—
—
—
—
—
—
—
—
—
—
*
*
*
*
#
*
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^RS
367
Example 1 •
This example sets the printer to move the media to 800 dots from the top of the media [or label length minus 800 from the bottom (leading edge) of the media] and voids the rest of the media in case of an error. The printer will try to print two labels and then will pause if printing and encoding fail.
^XA
^RS,800,,2,P^FS
^XZ
Figure 3 shows the resulting voided label. Note where the void starts. The media has been
moved 800 dot rows from the top of the label (label length minus 800 dot rows from the bottom (leading edge) of a label) to bring the transponder into the effective area to read/write a tag. If the printer fails the operation, the rest of the media is voided.
Figure 3 • Sample Void Label, Remainder of Label Voided
Top of label
800 dot rows
Start of RFID operation
Label length minus
800 dot rows
Bottom of label
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
368
ZPL RFID Commands
^RS
Example 2 •
This example sets the printer to move the media to 800 dots from the top of the media [or label length - 500 from the bottom (leading edge) of the media] and prints “VOID”
500 dots in vertical length (Y axis) in case of an error.
^XA
^RS,800,500,2,P^FS
^XZ
Figure 4 shows the resulting voided label. Note where the void starts. The media has been
moved 800 dot rows from the top of the label [label length minus 800 dot rows from the bottom (leading edge) of a label] to bring the transponder into the effective area to read/write a tag. If the printer fails the operation, an area that is 500 dot rows of the media is voided instead of the entire rest of the media.
Figure 4 • Sample Void Label, 500 Dot Row Area Voided
Top of label
800 dot rows
500 dot rows
Start of RFID operation
Label length minus
800 dot rows
Bottom of label
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^RT
369
^RT
Read RFID Tag
Note •
The ^RT command is provided only for backward-compatibility with label formats
that were developed for older Zebra RFID printers. See Table 14 on page 343 for the list of
printers and firmware with which you should not use this command.
Description Use this command to tell the printer to read the current RFID tag data. The data can be returned to the host via the ^HV command.
Format ^RT#,b,n,f,r,m,s
This table identifies the parameters for this format.
Parameters
# = number to be assigned to the field b = starting block number n = number of blocks/bytes to read f = format
Details
Accepted values: 0 to 9999
Default value: 0
Accepted values: 0 to n, where n is the maximum number of blocks for the tag.
Default value: 0
Note •
This parameter does NOT apply to R4Mplus printers with firmware version SP920X (R4Mplus
U.S. version).
For R4Mplus printers with firmware version SP994X
(European version):
This parameter applies only when the starting block number
(parameter b) is 1.
Accepted values: 1 to n, where n is the maximum number of bytes for the tag. For UCODE EPC 1.19, n is 32.
Default value: 1
For all other supported printers:
Accepted values: 1 to n, where n is the maximum number of blocks for the tag type minus the starting block number. For example, if the tag has 8 blocks (starting with block 0) and you start with block 6, n can be 2. This would return block 6 and block 7 information.
Default value: 1
Accepted values:
0 = ASCII
1 =
Hexadecimal
Default value: 0
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
370
ZPL RFID Commands
^RT
Parameters
r = number of retries m s
= motion
= special mode
Details
Changes the number of times that the printer attempts to read a particular block of a single RFID tag. (Same retry rules as the ^RR command.)
Accepted values: 0 to 10
Default value: 0
Enables or disables RFID motion for the current field.
Accepted values:
0 = Feed label after writing.
1 = No feed after writing. Other ZPL may cause a feed.
Default value: 0
Note •
This parameter is used only for the printers referenced here.
For R4Mplus printers with firmware version SP920X
(U.S. version):
Specify actions for mismatched checksums. For EPC Class 1
(Alien reader) only. Not applicable for EPC class 0.
Default value: 0
Accepted values:
0 = Do not read if mismatched checksum
1 = Read even if mismatched checksum
For R110Xi HF and R2844-Z printers:
Specify data order.
Default value: 0
Accepted values:
0 = least significant byte first
1 = most significant byte first
Example 1 •
This example reads a tag, prints the data on a label, and sends the string
Tag Data:
xxxxxxxx back to the host. The data read will go into the
^FN1 location of the format. The printer will retry the command five times, if necessary.
^XA
^FO20,120^A0N,60^FN1^FS
^RT1,,,,5^FS
^HV1,,Tag Data:^FS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^RT
371
Example 2 •
This example reads from a tag twice and prints the results on a label.
^XA
^FO20,120^A0N,60^FN1^FS
^FO20,100^A0N,20^FN2^FS
^RT1,7,3,,5^FS
^RT2,3,2,,5^FS
^XZ
The first ^RT command starts at block 7 and reads three blocks of data in ASCII format. The data read will go into the
^FN1
location of the format. The printer will retry the command five times, if necessary.
The second ^RT command starts at block 2 and reads two blocks of data in ASCII format.
The data read will go into the ^FN2 command five times, if necessary.
location of the format. The printer will retry the
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
372
ZPL RFID Commands
~RV
~RV
Report RFID Encoding Results
Important •
This command is not supported by all printers or firmware. See
Table 14 on page 343 for the list of printers and firmware with which you can use this command.
Description Use this command to tell the printer to send RFID encoding success or failure results to the host computer after each label format completes.
Format ~RVa
This table identifies the parameters for this format:
Parameters
a = enable/disable
Details
Enables or disables the results reporting feature.
Accepted Values:
E = Enable
D = Disable
Default Value: E
Example 1 •
Assume that the following code is sent and that there is no RFID tag in the field.
~RVE
^XA
^RS8,0,,3
^RMY
^RFR,H
^XZ
The printer attempts to program a tag three times and then returns the following to the host:
_-,3_
The minus sign indicates that the programming attempt failed entirely and voided three labels.
Example 2 •
Assume that the same code is sent and that the first two attempts at programming a tag are unsuccessful. The third attempt succeeds.
~RVE
^XA
^RS8,0,,3
^RMY
^RFR,H
^XZ
The printer attempts to program a tag three times and then returns the following to the host:
_+,2_
The plus sign indicates that the programming attempt was successful and voided two labels.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^RW
373
^RW
Set RFID Read and Write Power Levels
Important •
This command is not supported by all printers or firmware. See
Table 14 on page 343 for the list of printers and firmware with which you can use this command.
Description Use this command to set the read and write power levels. This function is useful when using different tag types or transponders that require different power levels to obtain the best read and write abilities. If not enough power is applied, the transponder may not have sufficient power for programming, and tag data will fail to encode. If too much power is applied, the extra power may disable the tag may or cause data communication errors.
Format ^RWr,w
This table identifies the parameters for this format:
Parameters
r = read power
Details
Sets the power level to match the desired output as calibrated in the factory.
Accepted Values:
H = high
M = medium
L = low
Default Value: H
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
374
ZPL RFID Commands
^RW
Parameters
w = write power a = RFID antenna selection
Details
Note •
This parameter is ignored on the R110Xi HF printer because read and write powers cannot be specified separately. The printer uses the value that you specified for read power for both the read and write power settings.
Sets the power level to match the desired output as calibrated in the factory.
Accepted Values:
H = high
M = medium
L = low
Default Value: H
Note •
This parameter applies only to the R110Xi HF printer.
Selects the antenna port that provides the best results for reading and writing.
Accepted Values:
1 = antenna port 1
2 = antenna port 2
Default Value: 1
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^RZ
375
^RZ
Set RFID Tag Password and Lock Tag
Description Use this command to define a password for a tag during writing.
With Gen 2 tags, you can lock a tag’s memory bank with an access password or define a kill password that can be used to permanently disable the tag. If you do not set access or kill passwords for a tag, the tag ignores any read or write commands that try to use these functions.
Note •
The printer can set a kill password, but the printer cannot kill a tag.
Format ^RZp,m,l
The following table identifies the parameters for this format.
Parameters
p
= password m = memory bank
Details
Sets a password.
For tag types other than Gen 2:
The password is 8 bits. The memory bank and lock style parameters are ignored. The password must be 2 hexadecimal characters long.
Accepted Values: 00 to FF (hexadecimal)
Default Value: 00
For Gen 2 tag type only:
Gen 2 tags use a 32-bit password and specify the memory bank and lock style. The password must be 8 hexadecimal
characters long. Use ^RF on page 354 to read the passwords.
Accepted Values: 00000000 to FFFFFFFF (hexadecimal)
Default Value: none
Note •
This parameter applies to Gen 2 tags only.
Accepted Values:
K = kill password
A = access password
E = EPC
T = tag identifier (TID)
U = user
Default Value: none
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
376
ZPL RFID Commands
^RZ
Parameters
l = lock style
Details
Note •
This parameter applies to Gen 2 tags only.
Accepted Values:
U = unlocked
L = locked
O = permanently unlocked (open)
P = permanently locked (protected)
W = write value (used only for the kill password memory bank)
Default Value: none
Example 1 •
On a tag that is not Gen 2, this example encodes 5A as the tag password.
^XA
^RZ5A^FS
^XZ
Example 2 •
On a Gen 2 tag, this example encodes EPC data
112233445566778899001122 to the tag in Hex format, write protects the tag’s EPC data with password 1234ABCD, and leaves the tag’s access password unlocked.
^XA
^RFW,H^FD112233445566778899001122^FS
^RZ1234ABCD,E,L^FS
^XZ
Example 3 •
On a Gen 2 tag, this example encodes EPC data
112233445566778899001122 to the tag in Hex format, write protects the tag’s EPC data with password 1234ABCD, and makes the tag’s access password unreadable.
^XA
^RFW,H^FD112233445566778899001122^FS
^RZ1234ABCD,E,L^FS
^RZ1234ABCD,A,L^FS
^XZ
The following code unprotects EPC data 112233445566778899001122 using the password 1234ABCD, encodes EPC data newdata to the tag in ASCII format, and then write protects the tag’s new EPC data. The access password and its lock state are not changed, so the access password remains unreadable.
^XA
^RZ1234ABCD,E,U^FS
^RFW,A^FDnewdata^FS
^RZ1234ABCD,E,L^FS
^xz
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^RZ
377
Example 4 •
On a Gen 2 tag, this example unlocks the locked access password from the previous example.
^XA
^RZ1234ABCD,A,U^FS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
378
ZPL RFID Commands
^WF
^WF
Encode AFI or DSFID Byte
Important •
This command is not supported by all printers or firmware.
Description Use this command to encode the AFI or DSFID byte to a tag. Error handling is set by the ^RS command.
Format ^WFr,m,w,f,b
The following table identifies the parameters for this format.
Parameters Details
r m w f
= number of retries
= motion
= write protect
= data format
Accepted values: 0 to 10
Default value: 0
Accepted values:
0 = Feed label after writing.
1 = No Feed after writing. Other ZPL may cause a feed.
Default value: 0
Accepted values:
0 = Not write protected
1 = Write protect
Default value: 0
Accepted values:
0 = ASCII
1 = Hexadecimal
Default value: 0 b = type of byte to read Accepted values:
A = AFI byte
D = DSFID byte
Default value: A
Example 1 •
This example encodes data “R” (hex 52) as the AFI byte. The printer will try the command up to five times, if necessary.
^XA
^WF5^FDR
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^WF
379
Example 2 •
This example encodes data hex 66 as the AFI byte. The printer will try the command up to three times, if necessary.
^XA
^WF3,,,1^FD66
^XZ
Example 3 •
This example encodes data hex 77 as the DSFID byte. The printer will try the command up to four times, if necessary.
^XA
^WF4,,,1,D^FD77
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
380
ZPL RFID Commands
^WT
^WT
Write (Encode) Tag
Note •
The ^WT command is provided only for backward-compatibility with label formats that were developed for older Zebra RFID printers.
Description Use this command to encode the current RFID tag. Check the amount of data memory available for the tag that you will be using. If you send more data than the memory can hold, the printer truncates the data.
Format ^WTb,r,m,w,f,v
This table identifies the parameters for this format.
Parameters
b = block number r
= number of retries m = motion w = write protect
Details
Specifies the block number to encode. This parameter is tagdependent.
•
•
For most tags, use block 0.
For EPC Class 0 Plus, block 0 is EPC data, and block 1 is user data.
•
For the R4Mplus, this parameter does not apply to printers with firmware version SP902X. With other versions of firmware in this printer, you can encode 12 bytes (96 bits) to block 0, but you can encode only the first byte of block
1.
Accepted values: 0 to n, where n is the maximum number of blocks for the tag.
Default value: 0
Changes the number of times that the printer attempts to encode a particular block of a single RFID tag. (Same function as the
^RR
command.)
Accepted values: 0 to 10
Default value: 0
Enables or disables RFID motion. (Same function as the ^RM command.)
Accepted values:
0 = Feed label after writing
1 = No feed after writing (other ZPL may cause a feed)
Default value: 0
Accepted values:
0 = Not write protected
1 = Write protected
Default value: 0
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL RFID Commands
^WT
381
Parameters
f = data format
For the R110Xi HF:
v = reverse the data order
For other supported printers:
v
= verify valid data
Details
Accepted values:
0 =
ASCII
1 = Hexadecimal
Default value: 0
This parameter is not used in the R2844-Z.
For the R110Xi HF:
Reverses the data order.
Accepted values:
N = Do not reverse the data order (Most significant byte first for Tag*It and PicoTag. Last significant byte first for I*code and ISO 15693)
Y = Reverse the data order
Default value: N
For other supported printers:
For reliability, some manufacturers encode tags with known data (such as
A5A5
). This parameter flags whether the preprogrammed data is verified. (Same function as the ^WV command.)
Accepted values:
N =
Do not verify
Y =
Verify valid data before writing
Default value: N
Example •
This sample encodes data “RFIDRFID” and will try writing up to five times, if necessary.
^XA
^WT,5^FDRFIDRFID^FS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
382
ZPL RFID Commands
^WV
^WV
Verify RFID Encoding Operation
Important •
This command is not supported by all printers or firmware.
Description Use this command to enable or disable the write verify function. When write verify is enabled, this command verifies the RFID encoding operation to ensure that the tag about to be programmed contains the hex data “A5A5” in the first two bytes. This parameter is not persistent (carried over from label to label).
Format ^WVe
This table identifies the parameters for this format.
Parameters
e
= enable
Details
Accepted values: Y or N
Default value: N
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
4
ZPL Wireless Commands
This section contains new or modified ZPL commands for the Wireless and Wireless Plus print servers.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
384
ZPL Wireless Commands
^KC
^KC
Set Client Identifier (Option 61)
Description The
^KC
command allows the print server to have its own client identifier
(CID).
Format ^KCa,b,c,d
The following table identifies the parameters for this format.
Parameters
a = enable or disable b = device c = prefix (optional) d = identifier
Details
Accepted Values:
0 = disable (default)
1 = enabled, use MAC address
2 = enabled, ASCII value
3 = enabled, HEX value
Default Value: 0
Accepted Values:
0 = all devices
1 = wireless
2 = external wired *
3 = internal wired
Default Value: 1
Accepted Values: 11 ASCII characters or 22 hexadecimal values.
The prefix can be cleared by defaulting the network settings on the printer.
Accepted Values: 60 ASCII characters or 120 hexadecimal values. Minimum field length is 2 bytes.
The suffix can be cleared by defaulting the network settings on the printer.
* This applies only to the Zebra ZM400/ZM600™ printer when it is used with the external ZebraNet 10/100 print server using firmware v1.1.5.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Wireless Commands
^NB
385
^NB
Search for Wired Print Server during Network Boot
Description Use this command to tell the printer whether to search for a wired print server at bootup. This command is ignored on the Zebra ZM400/ZM600™ printer.
Note •
Only one print server can be installed in the S4M at one time, so this check does not occur.
identifies which device becomes the active print server under different conditions.
Table 16 • Results of Check for Wired Print Server
If the Check for Wired Print
Server is set to:
Installed and Connected to a Live Ethernet Network
Wired Wireless*
Then, the Active Print
Server will be:
Skip
Check
X
X
X
X
X
X
X
Wireless
Wired
Wireless
Wired
Wired
X Wireless
* NOTE: A wireless option board must have an active radio that can properly associate to an access point.
Format ^NBa
The following table identifies the parameters for this format.
Parameters
a = check for wired print server at boot time
Details
Accepted Values: C (CHECK), S (SKIP CHECK)
Default Value: S
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
386
ZPL Wireless Commands
^NN
^NN
Set SNMP
Description Use this command to set the Simple Network Management Protocol (SNMP) parameters.
Format ^NNa,b,c,d,e,f
The following table identifies the parameters for this format.
Parameters Details
a b c
= system name
= system contact
= system location
Same as printer name.
Accepted Values: Up to 17 alphanumeric characters
Any contact information as desired (such as a name or phrase)
Accepted Values: Up to 50 alphanumeric characters
The printer’s model information.
Accepted Values: Up to 50 alphanumeric characters d = get community name Accepted Values: Up to 19 alphanumeric characters
Default Value: public e
= set community name Accepted Values: Up to 19 alphanumeric characters
Default Value: public f = trap community name
Accepted Values: Up to 20 alphanumeric characters
Default Value: public
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Wireless Commands
^NP
387
^NP
Set Primary/Secondary Device
Description Use this command to specify whether to use the printer’s or the print server’s
LAN/WLAN settings at boot time. The default is to use the printer’s settings.
• When the printer is set as the primary device, you can set it up using ZPL commands or the Wireless Setup Wizard utility, and any wired print server inserted into the printer will use those settings.
Format ^NPa
The following table identifies the parameters for this format.
Parameters
a = device to use as primary
Details
Accepted Values:
P = PRINTER
M = MPS/PRINTSERVER
Default Value: P
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
388
ZPL Wireless Commands
^NT
^NT
Set SMTP
Description Use this command to set the Simple Mail Transfer Protocol (SMTP) parameters. This allows you to set the e-mail settings for alerts.
Format ^NTa,b
The following table identifies the parameters for this format.
Parameters Details
a
= SMTP server address Accepted Values: Any properly formatted server address in the xxx.xxx.xxx.xxx format b = print server domain Accepted Values: Any properly formatted print server domain name. A domain name is one or more labels separated by a period (“dot”), and a label consists of letters, numbers, and hyphens. An example of a domain name is zebra.com
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Wireless Commands
^NW
389
^NW
Set Web Authentication Timeout Value
Description Use this command to set the timeout value for the printer home page. The printer will prompt for the printer password only the first time that certain screens are accessed until 1) the web authentication timeout value is reached (default value is 5 minutes) or
2) the printer is reset. At that time, the printer will prompt for the password again.
Format ^NWa
The following table identifies the parameters for this format.
Parameters
a = timeout value
Details
The timeout value in minutes for an IP address to be authenticated to the printer web pages.
Accepted Values: 0 (no secure pages can be accessed without entering the printer password) to 255 minutes
Default Value: 5
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
390
ZPL Wireless Commands
^WA
^WA
Set Antenna Parameters
Description Use this command to set the values for the receive and transmit antenna.
Format ^WAa,b
The following table identifies the parameters for this format.
Parameters
a = receive antenna b = transmit antenna
Details
Accepted Values: D (Diversity), L (Left), R (Right)
Default Value: D
Accepted Values: D (Diversity), L (Left), R (Right)
Default Value: D
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Wireless Commands
^WE
391
^WE
Set WEP Mode
Note •
The ^WE command is provided only for backward-compatibility with printers using firmware prior to V50.15.x, V53.15.x, or V60.15.x. For these firmware versions and later, use
to set the security type and related parameters.
Description Use this command to command enable Wired Equivalent Privacy (WEP) mode and set WEP values. WEP is a security protocol for wireless local area networks (WLANs).
Be careful to include the exact number of commas required for this command when setting encryption keys (parameters e
through h
). A missing or extra comma will cause the keys to be stored in the wrong slots and can prevent the printer from joining the wireless network.
Format ^WEa,b,c,d,e,f,g,h
The following table identifies the parameters for this format.
Parameters Details
a b
= encryption mode
= encryption index
Accepted Values: OFF, 40 (40-bit encryption), 128 (128-bit encryption)
Default Value: OFF
Tells the printer which encryption key to use.
Accepted Values: 1 (Key 1), 2 (Key 2), 3 (Key 3), 4 (Key 4)
Default Value: 1 c = authentication type Accepted Values: O (Open System), S (Shared Key)
Default Value: O
Note •
If you enable Shared Key authentication with
Encryption Mode set to OFF, this value resets to
Open.
d = encryption key storage e, f, g, h = encryption keys
1 through 4
Accepted Values: H (Hex key storage), S (string key storage)
Default Value: H
•
•
Accepted Values: The actual value for the encryption key
The encryption mode affects what can be entered for the encryption keys:
For 40-bit, encryption keys can be set to any 5 hex pairs or any 10 alphanumeric characters.
For 128-bit, encryption keys can be set to any 13 hex pairs or any 26 alphanumeric characters.
Note •
When using hex storage, do not add a leading
0x on the WEP key.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
392
ZPL Wireless Commands
^WE
Example 1 •
This example sets encryption to 40-bit, activates encryption key 1, and sets encryption key 1 to the string
12345
.
^WE40,,,,12345
In this example, the Encryption Index, Authentication Type, and Encryption Key Storage parameters are left blank with commas as placeholders for the fields. The printer uses the default values for these parameters.
Example 2 •
This example sets encryption to 128-bit, activates encryption key 2, and sets encryption keys 1 and 2 to hex values.
^WE128,2,,H,12345678901234567890123456,98765432109876543
210987654
The value for encryption key 1 is stored and can be activated in the future by the following command:
^WE128,1
Example 3 •
This example sets encryption to 128-bit, activates encryption key 4, and sets encryption key 4 to a hex value.
^WE128,4,,H,,,,98765432109876543210987654
Values are not required for encryption keys 1 through 3 when setting encryption key 4. In this example, commas are used as placeholders for the fields for encryption keys 1 through 3.
Any previously stored values for these encryption keys do not change.
Important •
Make sure that you include the exact number of commas required to get to the slot for encryption key 4 (parameter h ).
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Wireless Commands
^WI
393
^WI
Change Wireless Network Settings
Description Use this command to change the wireless network settings. On Zebra
ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later, the wireless print server settings for the ^ND command are the same as the ^WI command.
Format ^WIa,b,c,d,e,f,g,h,i
The following table identifies the parameters for this format.
Parameters Details
a b c g
= IP resolution
= IP address
= subnet mask
= timeout value
Accepted Values:
A = All
B = BOOTP
C = DHCP and BOOTP
D = DHCP
G = Gleaning only (Not recommended when the
Wireless Print Server or Wireless Plus Print Server is installed.)
R = RARP
P = Permanent
Default Value: A
Accepted Values: Any properly formatted IP address in the xxx.xxx.xxx.xxx format.
Accepted Values: Any properly formatted subnet mask in the xxx.xxx.xxx.xxx format.
d = default gateway Accepted Values: Any properly formatted gateway in the xxx.xxx.xxx.xxx format.
e
= WINS server address Accepted Values: Any properly formatted WINS server in the xxx.xxx.xxx.xxx format. f = connection timeout checking
Accepted Values:
Y = yes
N = no
Default Value: Y
Time, in seconds, before the connection times out.
Accepted Values: 0 through 9999
Default Value: 300
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
394
ZPL Wireless Commands
^WI
Parameters Details
h = ARP broadcast interval
Time, in minutes, that the broadcast is sent to update the device’s ARP cache.
Accepted Values: 0 through 30
Default Value: 0 (no ARP sent) i = base raw port number The port number that the printer should use for its RAW data.
Accepted Values: 1 through 65535
Default Value: 9100
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Wireless Commands
^WL
395
^WL
Set LEAP Parameters
Note •
The ^WL command is provided only for backward-compatibility with printers using firmware prior to V50.15.x or V60.15.x. For these firmware versions and later, use
^WX on page 402 to set the security type and related parameters.
Description Use this command to enable Cisco
®
Lightweight Extensible Authentication
Protocol (LEAP) mode and set parameters. LEAP is user authentication method that is available with some wireless radio cards.
Format ^WLa,b,c
The following table identifies the parameters for this format.
Parameters
a = mode b
= user name c = password
Details
Accepted Values: OFF, ON
Default Value: OFF
Accepted Values: Any 4 to 40 alphanumeric characters
Default Value: user
Accepted Values: Any 4 to 40 alphanumeric characters
Default Value: password
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
396
ZPL Wireless Commands
~WL
~WL
Print Network Configuration Label
Description Use this command to generate a network configuration label ( Figure 5
).
Format ~WL
Wireless Print Server
Figure 5 • Network Configuration Label
Wireless Plus Print Server
Other
Printers/Print Engines
ZM400 and ZM600
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Wireless Commands
^WP
397
^WP
Set Wireless Password
Description Use this command to set the four-digit wireless password (not the same as the general printer password). If the wireless password is 0000, the Wireless and Wireless Plus print servers run in an “unprotected” mode, which means that you do not need to enter the wireless password through the control panel to view or modify wireless settings.
If a wireless password is set, the values for the following parameters will not appear through the control panel until the wireless password is entered:
• MAC Address
• ESSID
• WLAN Security
• WEP Type
• WEP Index
• Reset Network
Format ^WPa,b
The following table identifies the parameters for this format.
Parameters
a = old wireless password b
= new wireless password
Details
Accepted Values: 0000 through 9999
Default Value: 0000
Accepted Values: 0000 through 9999
Default Value: 0000
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
398
ZPL Wireless Commands
^WR
^WR
Set Transmit Rate
Description Use this command to change the transmission parameters.
Format ^WRa,b,c,d,e
The following table identifies the parameters for this format.
Parameters
a = rate 1 b = rate 2 c = rate 5.5
d = rate 11 e = transmit power
Details
Sets the 1 Mb/s transmit rate.
Accepted Values: Y (On), N (Off)
Sets the 2 Mb/s transmit rate.
Accepted Values: Y (On), N (Off)
Sets the 5.5 Mb/s transmit rate.
Accepted Values: Y (On), N (Off)
Sets the 11 Mb/s transmit rate.
Accepted Values: Y (On), N (Off)
Accepted Values: 1, 5, 20, 30, 50, 100
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Wireless Commands
~WR
399
~WR
Reset Wireless Radio Card and Print Server
Description Use this command to reinitialize the wireless radio card and the print server
(wired or wireless) when the Wireless or Wireless Plus print server is running. The command also causes any wireless radio card in the printer to reassociate to the wireless network.
Format ~WR
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
400
ZPL Wireless Commands
^WS
^WS
Set Wireless Radio Card Values
Description Use this command to set the wireless radio card values for ESSID, Operating
Mode, and Card Preamble.
Format ^WSe,o,p,h,i,j,k
The following table identifies the parameters for this format.
Parameters
e
= ESSID value o = operating mode p = wireless radio card preamble
This parameter is supported in firmware version V60.15.x,
V50.15.x, or later.
Details
Accepted Values: Any value up to 32 characters, including all
ASCII and Extended ASCII characters, including the space character. When this parameter is left blank, the ESSID is not changed.
Default Value: 125
Accepted Values: I (Infrastructure), A (Adhoc)
Default Value: I
Accepted Values: L (Long), S (Short)
Default Value: L
Adds a pulse to the network traffic generated by the printer.
This pulse is necessary with some network configurations to keep the printer online.
Accepted Values: 1 (Enabled), 0 (Disabled)
Default Value: 1 interval
Sets the interval at which the wireless pulse is sent when the wireless pulse feature is enabled.
Accepted Values: 5 to 300 seconds
Default Value: 15
This parameter is supported in firmware version V60.15.x,
V50.15.x, or later.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Wireless Commands
^WS
401
Parameters
j = channel mask
Details
For commonly used channel masks, see Table 17 .
Accepted Values: 4 Hexadecimal digits preceded by “0x”
(0x0000 to 0xFFFF)
Default Value: 0x7FF
This parameter is supported in firmware version V60.15.x,
V50.15.x, or later.
k = international mode Accepted Values: 0 (Disabled), 1 (Enabled)
Default Value: 0
This parameter is supported in firmware version V60.15.x,
V50.15.x, or later.
Region
United States, Canada, Latin America
Europe, Middle East, Africa, other
Japan
Table 17 • Channel Mask Settings
Channel Mask
0x7FF
0x1FFF
0x3FFF
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
402
ZPL Wireless Commands
^WX
^WX
Configure Wireless Securities
Description Use this command to configure the wireless security settings for your printer.
Values entered for this command must match what is configured on your WLAN and must be supported by the wireless radio card that you are using.
This command applies to printers with firmware version V60.15.x, V50.15.x, or later.
Note •
When using certificate files, your printer supports:
•
•
•
Using Privacy Enhanced Mail (PEM) formatted certificate files.
Using the client certificate and private key as two files, each downloaded separately.
Using exportable PAC files for EAP-FAST.
Format ^WXa,[zero or more supporting parameters]
Note •
The supporting parameters that are required vary based on the security type that you
select. See Supporting Parameters for Different Security Types on page 406
for instructions for each security type.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Wireless Commands
^WX
403
The following table identifies the parameters for this format.
Parameters
b = WEP encryption index* type* d = WEP key type*
* Not used for all security types
Details
Enter the two-digit code for the security type that your
WLAN uses. For which supporting parameters (b through n)
to use with the different security types, see
Parameters for Different Security Types on page 406 .
Accepted Values: 01 to 15
01 = No wireless security is active
02 = WEP 40-bit
03 = WEP 128-bit
04 = EAP-TLS
05 = EAP-TTLS
06 = EAP-FAST
07 = PEAP
08 = LEAP
09 = WPA PSK
10 = WPA EAP-TLS
11 = WPA EAP-TTLS
12 = WPA EAP-FAST
13 = WPA PEAP
14 = WPA LEAP
15 = Kerberos
Default Value: 01
Specifies which encryption key to use for WEP encryption. A value must be specified if using WEP 40-bit or WEP 128-bit.
Accepted Values: 1, 2, 3, 4
Default Value: 1
Enables the WEP key authentication type. A value must be specified if using WEP 40-bit or WEP 128-bit.
Accepted Values: O
or
S
O = open system
S = shared key
Default Value: O
Specifies the format of the WEP key. A value must be specified if using WEP 40-bit or WEP 128-bit.
Accepted Values: H or S
H = hex key storage
S = string key storage
Default Value: S
ZPL II Programming Guide 13979L-005 Rev. A
404
ZPL Wireless Commands
^WX
Parameters
e,f,g,h =
WEP encryption keys
1 through 4*
Details
Specifies the actual values of any WEP encryption keys to be used. A value must be specified for at least one WEP encryption key if you specify 40-bit or 128-bit WEP encryption for the security type.
Important •
Be careful to include the exact number of commas required for this command when setting encryption keys (parameters e through h ). A missing or extra comma will cause the keys to be stored in the wrong slots and can prevent the printer from joining the wireless network.
The encryption mode affects what can be entered for the encryption keys:
•
•
For 40-bit, encryption keys can be set to any 5 hex pairs or any 10 alphanumeric characters.
For 128-bit, encryption keys can be set to any 13 hex pairs or any 26 alphanumeric characters.
Note •
When using hex storage, do not add a leading
0x on the WEP key.
* Not used for all security types
Accepted Values: The actual value for the encryption key
Default Value: None
Specifies a user ID for security types that require one.
A value must be specified if using the following security types:
• EAP-TTLS
• LEAP
• WPA LEAP
• PEAP
• WPA PEAP
• WPA EAP-TTLS
• Kerberos
Accepted Values: The actual value for the user ID.
Default Value: user
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
ZPL Wireless Commands
^WX
405
Parameters Details
Specifies a password for security types that require one.
A value must be specified if using the following security types:
• EAP-TTLS
• LEAP
• WPA LEAP
• PEAP
• WPA PEAP
• WPA EAP-TTLS
• Kerberos
Accepted Values: The actual value for the password.
Default Value: password m = Key Distribution
Center (KDC)* n = Pre-Shared Key
(PSK) value*
* Not used for all security types require one. A value must be specified if using the following security types:
• EAP-TLS
• EAP-FAST
• WPA EAP-TLS
• WPA EAP-FAST
Accepted Values: The actual value for the optional private key.
Default Value: None
Specifies the realm for security types that require it. A value must be specified if using Kerberos.
Accepted Values: The actual value for the realm.
Default Value: kerberos
Specifies the KDC for security types that require it. A value must be specified if using Kerberos.
Accepted Values: The actual value for the KDC.
Default Value: krbtgt"
Enter the PSK value. This value is calculated and must be the same for each device on the WLAN. Use ZebraNet Bridge to generate the PSK value. A value must be specified if using
WPA PSK.
Important •
Do not enter a pass phrase for this field in this command. To use a pass phrase, use the ZebraNet
Bridge Enterprise Wireless Setup Wizard.
Accepted Values: a minimum of 64 hexadecimal digits
Default Value: None
ZPL II Programming Guide 13979L-005 Rev. A
406
ZPL Wireless Commands
^WX
Supporting Parameters for Different Security Types
The supporting parameters required for this command vary based on the security type that you select. You should not use all of the supporting parameters each time that you use this command, nor will you use extra commas to separate unused fields. Follow the example and format for your specific security type in this section, substituting your own data for anything that is shown in italics.
Security Type 01: No Wireless Security Active
Format
^WX01
Example •
This example turns off all wireless securities controlled under this command, but it does not reset the printer’s wireless settings to their defaults.
^XA
^WX01
^JUS^XZ
Security Type 02: WEP 40-Bit
Format
^WX02,b,c,d,e,f,g,h
Example •
This example configures the printer for WEP 40-bit encryption using index key 1, open authentication, and a hexadecimal WEP key.
^XA
^WX02,1,O,H,Hexidecimal_Key_1,,,
^JUS
^XZ
Security Type 03: WEP 128-Bit
Format
^WX03,b,c,d,e,f,g,h
Example •
This example configures the printer for WEP 128-bit encryption using index key 2, open authentication, and four hexadecimal WEP keys.
^XA
^WX03,2,O,H,Hexidecimal_Key_1,Hexadecimal_Key_2
Hexadecimal_Key_3,Hexadecimal_Key_4
^JUS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Wireless Commands
^WX
407
Security Type 04: EAP-TLS
Format
^WX04,k
Example •
This example configures the printer for EAP-TLS authentication with an optional private key.
^XA
^WX04,Optional_Private_Key
^JUS
^XZ
Security Type 05: EAP-TTLS
Format
^WX05,i,j
Example •
This example configures the printer for EAP-TTLS authentication with a user ID and password.
^XA
^WX05,User_ID,Password
^JUS
^XZ
Security Type 06: EAP-FAST
Format ^WX06,i,j,k
Example •
This example configures the printer for EAP-FAST authentication with a user ID, password, and optional private key.
^XA
^WX06,User_ID,Password,Optional_Private_Key
^JUS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
408
ZPL Wireless Commands
^WX
Security Type 07: PEAP
Format
^WX07,i,j
Example •
This example configures the printer for PEAP authentication using a user ID and password that are set up on the WLAN.
^XA
^WX07,User_ID,Password
^JUS
^XZ
Security Type 08: LEAP
Format
^WX08,i,j
Example •
This example configures the printer for LEAP authentication with a user ID and password.
^XA
^WX08,User_ID,Password
^JUS
^XZ
Security Type 09: WPA PSK
Format ^WX09,n
Example •
This example configures the printer for WPA authentication using a PSK value.
^XA
^WX09,64-Character_PSK
^JUS
^XZ
Security Type 10: WPA EAP-TLS
Format
^WX10,k
Example •
This example configures the printer for WPA encryption using EAP-TLS authentication with an optional private key.
^XA
^WX10,Optional_Private_Key
^JUS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
ZPL Wireless Commands
^WX
409
Security Type 11: WPA EAP-TTLS
Format
^WX11,i,j
Example •
This example configures the printer for WPA encryption using EAP-TTLS authentication with a user ID and password.
^XA
^WX11,User_ID,Password
^JUS
^XZ
Security Type 12: WPA EAP-FAST
Format
^WX12,i,j,k
Example •
This example configures the printer for WPA encryption using EAP-FAST authentication with a user ID, password, and optional private key.
^XA
^WX12,User_ID,Password,Optional_Private_Key
^JUS
^XZ
Security Type 13: WPA PEAP
Format
^WX13,i,j
Example •
This example configures the printer for WPA encryption using PEAP authentication with a user ID and password.
^XA
^WX13,User_ID,Password
^JUS
^XZ
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
410
ZPL Wireless Commands
^WX
Security Type 14: WPA LEAP
Format
^WX14,i,j
Example •
This example configures the printer for WPA encryption using LEAP authentication with a user ID and password.
^XA
^WX14,User_ID,Password
^JUS
^XZ
Security Type 15: Kerberos
Format
^WX15,i,j,l,m
Example •
This example configures the printer for Kerberos encryption.
^XA
^WX15,User_ID,Password,Realm,KDC_value
^JUS
^XZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5
SGD Printer Setting
Commands
This chapter provides a high-level overview of printer setting Set / Get / Do (SGD) commands.
SGD commands are available in printers with firmware version V60.15.x, V50.15.x, or later.
Important •
These are important points to note when using ZPL and SGD commands:
• SGD commands are case-sensitive.
• ZPL and SGD commands should be sent to the printer as separate files.
• Certain settings can be controlled by both ZPL and SGD. Configuration changes made in
ZPL can affect configuration changes made in SGD.
• Changes made with one command type (ZPL or SGD) will affect the data returned to the host in response to both ZPL and getvar commands. The command type (ZPL or SGD) that was sent last determines the current setting.
• Some RF cards do not support all of the SGD commands.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
412
SGD Printer Setting Commands
Overview
Overview
This section describes how and why to use the Set / Get / Do (SGD) commands. It also provides an example of a typical command structure.
Note •
SGD commands must be terminated by a carriage return or a space and line feed.
SGD commands are commands that allow you to configure all printers with firmware versions
V60.15.x, V50.15.x, and later. The printer performs the specified function immediately after receiving the command. The commands are:
• setvar
• getvar
• do
setvar Command
Setvar commands:
• are used to configure printer settings to specific values by setting them in the printer
• must be terminated by a space character or a CR/ LF (0x0D, 0x0A)
Important •
The setvar command and attributes must be specified in lower case.
getvar Command
Getvar commands:
• are used to get the current value of the printer settings
• must be terminated by a space character or CR/LF (0x0D, 0x0A)
The printer responds with the printer setting of “?” if:
• the printer setting does not exist (usually due to incorrect spelling of the printer setting)
• it has not been configured yet
Important •
The printer settings and attributes must be specified in lower case.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Setting Commands
Overview
413
do Command
Do commands:
• are used to instruct the printer to perform predefined actions
• must be terminated by a space character or a CR/LF (0x0D, 0x0A)
Some Do commands require additional settings which must be enclosed in double quotes.
Important •
The values must be specified in lower case.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
414
SGD Printer Setting Commands
Command Structure
Command Structure
It is important to understand the structure of the command and its components. A command structure illustration is provided for each command in this guide.
Example •
This is an example of a command structure illustration:
! U1 setvar "ip.addr" "value"
1
2
3
1
2
3
Command—always preceded with an exclamation point (!) and must be specified in lower case. A space resides between the !and U1 and between U1 and the command
(setvar or getvar).
Attribute—always in double quotes and must be specified in lower case.
Chosen value—always in double quotes. Only applicable for setvar and do.
This command must be terminated by a space character or a CR/ LF (0x0D, 0x0A).
Note •
Some RF cards do not support all of the SGD commands.
How to Send Multiple SGD Commands
For any getvar, setvar, or do command, if you issue the syntax without the "1" and use the END command followed by a space, multiple SGD commands are sent simultaneously.
Example •
This syntax shows how you can send multiple getvar commands:
1
2
3
! U getvar "ip.telnet.enable" getvar "ip.dhcp.enable" getvar "ip.dhcp.cid_prefix"
END
1
2
3
The command portion of the string does not use the "1" after the "! U".
Commands issued after the first command do not require the "! U".
The string of commands is terminated by the word "END" with a space after the word, and by a carriage return/ line feed.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
appl.bootblock
415
appl.bootblock
Description This command refers to the bootblock version. On the configuration label, the bootblock number is identified as the hardware ID. This command is only supported on Zebra
ZM400/ZM600™ printers.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar
Details
This command returns the bootblock version number that appears on the configuration label .
Format: ! U1 getvar "appl.bootblock"
Example •
In this example, the getvar returns the bootblock version number.
! U1 getvar " appl.bootblock
"
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
416
SGD Printer Settings
appl.name
appl.name
Description This command refers to the printer’s firmware version. This command is only supported on Zebra ZM400/ZM600™ printers.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar
Details
This command returns the printer’s firmware version.
Format: ! U1 getvar "appl.name"
Example •
In this example, the getvar returns the printer’s firmware version.
! U1 getvar " appl.name
"
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
device.languages
417
device.languages
Description This command identifies the programming language that the printer is currently using. This command is only supported on Zebra ZM400/ZM600™ printers.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar
Details
This command retrieves the programming language that the printer is currently using.
shows the possible response values.
Format: ! U1 getvar "device.languages"
Example •
In this example, the getvar result is the current programming language that the printer is using.
! U1 getvar " device.languages
"
Table 18 • Programming Languages
ZPL (Zebra Programming Language)
EPL (Eltron Programming Language)
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
418
SGD Printer Settings
ip.active_network
ip.active_network
Description This command displays if the printer is actively connected to wireless, external wired, or internal wired. This command is only supported on Zebra ZM400/ZM600™ and
S4M™ printers.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar
Details
This command instructs the printer to respond with what the printer is currently connected to internal wired, wireless, external wired, or
unknown. Table 19 provides details on the potential return values.
Format: ! U1 getvar "ip.active_network"
Example •
In this example, the getvar will return the current active network the printer is connected to.
! U1 getvar "ip.active_network"
Return Values
“internal wired”
“wireless”
“external wired”
“unknown”
Table 19 • Printer Responses
Details
This is the return value when an internal wired device is detected.
This is the return value when a wireless device is detected.
This is the return value when an external wired device is detected.
This is the return value:
• if the printer has not established a network connection on any of the devices
• if you don't have any of the network devices plugged in
• if the printer is trying to establish a connection (for example, when wireless is going through the association process)
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
ip.ftp.enable
419
ip.ftp.enable
Description This printer setting refers to the FTP protocol setting. This command tells the printer to turn FTP on or off.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the FTP status.
Format: ! U1 getvar "ip.ftp.enable"
This command instructs the printer to turn FTP on or off.
Format: ! U1 setvar "ip.ftp.enable" "value"
Values:
"off" = disables FTP
"on" = enables FTP
Default: "on"
Example •
This setvar example shows the FTP status set to "on".
! U1 setvar "ip.ftp.enable" "on"
When the setvar value is set to "on", the getvar result is that the FTP status is "on".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
420
SGD Printer Settings
ip.http.enable
ip.http.enable
Description This printer setting refers to the HTTP protocol/web server setting.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the HTTP status.
Format: ! U1 getvar "ip.http.enable"
This command instructs the printer to change HTTP to on or off.
Format: ! U1 setvar "ip.http.enable" "value"
Values:
"off" = disables HTTP protocol
"on" = enables HTTP protocol
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "ip.http.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
ip.lpd.enable
421
ip.lpd.enable
Description This printer setting refers to the LPD (Line Printer Daemon) protocol setting.
Type getvar; setvar
Important •
LPD communications from the host should be directed to port 515.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the LPD status.
Format: ! U1 getvar "ip.lpd.enable"
This command instructs the printer to turn LPD on or off.
Format: ! U1 setvar "ip.lpd.enable" "value"
Values:
"off" = disables LPD protocol
"on" = enables LPD protocol
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "ip.lpd.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
422
SGD Printer Settings
ip.pop3.enable
ip.pop3.enable
Description This printer setting determines if the printer queries a POP3 mailbox for mail.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the POP3 status.
Format: ! U1 getvar "ip.pop3.enable"
This command instructs the printer to turn POP3 on or off.
Format: ! U1 setvar "ip.pop3.enable" "value"
Values:
"off" = disables POP3
"on" = enables POP3
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "ip.pop3.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
ip.pop3.password
423
ip.pop3.password
Description This printer setting refers to the POP3 mailbox password. This only applies if
"ip.pop3.enable" is set to on.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the POP3 password.
Format: ! U1 getvar "ip.pop3.password"
For protection a single "*" prints.
This command instructs the printer to change the POP3 password.
Format: ! U1 setvar "ip.pop3.password" "value"
Values: A maximum of 20 alphanumeric characters
Default: " "
Example •
This setvar example shows the value set to "password".
! U1 setvar "ip.pop3.password" "password"
When the setvar value is set to "password", the getvar result is "*".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
424
SGD Printer Settings
ip.pop3.poll
ip.pop3.poll
Description This printer setting refers to how frequent (in seconds) the printer queries a
POP3 mailbox for new mail. This only applies if the "ip.pop3.enable" is set to on.
Type getvar; setvar
Note •
A poll value of less then thirty seconds is not recommended. The printer is unresponsive for several seconds when polling for email depending on data transfer time from the server to the printer.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the POP3 poll frequency (in seconds).
Format: ! U1 getvar "ip.pop3.poll"
This command instructs the printer to change the POP3 poll interval. A value of "0" causes the printer to only query the POP3 mailbox one time, on printer power up, or following a network reset.
Format: ! U1 setvar "ip.pop3.poll" "value"
Values: "0" through "65535"
Default: "0"
Example •
This setvar example shows the value set to "0".
! U1 setvar "ip.pop3.poll" "0"
When the setvar value is set to "0", the getvar result is "0".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
ip.pop3.server_addr
425
ip.pop3.server_addr
Description This printer setting refers to the POP3 server IP address that the printer contacts when checking for new mail. This only applies if "ip.pop3.enable" is set to on.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the POP3 server address.
Format: ! U1 getvar "ip.pop3.server_addr"
This command instructs the printer to change the POP3 server address.
Format: ! U1 setvar "ip.pop3.server_addr" "value"
Values: Any valid POP3 server address
Default: "0.0.0.0"
Example •
This setvar example shows the value set to "10.3.5.10".
! U1 setvar "ip.pop3.server_addr" "10.3.5.10"
When the setvar value is set to "10.3.5.10", the getvar result is "10.3.5.10".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
426
SGD Printer Settings
ip.pop3.username
ip.pop3.username
Description This printer setting refers to the POP3 user name. This only applies if the
"ip.pop3.enable" is set to on.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the POP3 user name.
Format: ! U1 getvar "ip.pop3.username"
This command instructs the printer to change the POP3 user name.
Format: ! U1 setvar "ip.pop3.username" "value"
Values: A maximum of 20 alphanumeric characters
Default: " "
Example •
This setvar example shows the value set to "user".
! U1 setvar "ip.pop3.username" "user"
When the setvar value is set to "user", the getvar result is "user".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
ip.primary_network
427
ip.primary_network
Description This command allows you to set the primary network to either wired or wireless. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the name of the current primary network device.
Format: ! U1 getvar "ip.primary_network"
This command instructs the printer to set the current network device.
Format: ! U1 setvar "ip.primary_network" "value"
Values:
1 = wired
2 = wireless
Default: "wired"
Example •
This setvar example shows the value set to "wired".
! U1 setvar "ip.primary_network" " wired
"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"wired".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
428
SGD Printer Settings
ip.smtp.domain
ip.smtp.domain
Description This printer setting refers to the domain name used by the printer in sending email with respect to the SMTP server.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to return the SMTP domain name.
Format: ! U1 getvar "ip.smtp.domain"
This command instructs the printer to change the SMTP domain name.
Format: ! U1 setvar "ip.smtp.domain" "value"
Values: A maximum of 24 alphanumeric characters
Default: "ZBRPrintServer"
Example •
This setvar example shows the value set to "ZBRPrintServer.com".
! U1 setvar "ip.smtp.domain" "ZBRPrintServer.com"
When the setvar value is set to "ZBRPrintServer.com", the getvar result is
"ZBRPrintServer.com".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
ip.smtp.enable
429
ip.smtp.enable
Description This printer setting refers to the SMTP protocol.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to return the SMTP status.
Format: ! U1 getvar "ip.smtp.enable"
This command instructs the printer to turn SMTP on or off.
Format: ! U1 setvar "ip.smtp.enable" "value"
Values:
"off" = disables SMTP
"on" = enables SMTP
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "ip.smtp.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
430
SGD Printer Settings
ip.smtp.server_addr
ip.smtp.server_addr
Description This printer setting refers to the IP address of the SMTP server used for sending email.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the current SMTP server address.
Format: ! U1 getvar "ip.smtp.server_addr"
This command instructs the printer to change the SMTP server address.
Format: ! U1 setvar "ip.smtp.server_addr" "value"
Values: Any valid IP address.
Default: 0.0.0.0
Example •
This setvar example shows the value set to 10.10.10.10.
! U1 setvar "ip.smtp.server_addr" "10.10.10.10"
When the setvar value is set to "10.10.10.10", the getvar result is
"10.10.10.10".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
ip.snmp.get_community_name
431
ip.snmp.get_community_name
Description This printer setting is used when making SNMP queries. The SNMP client must supply the get community name that matches the printer’s get community name in order to query any SNMP data.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to get the SNMP get community name string.
Format: ! U1 getvar "ip.snmp.get_community_name"
For protection a single "*" prints.
This command instructs the printer to set the SNMP get community name string.
Format:
! U1 setvar "ip.snmp.get_community_name" "value"
Values: A maximum of 19 alphanumeric characters.
Default: "public"
Example •
This setvar example shows the value set to "public".
! U1 setvar "ip.snmp.get_community_name" "public"
When the setvar value is set to "public", the getvar result is "*".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
432
SGD Printer Settings
ip.snmp.set_community_name
ip.snmp.set_community_name
Description This printer setting is used when changing SNMP data remotely. To alter any
SNMP data, the SNMP client must supply the set community name that matches the printer’s set community name.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to return the printer’s SNMP set community name string.
Format: ! U1 getvar "ip.snmp.set_community_name"
For protection a single "*" returns.
This command instructs the printer to set the SNMP set community name string.
Format: ! U1 setvar "ip.snmp.set_community_name"
"value"
Values: A maximum of 19 alphanumeric characters
Default: "public"
Example •
This setvar example shows the value set to "public".
! U1 setvar "ip.snmp.set_community_name" "public"
When the setvar value is set to "public", the getvar result is "*".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
ip.telnet.enable
433
ip.telnet.enable
Description This printer setting refers to the TELNET (port 23) protocol.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the TELNET status.
Format: ! U1 getvar "ip.telnet.enable"
This command instructs the printer to turn TELNET on or off.
Format: ! U1 setvar "ip.telnet.enable" "value"
Values:
"off" = disables telnet protocol
"on" = enables telnet protocol
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "ip.telnet.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
434
SGD Printer Settings
ip.snmp.enable
ip.snmp.enable
Description This printer setting refers to the SNMP protocol.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the SNMP status.
Format: ! U1 getvar "ip.snmp.enable"
This command instructs the printer to enable or disable the SNMP protocol.
Format: ! U1 setvar "ip.snmp.enable" "value"
Values:
"on" = enable the SNMP protocol
"off" = disable the SNMP protocol
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "ip.snmp.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
ip.tcp.enable
435
ip.tcp.enable
Description This printer setting refers to the TCP socket protocol.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the TCP status.
Format: ! U1 getvar "ip.tcp.enable"
This command instructs the printer to turn the TCP on or off.
Format: ! U1 setvar "ip.tcp.enable" "value"
Values:
"off" = disables TCP protocol
"on" = enables TCP protocol
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "ip.tcp.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
436
SGD Printer Settings
ip.udp.enable
ip.udp.enable
Description This printer setting refers to the UDP socket protocol.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the UDP status.
Format: ! U1 getvar "ip.udp.enable"
This command instructs the printer to turn UDP on or off.
Format: ! U1 setvar "ip.udp.enable" "value"
Values:
"off" = disables UDP protocol
"on" = enables UDP protocol
Default: "off"
Example •
This setvar example shows the value set to "on".
! U1 setvar "ip.udp.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
media.printmode
437
media.printmode
Description This printer setting determines the action the printer takes after a label or group of labels has printed. This command is only supported on Zebra ZM400/ZM600™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the the currently set media print mode.
Format: ! U1 getvar "media.printmode"
This command instructs the printer to change the media print mode.
Format: ! U1 setvar "media.printmode" "value"
Values:
tear off = "T" peel off = "P" rewind = "R" applicator = "A" cutter = "C" delayed cutter = "D" reserved = "L" * reserved = "U" *
* These values are only supported on the Zebra ZM400/ZM600™ printer.
Example •
This setvar example shows the value set to "T".
! U1 setvar "media.printmode" "T"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"tear off".
For more details on how each setvar value relates to the getvar responses, see Table 20,
Setvar / Getvar Relation on page 438
.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
438
SGD Printer Settings
media.printmode
Table 20 • Setvar / Getvar Relation
If the setvar is set to … Then the getvar response and front panel display is …
"T"
"P"
"R"
"A"
"C"
"D"
"L"
"U"
TEAR OFF
PEEL OFF
REWIND
APPLICATOR
CUTTER
DELAYED CUT
RESERVED
RESERVED
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
odometer.headclean
439
odometer.headclean
Description This printer setting refers to the head clean odometer count. This counter tracks how many inches and centimeters have passed through the printer since the head was last cleaned. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to retrieve the values for the head clean counter.
Format: ! U1 getvar "odometer.headclean"
This command instructs the printer to reset the head clean counter.
Format: ! U1 setvar "odometer.headclean" "value"
Values:
"0" = reset the head clean counter
Default: must be an accepted value or it is ignored
Example •
This example shows how to get the odometer head clean, how to reset it, and how to confirm the settings changed.
1.
To see the current settings, type:
! U1 getvar "odometer.headclean"
Something similar to this is shown:
"1489 INCHES, 3784 CENTIMETERS"
2.
To reset the these values to 0, type:
! U1 setvar " odometer.headclean
" "0"
3.
To confirm this settings were reset, type:
! U1 getvar "odometer.headclean"
If the resetting was successful, this is shown:
"0 INCHES, 0 CENTIMETERS"
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
440
SGD Printer Settings
odometer.headnew
odometer.headnew
Description This printer setting refers to the head replaced odometer count. This counter tracks how many inches and centimeter passed through the printer since the head was last replaced. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to retrieve the values for the head new counter.
Format: ! U1 getvar "odometer.headnew"
This command instructs the printer to reset the head new counter.
Format: ! U1 setvar "odometer.headnew" "value"
Values:
"0" = resets the head new counter
Default: must be an accepted value or it is ignored
Example •
This example shows how to get the odometer head new, how to reset it, and how to confirm the settings changed:
1.
To see the current settings, type:
! U1 getvar "odometer.headnew"
Something similar to this is shown:
"1489 INCHES, 3784 CENTIMETERS"
2.
To reset the these values to 0, type:
! U1 setvar " odometer.headnew
" "0"
3.
To confirm this settings were reset, type:
! U1 getvar "odometer.headnew"
If the resetting was successful, this is shown:
"0 INCHES, 0 CENTIMETERS
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
odometer.label_dot_length
441
odometer.label_dot_length
Description This command returns the length of the last label printed or fed (in dots). This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar
Details
This command returns the length of the last label printed or fed (in dots).
Format:
! U1 getvar "odometer.label_dot_length"
Example •
This is an example of how to reset the length using the ^LL command and how to use the getvar to confirm the change. For the ^LL command to work the printer must be in continuous mode.
1.
To change the odometer label dot length, type:
^XA
^LL500
^XZ
2.
To get the current odometer label dot length, type:
! U1 getvar "odometer.label_dot_length"
Something similar to this is shown:
"500"
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
442
SGD Printer Settings
odometer.media_marker_count1
odometer.media_marker_count1
Description This printer setting refers to the value of the first (count1) user resettable counter. The user resettable counters track how much media has passed through the printer in both inches or centimeters. This command is only supported on Zebra ZM400/ZM600™ and
S4M™ printers.
Type getvar; setvar
Note •
Here are some reference links for this command:
•
For details on the command structure of SGD commands, see Command Structure on page 414 .
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to return the current value of the first
(count1) user resettable counter in both inches and centimeters.
Format: ! U1 getvar "odometer.media_marker_count1"
This command instructs the printer to reset the first user resettable counter.
Format:
! U1 setvar "odometer.media_marker_count1" "value"
Values:
"0" = reset the counter
Default: must be an accepted value or it is ignored
Example •
This example shows how to get the first user resettable counter, how to reset it, and how to confirm the settings have changed:
1.
To see the current settings, type:
! U1 getvar "odometer.media_marker_count1"
Something similar to this is shown:
"8516 INCHES, 21632 CENTIMETERS"
2.
To reset the these values to 0, type:
! U1 setvar " odometer.media_marker_count1
" "0"
3.
To confirm these settings were reset, type:
! U1 getvar "odometer.media_marker_count1"
If the resetting was successful, this is shown:
"0 INCHES, 0 CENTIMETERS"
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Printer Settings
odometer.media_marker_count2
443
odometer.media_marker_count2
Description This printer setting refers to the value of the second (count2) user resettable counter. The user resettable counters track how much media has passed through the printer in both inches or centimeters. This command is only supported on Zebra ZM400/ZM600™ and
S4M™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to return the current value of the second (count2) user resettable counter in both inches and centimeters.
Format: ! U1 getvar "odometer.media_marker_count2"
This command instructs the printer to reset the second user resettable counter.
Format:
! U1 setvar "odometer.media_marker_count2" "value"
Values:
"0" = reset the counter
Default: must be an accepted value or it is ignored
Example •
This example shows how to get the second user resettable counter, how to reset it, and how to confirm the settings have changed:
1.
To see the current settings, type:
! U1 getvar "odometer.media_marker_count2"
Something similar to this is shown:
"8516 INCHES, 21632 CENTIMETERS"
2.
To reset the these values to 0, type:
! U1 setvar " odometer.media_marker_count2
" "0"
3.
To confirm these settings were reset, type:
! U1 getvar "odometer.media_marker_count2"
If the resetting was successful, this is shown:
"0 INCHES, 0 CENTIMETERS"
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
444
SGD Printer Settings
odometer.total_print_length
odometer.total_print_length
Description This command tracks the total length of media that printed over the life of the printer. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 414
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar
Details
This command returns the value of the total length of media that printed over the life of the printer.
Format: ! U1 getvar "odometer.total_print_length"
Example •
This example shows how to get the total length of media that printed over the life of the printer.
1.
To get the total length of media that has printed to date, type:
! U1 getvar "odometer.total_print_length"
Something similar to this is shown:
"8560 INCHES, 21744 CENTIMETERS"
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
6
SGD Wired Commands
This chapter provides a high-level overview of the wired Set / Get / Do (SGD) commands. The commands in this chapter are only supported on Zebra ZM400/ZM600™ and S4M™ printers running v53.15.xZ or later.
Important •
These are important points to note when using ZPL and SGD commands:
• SGD commands are case-sensitive.
• ZPL and SGD commands should be sent to the printer as separate files.
• Certain settings can be controlled by both ZPL and SGD. Configuration changes made in
ZPL can affect configuration changes made in SGD.
• Changes made with one command type (ZPL or SGD) will affect the data returned to the host in response to both ZPL and getvar commands. The command type (ZPL or SGD) that was sent last determines the current setting.
• Some RF cards do not support all of the SGD commands.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
446
SGD Wired Commands
Overview
Overview
This section describes how and why to use the Set / Get / Do (SGD) commands. It also provides an example of a typical command structure.
Note •
SGD commands must be terminated by a carriage return or a space and line feed.
SGD commands are commands that allow you to configure all printers with firmware versions
V60.15.x, V50.15.x, and later. The printer performs the specified function immediately after receiving the command. The commands are:
• setvar
• getvar
• do
setvar Command
Setvar commands:
• are used to configure printer settings to specific values by setting them in the printer
• must be terminated by a space character or a CR/ LF (0x0D, 0x0A)
Important •
The setvar command and attributes must be specified in lower case.
getvar Command
Getvar commands:
• are used to get the current value of the printer settings
• must be terminated by a space character or CR/LF (0x0D, 0x0A)
The printer responds with the printer setting of “?” if:
• the printer setting does not exist (usually due to incorrect spelling of the printer setting)
• it has not been configured yet
Important •
The printer settings and attributes must be specified in lower case.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
Overview
447
do Command
Do commands:
• are used to instruct the printer to perform predefined actions
• must be terminated by a space character or a CR/LF (0x0D, 0x0A)
Some Do commands require additional settings which must be enclosed in double quotes.
Important •
The values must be specified in lower case.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
448
SGD Wired Commands
Command Structure
Command Structure
It is important to understand the structure of the command and its components. A command structure illustration is provided for each command in this guide.
Example •
This is an example of a command structure illustration:
! U1 setvar "ip.addr" "value"
1
2
3
1
2
3
Command—always preceded with an exclamation point (!) and must be specified in lower case. A space resides between the !and U1 and between U1 and the command
(setvar or getvar).
Attribute—always in double quotes and must be specified in lower case.
Chosen value—always in double quotes. Only applicable for setvar and do.
This command must be terminated by a space character or a CR/ LF (0x0D, 0x0A).
Note •
Some RF cards do not support all of the SGD commands.
How to Send Multiple SGD Commands
For any getvar, setvar, or do command, if you issue the syntax without the "1" and use the END command followed by a space, multiple SGD commands are sent simultaneously.
Example •
This syntax shows how you can send multiple getvar commands:
1
2
3
! U getvar "ip.telnet.enable" getvar "ip.dhcp.enable" getvar "ip.dhcp.cid_prefix"
END
1
2
3
The command portion of the string does not use the "1" after the "! U".
Commands issued after the first command do not require the "! U".
The string of commands is terminated by the word "END" with a space after the word, and by a carriage return/ line feed.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
external_wired.ip.addr
449
external_wired.ip.addr
Description This command allows you to get or set the external wired print servers’s IP address. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later. This feature works with the ZebraNet 10/100 External Print
Server, firmware version 1.1.5.
Type getvar; setvar
Important •
For a set IP address to take affect, the IP protocol must be set to permanent and the print server must be reset.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with its current external wired print server IP address.
Format: ! U1 getvar "external_wired.ip.addr"
This command instructs the printer to change its current external wired print server IP address upon powering the printer on.
Format: ! U1 setvar "external_wired.ip.addr" "value"
Values: any valid IP address
Default: "0.0.0.0"
Note •
The setvar value of this command can be affected by the external_wired.ip.dhcp.enable command.
Example •
This setvar example shows the value set to "10.14.4.235".
! U1 setvar " external_wired.
ip.addr" "10.14.4.235"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"10.14.4.235".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
450
SGD Wired Commands
external_wired.ip.arp_interval
external_wired.ip.arp_interval
Description This print server setting allows you to specify the ARP (Address Resolution
Protocol) interval or the ARP cache time out for the external wired print server. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the ARP interval or the
ARP cache time out value for the external wired print server.
Format: ! U1 getvar
"external_wired.ip.arp_interval"
This command instructs the printer to change the ARP interval or the ARP cache time out for the external wired print server.
Format: ! U1 setvar "external_wired.ip.arp_interval"
"value"
Values: 0 - 30
Default: "0"
Example •
This setvar example shows the value set to "0".
! U1 setvar " external_wired.
ip.arp_interval" "0"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"0".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
external_wired.ip.default_addr.enable
451
external_wired.ip.default_addr.enable
Description This command allows you to default the external wired print server’s IP address. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later.
Type getvar; setvar
Important •
For a set IP address to take affect, the IP protocol must be set to permanent and the print server must be reset.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to show the status of the setting of external wired print server’s default IP address feature.
Format:
! U1 getvar "external_wired.ip.default_addr.enable"
This command tells the printer to use it’s default address, if no address is provided through DHCP or BOOTP. If you do not assign an IP address after 2 minutes, the 10/100 Internal PS defaults to IP address
192.168.254.254.
Format:
! U1 setvar "external_wired.ip.default_addr.enable" "value"
Values:
"on" = enabled
"off" = disabled
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "external_wired.ip.default_addr.enable" "on"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"on".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
452
SGD Wired Commands
external_wired.ip.dhcp.cid_all
external_wired.ip.dhcp.cid_all
Description This printer setting defines the entire client identifier (DHCP option 61) if
DHCP is enabled on the external print server and
"external_wired.ip.dhcp.cid_type" is set to "0", or "2". The MAC address is used if the type is set to "1". This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later. This feature works with the ZebraNet 10/100
External Print Server, firmware version 1.1.5.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier prefix and suffix of the external wired print server.
Format:
! U1 getvar "external_wired.ip.dhcp.cid_all"
This command instructs the printer to change the client identifier prefix and suffix of the external wired print server. The prefix gets cleared and the suffix contains the entire client identifier.
Format:
! U1 setvar "external_wired.ip.dhcp.cid_all" "value"
Values: A maximum length of 60 characters if the CID type is ASCII, or
120 characters if the CID type is hexadecimal.
Default Value: ""
Example •
This setvar example shows the value set to "printer".
! U1 setvar " external_wired.
ip.dhcp.cid_all" "printer"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"printer".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
external_wired.ip.dhcp.cid_enable
453
external_wired.ip.dhcp.cid_enable
Description This command determines if DHCP (option 61) on the external wired print server is turned on or off. This command is only supported on Zebra ZM400/ZM600™ and
S4M™ printers running V53.15.xZ or later. This feature works with the ZebraNet 10/100
External Print Server, firmware version 1.1.5.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the status of the client identifier of the external wired print server.
Format:
! U1 getvar "external_wired.ip.dhcp.cid_enable"
This command instructs the printer to set the status of the client identifier of the external wired print server.
Format:
! U1 setvar "external_wired.ip.dhcp.cid_enable" "value"
Values:
"off" = client identifier is turned off
"on" = client identifier is turned on
Default: "off"
Example •
This setvar example shows the value set to "off".
! U1 setvar "external_wired.ip.dhcp.cid_enable" "off"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"off".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
454
SGD Wired Commands
external_wired.ip.dhcp.cid_prefix
external_wired.ip.dhcp.cid_prefix
Description This printer setting defines the prefix to be prepended to the DHCP client identifier (option 61) when DHCP is enabled on the external wired print server and
"external_wired.ip.dhcp.cid_type" is set to "0" or "2". This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later. This feature works with the ZebraNet 10/100 External Print Server, firmware version 1.1.5.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier prefix of the external wired print server.
Format:
! U1 getvar "external_wired.ip.dhcp.cid_prefix"
This command instructs the printer to change the CID prefix of the external wired print server.
Format:
! U1 setvar "external_wired.ip.dhcp.cid_prefix" "value"
Values: Any text string up to 10 characters if the CID type is ASCII, or 20 characters if the CID type is hexadecimal.
Default Value: ""
Example •
This setvar example shows the value set to "PRT001".
! U1 setvar "external_wired.ip.dhcp.cid_prefix" "PRT001"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"PRT001".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
external_wired.ip.dhcp.cid_suffix
455
external_wired.ip.dhcp.cid_suffix
Description This printer setting defines the unique suffix to be used as the client identifier
(DHCP option 61) if DHCP is enabled repeated on the external wired print server and
external_wired.ip.dhcp.cid_type on page 456
is set to "0" or "2", not "1". This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later.
This feature works with the ZebraNet 10/100 External Print Server, firmware version 1.1.5.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier suffix on the external wired print server.
Format:
! U1 getvar "external_wired.ip.dhcp.cid_suffix"
This command instructs the printer to change the client identifier suffix value.
Format:
! U1 setvar "external_wired.ip.dhcp.cid_suffix"
"value"
Values: The maximum length of a value allowed is 60 ASCII characters when the CID type is ASCII, or 120 hexadecimal values when the CID type is hexadecimal.
Default Value: ""
Example •
This setvar example shows setting the suffix to "printer".
! U1 setvar "external_wired.ip.dhcp.cid_suffix"
"printer"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"printer".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
456
SGD Wired Commands
external_wired.ip.dhcp.cid_type
external_wired.ip.dhcp.cid_type
Description This printer setting defines the type of client identifier (DHCP option 61) that will be sent if DHCP is enabled on the external wired print server. A value of "1" means the type of "Ethernet" and the printer’s MAC address will be used. A value of "0" or "2" means the client identifier sent will be "external_wired.ip.dhcp.cid_prefix" concatenated with "external_wired.ip.dhcp.cid_suffix". This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later.
This feature works with the ZebraNet 10/100 External Print Server, firmware version 1.1.5.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier type for the external wired print server.
Format:
! U1 getvar "external_wired.ip.dhcp.cid_type"
This command instructs the printer to enable "synthetic" Client Identifier for the external wired print server.
Format:
! U1 setvar "external_wired.ip.dhcp.cid_type" "value"
Values:
"0" = ASCII string
"1" = wired print server’s MAC address
"2" = HEX value
Default Value: "1"
Example •
This setvar example shows the value set to "1".
! U1 setvar "external_wired.ip.dhcp.cid_type" "1"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"1".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
external_wired.ip.gateway
457
external_wired.ip.gateway
Description This command instructs the printer to change the external wired print server’s gateway address. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later.
Type getvar; setvar
Important •
This setting refers to the gateway address. A set value is ignored if the IP protocol is not set to permanent.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the external wired printer server’s gateway address.
Format: ! U1 getvar "external_wired.ip.gateway"
This command instructs the printer to change the external wired printer server’s gateway address.
Format:
! U1 setvar "external_wired.ip.gateway" "value"
Values: Any valid gateway address
Default: "0.0.0.0"
Example •
This setvar example shows the value set to "10.3.5.1".
! U1 setvar " external_wired.
ip.gateway" "10.3.5.1"
When the setvar value is set to "10.3.5.1", the getvar result is "10.3.5.1".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
458
SGD Wired Commands
external_wired.ip.netmask
external_wired.ip.netmask
Description This setting refers to the external wired print server’s subnet mask address.
This value is ignored if the IP protocol is not set to permanent. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the external wired print server’s subnet mask.
Format: ! U1 getvar "external_wired.ip.netmask"
This command instructs the printer to change the external wired print servers’s subnet mask.
Format:
! U1 setvar "external_wired.ip.netmask" "value"
Values: Any valid subnet mask.
Default: "255.255.255.0"
Example •
This setvar example shows the value set to "255.255.255.0".
! U1 setvar "external_wired.ip.netmask" "255.255.255.0"
When the setvar value is set to "255.255.255.0", the getvar result is
"255.255.255.0".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
external_wired.ip.port
459
external_wired.ip.port
Description This printer setting refers to the external wired print server’s port number that the TCP print service is listening on. Normal TCP communications from the host should be directed to this port. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the external wired printer server’s TCP/UDP port number.
Format: ! U1 getvar "external_wired.ip.port"
This command instructs the printer to set the external wired print server’s
TCP/UDP port number.
Format: ! U1 setvar "external_wired.ip.port" "value"
Values: 1 - 65535 (excluding any ports currently used by other services, such as 21, 23, 80, and 515).
Default: "9100"
Example •
This setvar example shows the value set to "9100".
! U1 setvar " external_wired.
ip.port" "9100"
When the setvar value is set to "9100", the getvar result is "9100".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
460
SGD Wired Commands
external_wired.ip.protocol
external_wired.ip.protocol
Description This command configures the IP addressing method used by the external wired print server. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar setvar
Details
This command returns the IP addressing method used by the external print server.
Format: ! U1 getvar "external_wired.ip.protocol"
This command instructs the printer to configure the IP addressing method used by the external wired print server.
Format:
! U1 setvar "external_wired.ip.protocol" "value"
Values:
"bootp" = uses the standard bootp addressing method to obtain an
IP address and configuration
"dhcp" = uses the standard dhcp addressing method to obtain an IP address and configuration for a server specified period of time
"rarp" = uses the standard rarp addressing method to obtain an IP address
"glean" = uses the IP address from a PING packet that is sent to its hardware address (unicast address)
“permanent” = uses static values assigned through other commands
"all" = tries all of the dynamic addressing methods, not permanent, to obtain an IP address
Default: "all"
Example •
In this example, the setvar result is the current programming language that the printer is using.
! U1 setvar " external_wired.
ip.protocol" "bootp"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"bootp".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
external_wired.ip.timeout.enable
461
external_wired.ip.timeout.enable
Description This network setting refers to enabling the connection timeout on the external wired 10/100 print server. For this to take effect, the print server must be reset. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to return whether the timeout checking is enabled on the external wired print server.
Format:
! U1 getvar "external_wired.ip.timeout.enable"
This command instructs the printer to enable or disable the timeout checking on the external wired print server.
Format:
! U1 setvar "external_wired.ip.timeout.enable" "value"
Values:
"off" = turns off the connection checking
"on" = turns on the connection checking
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "external_wired.ip.timeout.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
462
SGD Wired Commands
external_wired.ip.timeout.value
external_wired.ip.timeout.value
Description This network setting refers to the number of seconds before the connection times out for the external wired print server. This command is only supported on Zebra
ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the time of the external wired print server, in seconds, before the connection times out.
Format:
! U1 getvar "external_wired.ip.timeout.value"
This command instructs the printer to set the time of the external wired print server, in seconds, before the connection times out.
Format:
! U1 setvar "external_wired.ip.timeout.value"
"value"
Values: "0" through "3600"
Default: "300"
Example •
This setvar example shows the value set to "300".
! U1 setvar " external_wired.ip.timeout.value
" "300"
When the setvar value is set to "300", the getvar result is "300".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
external_wired.mac_addr
463
external_wired.mac_addr
Description This command retrieves the MAC address of the external wired print server.
This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running
V53.15.xZ or later.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar
Details
This command instructs the printer to respond with the MAC address of the external wired print server.
Format: ! U1 getvar "external_wired.mac_addr"
Example •
In this example, the getvar result is the MAC address of the external wired print server.
! U1 getvar "external_wired.mac_addr"
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
464
SGD Wired Commands
internal_wired.ip.addr
internal_wired.ip.addr
Description This command allows you to get or set the internal wired print servers’s IP address. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later. This command is only supported on ZM400/ZM600™ printers with a ZebraNet™ 10/100 Internal Print Server.
Type getvar; setvar
Important •
For a set IP address to take affect, the IP protocol must be set to permanent and the print server must be reset.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with its current internal wired print server IP address.
Format: ! U1 getvar "internal_wired.ip.addr"
This command instructs the printer to change its current internal wired print server IP address upon powering the printer on.
Format: ! U1 setvar "internal_wired.ip.addr" "value"
Values: any valid IP address
Default: "0.0.0.0"
Note •
The setvar value of this command can be affected by the internal_wired.ip.dhcp.enable command.
Example •
This setvar example shows the value set to "10.14.4.235".
! U1 setvar " internal_wired.
ip.addr" "10.14.4.235"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"10.14.4.235".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
internal_wired.ip.arp_interval
465
internal_wired.ip.arp_interval
Description This print server setting allows you to specify the ARP (Address Resolution
Protocol) interval or the ARP cache time out for the internal wired print server. This command is only supported on ZM400/ZM600™ printers with a ZebraNet™ 10/100 Internal Print
Server.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the ARP interval or the
ARP cache time out value for the internal wired print server.
Format:
! U1 getvar "internal_wired.ip.arp_interval"
This command instructs the printer to change the ARP interval or the ARP cache time out for the internal wired print server.
Format:
! U1 setvar "internal_wired.ip.arp_interval" "value"
Values: 0 - 30
Default: "0"
Example •
This setvar example shows the value set to "0".
! U1 setvar " internal_wired.
ip.arp_interval" "0"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"0".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
466
SGD Wired Commands
internal_wired.ip.default_addr.enable
internal_wired.ip.default_addr.enable
Description This command allows you to default the internal wired print server’s IP address. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later. This command is only supported on ZM400/ZM600™ printers with a ZebraNet™ 10/100 Internal Print Server.
Type getvar; setvar
Important •
For a set IP address to take affect, the IP protocol must be set to permanent and the print server must be reset.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to show the status of the setting of internal wired print server’s default IP address feature.
Format:
! U1 getvar "internal_wired.ip.default_addr.enable"
This command tells the printer to use it’s default address, if no address is provided through DHCP or BOOTP. If you do not assign an IP address after 2 minutes, the 10/100 Internal PS defaults to IP address
192.168.254.254.
Format:
! U1 setvar "internal_wired.ip.default_addr.enable" "value"
Values:
"on" = enabled
"off" = disabled
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar
"internal_wired.ip.default_addr.enable"
"on"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"on".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
internal_wired.ip.dhcp.cid_all
467
internal_wired.ip.dhcp.cid_all
Description This printer setting defines the entire client identifier (DHCP option 61) if
DHCP is enabled on the internal print server and
"internal_wired.ip.dhcp.cid_type" is set to "0", or "2". The MAC address is used if the type is set to "1". This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later. This command is only supported on
ZM400/ZM600™ printers with a ZebraNet™ 10/100 Internal Print Server.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier prefix and suffix of the internal wired print server.
Format:
! U1 getvar "internal_wired.ip.dhcp.cid_all"
This command instructs the printer to change the client identifier prefix and suffix of the internal wired print server. The prefix gets cleared and the suffix contains the entire client identifer.
Format:
! U1 setvar "internal_wired.ip.dhcp.cid_all"
"value"
Values: A maximum length of 60 characters if the CID type is ASCII, or
120 characters if the CID type is hexadecimal.
Default Value: ""
Example •
This setvar example shows the value set to "printer".
! U1 setvar " internal_wired.
ip.dhcp.cid_all" "printer"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"printer".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
468
SGD Wired Commands
internal_wired.ip.dhcp.cid_enable
internal_wired.ip.dhcp.cid_enable
Description This command determines if DHCP (option 61) is turned on or off of the internal wired print server. This command is only supported on Zebra ZM400/ZM600™ and
S4M™ printers running V53.15.xZ or later. This command is only supported on
ZM400/ZM600™ printers with a ZebraNet™ 10/100 Internal Print Server.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the status of the client identifier of the internal wired print server.
Format:
! U1 getvar "internal_wired.ip.dhcp.cid_enable"
This command instructs the printer to set the status of the client identifier of the internal wired print server.
Format:
! U1 setvar "internal_wired.ip.dhcp.cid_enable" "value"
Values:
"off" = client identifier is turned off
"on" = client identifier is turned on
Default: "off"
Example •
This setvar example shows the value set to "off".
! U1 setvar "internal_wired.ip.dhcp.cid_enable" "off"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"off".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
internal_wired.ip.dhcp.cid_prefix
469
internal_wired.ip.dhcp.cid_prefix
Description This printer setting defines the prefix to be prepended to the DHCP client identifier (option 61) when DHCP is enabled on the internal wired print server and
"internal_wired.ip.dhcp.cid_type" is set to "0" or "2". This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later. This command is only supported on ZM400/ZM600™ printers with a ZebraNet™ 10/100 Internal
Print Server.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier prefix of the internal wired print server.
Format:
! U1 getvar "internal_wired.ip.dhcp.cid_prefix"
This command instructs the printer to change the CID prefix of the internal wired print server.
Format:
! U1 setvar "internal_wired.ip.dhcp.cid_prefix" "value"
Values: Any text string up to 10 characters if the CID type is ASCII, or 20 characters if the CID type is hexadecimal.
Default Value: ""
Example •
This setvar example shows the value set to "PRT001".
! U1 setvar "internal_wired.ip.dhcp.cid_prefix" "PRT001"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"PRT001".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
470
SGD Wired Commands
internal_wired.ip.dhcp.cid_suffix
internal_wired.ip.dhcp.cid_suffix
Description This printer setting defines the unique suffix to be used as the client identifier
(DHCP option 61) if DHCP is enabled on the internal wired 10/100 print server and
"internal_wired.ip.dhcp.cid_type" is set to "0" or "2", not "1". This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running
V53.15.xZ or later. This command is only supported on ZM400/ZM600™ printers with a
ZebraNet™ 10/100 Internal Print Server.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier suffix of the internal wired 10/100 print server.
Format:
! U1 getvar "internal_wired.ip.dhcp.cid_suffix"
This command instructs the printer to change the client identifier suffix value of the internal wired 10/100 print server.
Format:
! U1 setvar "internal_wired.ip.dhcp.cid_suffix"
"value"
Values: The maximum length of a value allowed is 60 ASCII characters when the CID type is ASCII, or 120 hexadecimal values when the CID type is hexadecimal.
Default Value: ""
Example •
This setvar example shows the value set to "printer".
! U1 setvar "internal_wired.ip.dhcp.cid_suffix" "printer"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"printer".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
internal_wired.ip.dhcp.cid_type
471
internal_wired.ip.dhcp.cid_type
Description This printer setting defines the type of client identifier (DHCP option 61) that will be sent if DHCP is enabled on the internal wired print server. A value of "1" means the type of "Ethernet" and the printer’s MAC address will be used.A value of "0" or "2" means the client identifier sent will be "internal_wired.ip.dhcp.cid_prefix" concatenated with "internal_wired.ip.dhcp.cid_suffix". This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later.
This command is only supported on ZM400/ZM600™ printers with a ZebraNet™ 10/100
Internal Print Server.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier type for the internal wired print server.
Format:
! U1 getvar "internal_wired.ip.dhcp.cid_type"
This command instructs the printer to enable "synthetic" Client Identifier for the internal wired print server.
Format:
! U1 setvar "internal_wired.ip.dhcp.cid_type" "value"
Values:
"0" = ASCII string
"1" = wired print server’s MAC address
"2" = HEX value
Default Value: "1"
Example •
This setvar example shows the value set to "1".
! U1 setvar "internal_wired.ip.dhcp.cid_type" "1"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"1".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
472
SGD Wired Commands
internal_wired.ip.gateway
internal_wired.ip.gateway
Description This command instructs the printer to change the internal wired print servers gateway address. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later. This command is only supported on ZM400/ZM600™ printers with a ZebraNet™ 10/100 Internal Print Server.
Type getvar; setvar
Important •
This setting refers to the gateway address. A set value is ignored if the IP protocol is not set to permanent.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the internal wired printer servers gateway address.
Format: ! U1 getvar "internal_wired.ip.gateway"
This command instructs the printer to change the internal wired printer servers gateway address.
Format:
! U1 setvar "internal_wired.ip.gateway" "value"
Values: Any valid gateway address
Default: "0.0.0.0"
Example •
This setvar example shows the value set to "10.3.5.1".
! U1 setvar " internal_wired.
ip.gateway" "10.3.5.1"
When the setvar value is set to "10.3.5.1", the getvar result is "10.3.5.1".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
internal_wired.ip.netmask
473
internal_wired.ip.netmask
Description This setting refers to the internal wired print server’s subnet mask address. This value is ignored if the IP protocol is not set to permanent. This command is only supported on
Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later. This command is only supported on ZM400/ZM600™ printers with a ZebraNet™ 10/100 Internal Print Server.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with internal wired print servers subnet mask.
Format: ! U1 getvar "internal_wired.ip.netmask"
This command instructs the printer to change the internal wired print servers subnet mask.
Format:
! U1 setvar "internal_wired.ip.netmask" "value"
Values: Any valid subnet mask.
Default: "255.255.255.0"
Example •
This setvar example shows the value set to "255.255.255.0".
! U1 setvar "internal_wired.ip.netmask" "255.255.255.0"
When the setvar value is set to "255.255.255.0", the getvar result is
"255.255.255.0".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
474
SGD Wired Commands
internal_wired.ip.port
internal_wired.ip.port
Description This printer setting refers to the internal wired print servers port number that the TCP print service is listening on. Normal TCP communications from the host should be directed to this port. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later. This command is only supported on ZM400/ZM600™ printers with a ZebraNet™ 10/100 Internal Print Server.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the internal wired printer servers TCP/UDP port number.
Format: ! U1 getvar "internal_wired.ip.port"
This command instructs the printer to set the internal wired print servers
TCP/UDP port number.
Format: ! U1 setvar "internal_wired.ip.port" "value"
Values: 1 - 65535 (excluding any ports currently used by other services, such as 21, 23, 80, and 515).
Default: "9100"
Example •
This setvar example shows the value set to "9100".
! U1 setvar " internal_wired.
ip.port" "9100"
When the setvar value is set to "9100", the getvar result is "9100".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
internal_wired.ip.protocol
475
internal_wired.ip.protocol
Description This command configures the IP addressing method used by the internal wired print server. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later. This command is only supported on ZM400/ZM600™ printers with a ZebraNet™ 10/100 Internal Print Server.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar setvar
Details
This command returns the IP addressing method used by the internal wired print server.
Format: ! U1 getvar "internal_wired.ip.protocol"
This command instructs the printer to configure the IP addressing method used by the internal wired print server.
Format:
! U1 setvar "internal_wired.ip.protocol" "value"
Values:
"bootp" = uses the standard bootp addressing method to obtain an
IP address and configuration
"dhcp" = uses the standard dhcp addressing method to obtain an IP address and configuration for a server specified period of time
"rarp" = uses the standard rarp addressing method to obtain an IP address
"glean" = uses the IP address from a PING packet that is sent to its hardware address (unicast address)
“permanent” = uses static values assigned through other commands
"all" = tries all of the dynamic addressing methods, not permanent, to obtain an IP address
Default: "all"
Example •
In this example, the setvar result is the current programming language that the printer is using.
! U1 setvar " internal_wired.
ip.protocol" "bootp"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"bootp".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
476
SGD Wired Commands
internal_wired.ip.timeout.enable
internal_wired.ip.timeout.enable
Description This network setting refers to enabling the connection timeout on the internal wired print server. For this to take effect, the print server must be reset. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later. This command is only supported on ZM400/ZM600™ printers with a ZebraNet™ 10/100 Internal
Print Server.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to return whether the timeout checking is enabled on the internal wired print server.
Format:
! U1 getvar "internal_wired.ip.timeout.enable"
This command instructs the printer to enable or disable the timeout checking on the internal wired print server.
Format:
! U1 setvar "internal_wired.ip.timeout.enable" "value"
Values:
"off" = turns off the connection checking
"on" = turns on the connection checking
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "internal_wired.ip.timeout.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wired Commands
internal_wired.ip.timeout.value
477
internal_wired.ip.timeout.value
Description This network setting refers to the number of seconds before the connection times out for the internal wired print server. For this to take effect, the print server must be reset. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running V53.15.xZ or later. This command is only supported on ZM400/ZM600™ printers with a ZebraNet™ 10/100 Internal Print Server.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the time of the internal wired print server, in seconds, before the connection times out.
Format:
! U1 getvar "internal_wired.ip.timeout.value"
This command instructs the printer to set the time of the internal wired print server, in seconds, before the connection times out.
Format:
! U1 setvar "internal_wired.ip.timeout.value"
"value"
Values: "0" through "3600"
Default: "300"
Example •
This setvar example shows the value set to "300".
! U1 setvar " internal_wired.ip.timeout.value
" "300"
When the setvar value is set to "300", the getvar result is "300".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
478
SGD Wired Commands
internal_wired.mac_addr
internal_wired.mac_addr
Description This command retrieves the MAC address of the internal wired print server.
This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers running
V53.15.xZ or later. This command is only supported on ZM400/ZM600™ printers with a
ZebraNet™ 10/100 Internal Print Server.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 448
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar
Details
This command instructs the printer to respond with the MAC address of the internal wired print server.
Format: ! U1 getvar "internal_wired.mac_addr"
Example •
In this example, the getvar result is the MAC address of the internal wired print server.
! U1 getvar "internal_wired.mac_addr"
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
7
SGD Wireless Commands
This chapter provides a high-level overview of the wireless Set / Get / Do (SGD) commands and details on each SGD command.
SGD commands are available in printers with firmware version V60.15.x, V50.15.x, or later.
Note •
The commands listed in this chapter are for use with the Wireless Print Server and
Wireless Plus Print Server, when used with firmware version V60.15.x, V50.15.x, or later.
Important •
These are important points to note when using ZPL and SGD commands:
• SGD commands are case-sensitive.
• ZPL and SGD commands should be sent to the printer as separate files.
• Certain settings can be controlled by both ZPL and SGD. Configuration changes made in
ZPL can affect configuration changes made in SGD.
• Changes made with one command type (ZPL or SGD) will affect the data returned to the host in response to both ZPL and getvar commands. The command type (ZPL or SGD) that was sent last determines the current setting.
• Some RF cards do not support all of the SGD commands.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
480
SGD Wireless Commands
Overview
Overview
This section describes how and why to use the Set / Get / Do (SGD) commands. It also provides an example of a typical command structure.
Note •
SGD commands must be terminated by a carriage return or a space and line feed.
SGD commands are commands that allow you to configure all printers with firmware versions
V60.15.x, V50.15.x, and later. The printer performs the specified function immediately after receiving the command. The commands are:
• setvar
• getvar
• do
setvar Command
Setvar commands:
• are used to configure printer settings to specific values by setting them in the printer
• must be terminated by a space character or a CR/ LF (0x0D, 0x0A)
Important •
The setvar command and attributes must be specified in lower case.
getvar Command
Getvar commands:
• are used to get the current value of the printer settings
• must be terminated by a space character or CR/LF (0x0D, 0x0A)
The printer responds with the printer setting of “?” if:
• the printer setting does not exist (usually due to incorrect spelling of the printer setting)
• it has not been configured yet
Important •
The printer settings and attributes must be specified in lower case.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
Overview
481
do Command
Do commands:
• are used to instruct the printer to perform predefined actions
• must be terminated by a space character or a CR/LF (0x0D, 0x0A)
Some Do commands require additional settings which must be enclosed in double quotes.
Important •
The values must be specified in lower case.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
482
SGD Wireless Commands
Command Structure
Command Structure
It is important to understand the structure of the command and its components. A command structure illustration is provided for each command in this guide.
Example •
This is an example of a command structure illustration:
! U1 setvar "ip.addr" "value"
1
2
3
1
2
3
Command—always preceded with an exclamation point (!) and must be specified in lower case. A space resides between the !and U1 and between U1 and the command
(setvar or getvar).
Attribute—always in double quotes and must be specified in lower case.
Chosen value—always in double quotes. Only applicable for setvar and do.
This command must be terminated by a space character or a CR/ LF (0x0D, 0x0A).
Note •
Some RF cards do not support all of the SGD commands.
How to Send Multiple SGD Commands
For any getvar, setvar, or do command, if you issue the syntax without the "1" and use the END command followed by a space, multiple SGD commands are sent simultaneously.
Example •
This syntax shows how you can send multiple getvar commands:
1
2
3
! U getvar "ip.telnet.enable" getvar "ip.dhcp.enable" getvar "ip.dhcp.cid_prefix"
END
1
2
3
The command portion of the string does not use the "1" after the "! U".
Commands issued after the first command do not require the "! U".
The string of commands is terminated by the word "END" with a space after the word, and by a carriage return/ line feed.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
card.inserted
483
card.inserted
Description This command indicates whether the wireless radio card is or is not inserted.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar
Details
This command instructs the printer to respond with the wireless radio card status. It’s inserted or it’s not inserted.
Format: ! U1 getvar "card.inserted"
Example •
In this example, the getvar result is "Inserted".
! U1 getvar "card.inserted"
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
484
SGD Wireless Commands
card.mac_addr
card.mac_addr
Description This command retrieves the MAC address of the wireless radio card.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar
Details
This command instructs the printer to respond with the MAC address.
Format: ! U1 getvar "card.mac_addr"
Example •
In this example, the getvar result is the MAC address for the wireless radio card.
! U1 getvar "card.mac_addr"
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
ip.addr
485
ip.addr
Description This command allows you to get or set the printer’s IP address.
Type getvar; setvar
Important •
For a set IP address to take affect, the IP protocol must be set to permanent and the print server must be reset.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with its current IP address.
Format: ! U1 getvar "ip.addr"
This command instructs the printer to change its current IP address upon powering the printer on.
Format: ! U1 setvar "ip.addr" "value"
Values: any valid IP address
Default: "0.0.0.0"
Note •
The setvar value of this command can be affected by the ip.dhcp.enable command.
Example •
This setvar example shows the value set to "10.14.4.235".
! U1 setvar "ip.addr" "10.14.4.235"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"10.14.4.235".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
486
SGD Wireless Commands
ip.arp_interval
ip.arp_interval
Description This printer setting allows you to specify the ARP (Address Resolution
Protocol) interval or the ARP cache time out.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the ARP interval or the
ARP cache time out value in seconds.
Format: ! U1 getvar "ip.arp_interval"
This command instructs the printer to change the ARP interval or the ARP cache time out.
Format: ! U1 setvar "ip.arp_interval" "value"
Values: 0 - 30
Default: "0"
Example •
This setvar example shows the value set to "0".
! U1 setvar "ip.arp_interval" "0"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"0".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
ip.bootp.enable
487
ip.bootp.enable
Description This printer setting turns BOOTP on or off. BOOTP is a method for acquiring an IP address, netmask, and gateway automatically on printer power-up. It requires a BOOTP server on the local network.
Type getvar; setvar
Note •
If you are using static IP addressing, the IP protocol must be set to permanent.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the current BOOTP setting.
Format: ! U1 getvar "ip.bootp.enable"
This command instructs the printer to turn BOOTP on or off.
Format: ! U1 setvar "ip.bootp.enable" "value"
Values:
"off" = printer does not use BOOTP to get the IP address
"on" = printer uses BOOTP to get the IP address
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "ip.bootp.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
488
SGD Wireless Commands
ip.dhcp.cid_all
ip.dhcp.cid_all
Description This printer setting defines the entire client identifier (DHCP option 61) if the
DHCP is enabled and "ip.dhcp.cid_type" is set to "0", or "2". The MAC address is used if the type is set to "1".
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier prefix and suffix.
Format: ! U1 getvar "ip.dhcp.cid_all"
This command instructs the printer to change the CID prefix and suffix.
Format: ! U1 setvar "ip.dhcp.cid_all" "value"
Values: A maximum length of 60 characters if the CID type is ASCII, or
120 characters if the CID type is hexadecimal.
Default Value: ""
Example •
This setvar example shows the value set to "printer".
! U1 setvar "ip.dhcp.cid_all" "printer"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"printer".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
ip.dhcp.cid_enable
489
ip.dhcp.cid_enable
Description This command determines if DHCP (option 61) is turned on or off.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the status of the client identifier.
Format: ! U1 getvar "ip.dhcp.cid_enable"
This command instructs the printer to set the status of the client identifier.
Format: ! U1 setvar "ip.dhcp.cid_enable" "value"
Values:
"off" = client identifier is turned off
"on" = client identifier is turned on
Default: "off"
Example •
This setvar example shows the value set to "off".
! U1 setvar "ip.dhcp.cid_enable" "off"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"off".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
490
SGD Wireless Commands
ip.dhcp.cid_prefix
ip.dhcp.cid_prefix
Description This printer setting defines the prefix to be prepended to the DHCP client identifier (option 61) when DHCP is enabled and "ip.dhcp.cid_type" is set to "0"or
"2".
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier prefix.
Format: ! U1 getvar "ip.dhcp.cid_prefix"
This command instructs the printer to change the CID prefix.
Format: ! U1 setvar "ip.dhcp.cid_prefix" "value"
Values: Any text string up to 10 characters if the CID type is ASCII, or
20 characters if the CID type is hexadecimal.
Default Value: ""
Example •
This setvar example shows the value set to "PRT001".
! U1 setvar "ip.dhcp.cid_prefix" "PRT001"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"PRT001".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
ip.dhcp.cid_suffix
491
ip.dhcp.cid_suffix
Description This printer setting defines the unique suffix to be used as the client identifier
(DHCP option 61) if DHCP is enabled and "ip.dhcp.cid_type" is set to "0" or "2".
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier suffix.
Format: ! U1 getvar "ip.dhcp.cid_suffix"
This command instructs the printer to change the CID value.
Format: ! U1 setvar "ip.dhcp.cid_suffix" "value"
Values: The maximum length of a value allowed is 60 ASCII characters when the CID type is ASCII, or 120 hexadecimal values when the CID type is hexadecimal.
Default Value: ""
Example •
This setvar example shows the value set to "printer".
! U1 setvar "ip.dhcp.cid_suffix" "printer"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"printer".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
492
SGD Wireless Commands
ip.dhcp.cid_type
ip.dhcp.cid_type
Description This printer setting defines the type of client identifier (DHCP option 61) that will be sent if DHCP is enabled. A value of "1" means the type of "Ethernet" and the printer’s
MAC address will be used. A value of "0" or "2" means the client identifier sent will be
"ip.dhcp.cid_prefix" concatenated with "ip.dhcp.cid_suffix".
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier type.
Format: ! U1 getvar "ip.dhcp.cid_type"
This command instructs the printer to enable "synthetic" Client Identifier.
Format: ! U1 setvar "ip.dhcp.cid_type" "value"
Values:
"0" = ASCII string
"1" = wireless radio card’s MAC address
"2" = HEX value
Default Value: "1"
Example •
This setvar example shows the value set to "1".
! U1 setvar "ip.dhcp.cid_type" "1"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"1".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
ip.dhcp.enable
493
ip.dhcp.enable
Definition This printer setting turns DHCP on or off. DHCP is a method for acquiring an IP address, netmask, and gateway automatically on printer power-up. It requires a DHCP server on the local network.
Type getvar; setvar
Note •
If you are using static IP addressing, the IP protocol must be set to permanent.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the DHCP status.
Format: ! U1 getvar "ip.dhcp.enable"
This command instructs the printer to turn DHCP on or off.
Format: ! U1 setvar "ip.dhcp.enable" "value"
Values:
"off" = printer does not use DHCP to get the IP address
"on" = printer uses DHCP to get the IP address
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "ip.dhcp.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
494
SGD Wireless Commands
ip.gateway
ip.gateway
Description This command instructs the printer to change the gateway address.
Type getvar; setvar
Note •
This setting refers to the gateway address. A set value is ignored if the IP protocol is not set to permanent.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the gateway address.
Format: ! U1 getvar "ip.gateway"
This command instructs the printer to change the gateway address.
Format: ! U1 setvar "ip.gateway" "value"
Values: Any valid gateway address
Default: "0.0.0.0"
Example •
This setvar example shows the value set to "10.3.5.1".
! U1 setvar "ip.gateway" "10.3.5.1"
When the setvar value is set to "10.3.5.1", the getvar result is "10.3.5.1".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
ip.netmask
495
ip.netmask
Description This setting refers to the subnet mask address. This value is ignored if the IP protocol is not set to permanent.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with subnet mask.
Format: ! U1 getvar "ip.netmask"
This command instructs the printer to change the subnet mask.
Format: ! U1 setvar "ip.netmask" "value"
Values: Any valid subnet mask.
Default: "255.255.255.0"
Example •
This setvar example shows the value set to "255.255.255.0".
! U1 setvar "ip.netmask" "255.255.255.0"
When the setvar value is set to "255.255.255.0", the getvar result is
"255.255.255.0".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
496
SGD Wireless Commands
ip.port
ip.port
Description This printer setting refers to the port number that the TCP print service is listening on. Normal TCP communications from the host should be directed to this port.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the TCP/UDP port number.
Format: ! U1 getvar "ip.port"
This command instructs the printer to set the TCP/UDP port number.
Format: ! U1 setvar "ip.port" "value"
Values: 1 - 65535 (excluding any ports currently used by other services, such as 21, 23, 80, and 515).
Default: "9100"
Example •
This setvar example shows the value set to "9100".
! U1 setvar "ip.port" "9100"
When the setvar value is set to "9100", the getvar result is "9100".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.adhocautomode
497
wlan.adhocautomode
Description This printer setting refers to enabling or disabling the adhoc auto mode.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the adhoc auto mode status.
Format: ! U1 getvar "wlan.adhocautomode"
This command instructs the printer to set the adhoc auto mode.
Format: ! U1 setvar "wlan.adhocautomode" "value"
Values:
"on" = adhoc auto mode enabled
"off" = adhoc auto mode disabled
Default: "off"
Example •
This setvar example shows the value set to "on".
! U1 setvar "wlan.adhocautomode" "on"
When the setvar value is set to "on", the getvar result is "on".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
498
SGD Wireless Commands
wlan.adhocchannel
wlan.adhocchannel
Description This printer setting refers to specifying the wireless channel for adhoc channel.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the wireless channel for adhoc channel mode.
Format: ! U1 getvar "wlan.adhocchannel"
This command instructs the printer to set the wireless channel for adhoc channel mode.
Format: ! U1 setvar "wlan.adhocchannel" "value"
Values: Decimal value between 1 and 16 inclusive
Default: "1"
Example •
This setvar example shows the value set to "1".
! U1 setvar "wlan.adhocchannel" "1"
When the setvar value is set to "1", the getvar result is "1".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.associated
499
wlan.associated
Description This command refers to if the printer is or is not associated with an access point
(AP).
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar
Details
This command instructs the printer to respond with yes or no, which identifies if it is associated with the AP.
Format: ! U1 getvar "wlan.associated"
Example •
In this example, the getvar result is "yes".
! U1 getvar "wlan.associated"
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
500
SGD Wireless Commands
wlan.channel_mask
wlan.channel_mask
Description This printer setting refers to specifying the wireless channel masks to enable and disable various channels.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the wireless channel mask value.
Format: ! U1 getvar "wlan.channel_mask"
This command instructs the printer to set the wireless channel mask value.
Format: ! U1 setvar "wlan.channel_mask" "value"
Values: 4 Hexadecimal digits preceded by "0x" (0x0000 to 0xFFFF). For
commonly used channel masks, see Table 21 on page 500 .
Default: "0x7FF"
Region
United States, Canada, Latin America
Europe, Middle East, Africa, other
Japan
Table 21 • Channel Mask Settings
Channel Mask
0x7FF
0x1FFF
0x3FFF
Example •
This setvar example shows the value set to "0x7FF".
! U1 setvar "wlan.channel_mask" "0x7FF"
When the setvar value is set to "0x7FF", the getvar result is "0x7FF".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.essid
501
wlan.essid
Description This printer setting refers to the printer’s stored ESSID. Setting the ESSID to "" will set the printer in a "broadcast" mode.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the stored ESSID value.
Format: ! U1 getvar "wlan.essid"
This command instructs the printer to change the ESSID.
Format: ! U1 setvar "wlan.essid" "value"
Values: 32 character alphanumeric string
Default: "125"
Example •
This setvar example shows the value set to "125".
! U1 setvar "wlan.essid" "125"
When the setvar value is set to "125", the getvar result is "125".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
502
SGD Wireless Commands
wlan.firmware_version
wlan.firmware_version
Description This command refers to the firmware version of the wireless radio card.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar
Details
This command instructs the printer to respond with the current version of the wireless radio card firmware.
Format: ! U1 getvar "wlan.firmware_version"
Example •
In this example, the getvar result is the version of Symbol 4137 card (for example, "F3.91-69").
! U1 getvar "wlan.firmware_version"
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.ip.addr
503
wlan.ip.addr
Description This command allows you to get or set the wireless print servers’s IP address.
This command is supported only on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Important •
For a set IP address to take affect, the IP protocol must be set to permanent and the print server must be reset.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with its current wireless print server IP address.
Format: ! U1 getvar "wlan.ip.addr"
This command instructs the printer to change its current wireless print server IP address upon powering the printer on.
Format: ! U1 setvar "wlan.ip.addr" "value"
Values: any valid IP address
Default: "0.0.0.0"
Note •
The setvar value of this command can be affected by the wlan.ip.dhcp.enable command.
Example •
This setvar example shows the value set to "10.14.4.235".
! U1 setvar " wlan.
ip.addr" "10.14.4.235"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"10.14.4.235".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
504
SGD Wireless Commands
wlan.ip.arp_interval
wlan.ip.arp_interval
Description This print server setting allows you to specify the ARP (Address Resolution
Protocol) interval or the ARP cache time out for the wireless print server. This command is supported only on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Important •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the ARP interval or the
ARP cache time out value (in seconds) for the wireless print server.
Format: ! U1 getvar "wlan.ip.arp_interval"
This command instructs the printer to change the ARP interval or the ARP cache time out for the wireless print server.
Format: ! U1 setvar "wlan.ip.arp_interval" "value"
Values: 0 - 30
Default: "0"
Example •
This setvar example shows the value set to "0".
! U1 setvar " wlan.
ip.arp_interval" "0"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"0".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.ip.default_addr.enable
505
wlan.ip.default_addr.enable
Description This command allows you to default the wireless print server’s IP address. This command is only supported on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Important •
For a set IP address to take affect, the IP protocol must be set to permanent and the print server must be reset.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to show the status of the setting of the wireless print server’s default IP address feature.
Format:
! U1 getvar "wlan.ip.default_addr.enable"
This command tells the printer to use it’s default address, if no address is provided through DHCP or BOOTP. If you do not assign an IP address after 2 minutes, the 10/100 Internal PS defaults to IP address
192.168.254.254.
Format:
! U1 setvar "wlan.ip.default_addr.enable" "value"
Values:
"on" = enabled
"off" = disabled
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "wlan.ip.default_addr.enable" "on"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"on".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
506
SGD Wireless Commands
wlan.ip.dhcp.cid_all
wlan.ip.dhcp.cid_all
Description This printer setting defines the entire client identifier (DHCP option 61) if
DHCP is enabled on the wireless print server and "wlan.ip.dhcp.cid_type" is set to
"0", or "2". The MAC address is used if the type is set to "1". This command is supported only on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier prefix and suffix of the wireless print server.
Format:
! U1 getvar "wlan.ip.dhcp.cid_all"
This command instructs the printer to change the client identifer prefix and suffix of the wireless print server. The prefix gets cleared and the suffix contains the entire client identifer.
Format:
! U1 setvar "wlan.ip.dhcp.cid_all" "value"
Values: A maximum length of 60 characters if the CID type is ASCII, or
120 characters if the CID type is hexadecimal.
Default Value: ""
Example •
This setvar example shows the value set to "printer".
! U1 setvar " wlan.
ip.dhcp.cid_all" "printer"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"printer".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.ip.dhcp.cid_enable
507
wlan.ip.dhcp.cid_enable
Description This command determines if DHCP (option 61) is turned on or off of the wireless print server. This command is supported only on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the status of the client identifier of the wireless print server.
Format:
! U1 getvar "wlan.ip.dhcp.cid_enable"
This command instructs the printer to set the status of the client identifier of the wireless print server.
Format:
! U1 setvar "wlan.ip.dhcp.cid_enable" "value"
Values:
"off" = client identifier is turned off
"on" = client identifier is turned on
Default: "off"
Example •
This setvar example shows the value set to "off".
! U1 setvar "wlan.ip.dhcp.cid_enable" "off"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"off".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
508
SGD Wireless Commands
wlan.ip.dhcp.cid_prefix
wlan.ip.dhcp.cid_prefix
Description This printer setting defines the prefix to be prepended to the DHCP client identifier (option 61) when DHCP is enabled on the wireless print server and
"wlan.ip.dhcp.cid_type" is set to "0" or "2". This command is supported only on
Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier prefix of the wireless print server.
Format:
! U1 getvar "wlan.ip.dhcp.cid_prefix"
This command instructs the printer to change the CID prefix of the wireless print server.
Format:
! U1 setvar "wlan.ip.dhcp.cid_prefix" "value"
Values: Any text string up to 10 characters if the CID type is ASCII, or 20 characters if the CID type is hexadecimal.
Default Value: ""
Example •
This setvar example shows the value set to "PRT001".
! U1 setvar "wlan.ip.dhcp.cid_prefix" "PRT001"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"PRT001".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.ip.dhcp.cid_suffix
509
wlan.ip.dhcp.cid_suffix
Description This printer setting defines the unique suffix to be used as the client identifier
(DHCP option 61) if DHCP is enabled on the wireless print server and
"wlan.ip.dhcp.cid_type" is set to "0" or "2".
Type getvar; setvar
Important •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier suffix on the wireless print server.
Format:
! U1 getvar "wlan.ip.dhcp.cid_suffix"
This command instructs the printer to change the client identifier suffix value on the wireless print server.
Format:
! U1 setvar "wlan.ip.dhcp.cid_suffix" "value"
Values: The maximum length of a value allowed is 60 ASCII characters when the CID type is ASCII, or 120 hexadecimal values when the CID type is hexadecimal.
Default Value: ""
Example •
This setvar example shows the value set to "printer".
! U1 setvar "wlan.ip.dhcp.cid_suffix" "printer"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"printer".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
510
SGD Wireless Commands
wlan.ip.dhcp.cid_type
wlan.ip.dhcp.cid_type
Description This printer setting defines the type of client identifier (DHCP option 61) that will be sent if DHCP is enabled on the wireless print server. A value of "1" means the type of
"Ethernet" and the printer’s MAC address will be used. A value of "0" or "2" means the client identifier sent will be "wlan.ip.dhcp.cid_prefix" concatenated with
"wlan.ip.dhcp.cid_suffix". This command is supported only on Zebra
ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the client identifier type for the wireless print server.
Format:
! U1 getvar "wlan.ip.dhcp.cid_type"
This command instructs the printer to enable "synthetic" client identifier for the wireless print server.
Format:
! U1 setvar "wlan.ip.dhcp.cid_type" "value"
Values:
"0" = ASCII string
"1" = wireless radio card’s MAC address
"2" = HEX value
Default Value: "1"
Example •
This setvar example shows the value set to "1".
! U1 setvar "wlan.ip.dhcp.cid_type" "1"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"1".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.ip.gateway
511
wlan.ip.gateway
Description This command instructs the printer to change the wireless print server’s gateway address. This command is supported only on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Note •
This setting refers to the gateway address. A set value is ignored if the IP protocol is not set to permanent.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the wireless printer server’s gateway address.
Format:
! U1 getvar "wlan.ip.gateway"
This command instructs the printer to change the wireless printer server’s gateway address.
Format: ! U1 setvar "wlan.ip.gateway" "value"
Values: Any valid gateway address
Default: "0.0.0.0"
Example •
This setvar example shows the value set to "10.3.5.1".
! U1 setvar " wlan.
ip.gateway" "10.3.5.1"
When the setvar value is set to "10.3.5.1", the getvar result is "10.3.5.1".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
512
SGD Wireless Commands
wlan.ip.netmask
wlan.ip.netmask
Description This setting refers to the wireless print server’s subnet mask address. This value is ignored if the IP protocol is not set to permanent. This command is supported only on Zebra
ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with wireless print server’s subnet mask.
Format: ! U1 getvar "wlan.ip.netmask"
This command instructs the printer to change the wireless print servers’s subnet mask.
Format: ! U1 setvar "wlan.ip.netmask" "value"
Values: Any valid subnet mask.
Default: "255.255.255.0"
Example •
This setvar example shows the value set to "255.255.255.0".
! U1 setvar "wlan.ip.netmask" "255.255.255.0"
When the setvar value is set to "255.255.255.0", the getvar result is
"255.255.255.0".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.ip.port
513
wlan.ip.port
Description This printer setting refers to the wireless print server’s port number that the
TCP print service is listening on. Normal TCP communications from the host should be directed to this port.This command is supported only on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the wireless printer server’s TCP/UDP port number.
Format: ! U1 getvar "wlan.ip.port"
This command instructs the printer to set the wireless print server’s
TCP/UDP port number.
Format: ! U1 setvar "wlan.ip.port" "value"
Values: 1 - 65535 (excluding any ports currently used by other services, such as 21, 23, 80, and 515).
Default: "9100"
Example •
This setvar example shows the value set to "9100".
! U1 setvar " wlan.
ip.port" "9100"
When the setvar value is set to "9100", the getvar result is "9100".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
514
SGD Wireless Commands
wlan.ip.protocol
wlan.ip.protocol
Description This command configures the IP addressing method used by the wireless print server. This command is supported only on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar setvar
Details
This command returns the value of the currently selected IP protocol used by the wireless print server.
Format: ! U1 getvar "wlan.ip.protocol"
This command instructs the printer to configure the IP addressing method used by the wireless print server.
Format:
! U1 setvar "wlan.ip.protocol" "value"
Values:
"bootp" = uses the standard bootp addressing method to obtain an
IP address and configuration
"dhcp" = uses the standard dhcp addressing method to obtain an IP address and configuration for a server specified period of time
"rarp" = uses the standard rarp addressing method to obtain an IP address
"glean" = uses the IP address from a PING packet that is sent to its hardware address (unicast address)
“permanent” = uses static values assigned through other commands
"all" = tries all of the dynamic addressing methods, not permanent, to obtain an IP address
Default: "all"
Example •
In this example, the setvar result is the current programming language that the printer is using.
! U1 setvar " wlan.
ip.protocol" "bootp"
What the setvar value is set to is the getvar result. In this example, the getvar result is
"bootp".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.ip.timeout.enable
515
wlan.ip.timeout.enable
Description This network setting refers to enabling the connection timeout on the wireless print server. For this to take effect, the print server must be reset. This command is supported only on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to return whether the timeout checking is enabled on the wireless print server.
Format: ! U1 getvar "wlan.ip.timeout.enable"
This command instructs the printer to enable or disable the timeout checking on the wireless print server.
Format: ! U1 setvar "wlan.ip.timeout.enable" "value"
Values:
"off" = turns off the connection checking
"on" = turns on the connection checking
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "wlan.ip.timeout.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
516
SGD Wireless Commands
wlan.ip.timeout.value
wlan.ip.timeout.value
Description This network setting refers to the number of seconds before the connection times out for the wireless print server. For this to take effect, the print server must be reset.
This command is supported only on Zebra ZM400/ZM600™ and S4M™ printers.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the time, in seconds, before the connection times out.
Format: ! U1 getvar "wlan.ip.timeout.value"
This command instructs the printer to set the the time value of the wireless print server, in seconds, before the connection times out.
Format: ! U1 setvar "wlan.ip.timeout.value" "value"
Values: "0" through "3600"
Default: "300"
Example •
This setvar example shows the value set to "300".
! U1 setvar "wlan.ip.timeout.value" "300"
When the setvar value is set to "300", the getvar result is "300".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.keep_alive.enable
517
wlan.keep_alive.enable
Description This setting controls the printers ability to send a LSAP (link service access point) packet to the access point on an user controllable interval. This feature is included to accommodate access points that require a regular confirmation that wireless clients are still active.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the wlan.keep_alive.enable setting.
Format: ! U1 getvar "wlan.keep_alive.enable"
This command instructs the printer to send a LSAP (link service access point) packet to the access point on an user controllable interval.
Format: ! U1 setvar "wlan.keep_alive.enable" "value"
Values:
"on" = turns on keep_alive
"off" = turns off keep_alive
Default: "on"
Example •
This setvar example shows the value set to "on".
! U1 setvar "wlan.keep_alive.enable" "on"
When the setvar value is set to "on", the getvar result is "on".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
518
SGD Wireless Commands
wlan.keep_alive.timeout
wlan.keep_alive.timeout
Description This printer setting manages the interval at which the LSAP (link service access point) packet is sent.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the wlan.keep_alive.timeout interval value.
Format: ! U1 getvar "wlan.keep_alive.timeout"
This command instructs the printer to configure the frequency at which the printer sends the wlan.keep_alive packet.
Format: ! U1 setvar "wlan.keep_alive.timeout" "value"
Values: 5 to 300 seconds
Default: "15"
Example •
This setvar example shows the value set to "15".
! U1 setvar "wlan.keep_alive.timeout" "15"
When the setvar value is set to "15", the getvar result is "15".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.kerberos.kdc
519
wlan.kerberos.kdc
Description This printer setting refers to the Kerberos Key Distribution Center (KDC). The
KDC is a trusted server which maintains a database with account information for all security principals (users) for a particular site or administrative domain (realm).
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the current Kerberos
KDC.
Format: ! U1 getvar "wlan.kerberos.kdc"
This command instructs the printer to change the Kerberos KDC.
Format: ! U1 setvar "wlan.kerberos.kdc" "value"
Values: 0-32 ASCII characters
Default: "krbtgt"
Example •
This setvar example shows the value set to "krbtgt".
! U1 setvar "wlan.kerberos.kdc" "krbtgt"
When the setvar value is set to "krbtgt", the getvar result is "krbtgt".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
520
SGD Wireless Commands
wlan.kerberos.password
wlan.kerberos.password
Description This printer setting refers to the Kerberos password. The password must correspond to a user profile established on the Kerberos KDC server in use.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the current Kerberos password.
Format: ! U1 getvar "wlan.kerberos.password"
For protection a single "*" prints.
This command instructs the printer to set the Kerberos password.
Format: ! U1 setvar "wlan.kerberos.password" "value"
Values: 0-32 alphanumeric characters
Default: "password"
Example •
This setvar example shows the value set to "password".
! U1 setvar "wlan.kerberos.password" "password"
When the setvar value is set to "password", the getvar result is "*".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.kerberos.realm
521
wlan.kerberos.realm
Description This printer setting refers to the Kerberos realm, an administrative domain with its own Kerberos server (KDC).
Type getvar; setvar
Important •
If you are using a Windows 2000 Server the realm must be all upper-case. For details, see the Windows 2000 Server example below.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the current Kerberos realm.
Format: ! U1 getvar "wlan.kerberos.realm"
This command instructs the printer to change the Kerberos realm.
Format: ! U1 setvar "wlan.kerberos.realm" "value"
Values: 0-64 alphanumeric characters
Default: "kerberos"
Example •
This setvar example shows the value set to "zebra".
! U1 setvar "wlan.kerberos.realm" "zebra"
When the setvar value is set to "zebra", the getvar result is "zebra".
Example •
This setvar example shows the value set to "ZEBRA" on a Windows 2000 server.
! U1 setvar "wlan.kerberos.realm" "ZEBRA"
When the setvar value is set to "
ZEBRA ", the getvar result is " ZEBRA ".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
522
SGD Wireless Commands
wlan.kerberos.username
wlan.kerberos.username
Description This printer setting refers to the Kerberos user name. The user name must correspond to a user profile established on the Kerberos KDC server in use.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the current Kerberos user name.
Format: ! U1 getvar "wlan.kerberos.username"
This command instructs the printer to change the Kerberos user name.
Format: ! U1 setvar "wlan.kerberos.username" "value"
Values: 0-32 alphanumeric characters
Default: "user"
Example •
This setvar example shows the value set to "user".
! U1 setvar "wlan.kerberos.username" "user"
When the setvar value is set to "user", the getvar result is "user".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.mac_addr
523
wlan.mac_addr
Description This command retrieves the MAC address of the wireless print server. This command is supported only on Zebra ZM400/ZM600™ printers.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar
Details
This command instructs the printer to respond with the MAC address of the wireless print server.
Format: ! U1 getvar "wlan.mac_addr"
Example •
In this example, the getvar result is the MAC address for the wireless print server.
! U1 getvar "wlan.mac_addr"
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
524
SGD Wireless Commands
wlan.operating_mode
wlan.operating_mode
Description This printer setting refers to the network operating mode. Infrastructure mode means that the printer will try to associate with an access point. Ad hoc mode means that the printer will try to associate with a device other than an access point and join a standalone network.
Type getvar; setvar
To use "ad hoc" mode configure the printer as follows:
• Set the ESSID to the new network’s ESSID.
• Turn off the DHCP and assign an IP Address to the printer.
• Set the subnet mask on the printer to the new network’s subnet mask.
• Change the operating mode on the printer to "ad hoc".
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the network-mode value.
Format: ! U1 getvar "wlan.operating_mode"
This command instructs the printer to set the network operating mode.
Format: ! U1 setvar "wlan.operating_mode" "value"
Values:
"adhoc" = printer will try to associate with a network device
"infrastructure" = printer will try to associate with an access point
Default: "infrastructure"
Example •
This setvar example shows the value set to "infrastructure".
! U1 setvar "wlan.operating_mode" "infrastructure"
When the setvar value is set to "infrastructure", the getvar result is
"infrastructure".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.password
525
wlan.password
Description This printer setting refers to the generic password that is used by the wireless securities that need a password.
Type getvar; setvar
Important •
Kerberos has its own password field
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with a generic password for wireless securities.
Format: ! U1 getvar "wlan.password"
For protection a single "*" prints.
This command instructs the printer to set a generic password for the wireless securities that need a password.
Format: ! U1 setvar "wlan.password" "value"
Values: A maximum of 32 alphanumeric characters.
Default: "password"
Example •
This setvar example shows the value set to "password".
! U1 setvar "wlan.password" "password"
When the setvar value is set to "password", the getvar result is "*".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
526
SGD Wireless Commands
wlan.preamble
wlan.preamble
Description This printer setting selects the radio preamble length to be used.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the current preamble length.
Format: ! U1 getvar "wlan.preamble"
This command instructs the printer to set the preamble length.
Format: ! U1 setvar "wlan.preamble" "value"
Values:
"long" = enables long preamble
"short" = enables short preamble
Default: "long"
Example •
This setvar example shows the value set to "long".
! U1 setvar "wlan.preamble" "long"
When the setvar value is set to "long", the getvar result is "long".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.private_key_password
527
wlan.private_key_password
Description This printer setting allows the setting of the optional private key password.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the value of the private key password.
Format: ! U1 getvar "wlan.private_key_password"
For protection a single "*" prints.
This command instructs the printer to set the private key password.
Format: ! U1 setvar "wlan.private_key_password"
"value"
Values: A maximum of 32 alphanumeric characters
Default: ""
Example •
This setvar example shows the value set to "password".
! U1 setvar "wlan.private_key_password" "password"
When the setvar value is set to "password", the getvar result is "*".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
528
SGD Wireless Commands
wlan.roam.interval
wlan.roam.interval
Description This printer setting refers to specifying the wireless roam interval.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the specified roam interval.
Format: ! U1 getvar "wlan.roam.interval"
This command instructs the printer to set the wireless roam interval.
Format: ! U1 setvar "wlan.roam.interval" "value"
Values: Decimal values between 5 and 255 inclusive
Default: "20"
Example •
This setvar example shows the value set to "20".
! U1 setvar "wlan.roam.interval" "20"
When the setvar value is set to "20", the getvar result is "20".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.roam.signal
529
wlan.roam.signal
Description This printer setting refers to specifying the wireless roam signal.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the specified wireless roam signal.
Format: ! U1 getvar "wlan.roam.signal"
This command instructs the printer to set the wireless roam signal.
Format: ! U1 setvar "wlan.roam.signal" "value"
Values: Decimal values between 1 and 75 inclusive.
Default: "50"
Example •
This setvar example shows the value set to "50".
! U1 setvar "wlan.roam.signal" "50"
When the setvar value is set to "50", the getvar result is "50".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
530
SGD Wireless Commands
wlan.security
wlan.security
Description This printer setting allows you to specify both the wireless encryption type and authentication type in one command.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
Note •
When using certificate files, Zebra printers support:
• using Privacy Enhanced Mail (PEM) formatted certificate files.
• using the client certificate and private key as two files, each downloaded separately.
• using exportable PAC files for EAP-FAST.
These certificate files can only be sent using ZPL, not SGD. The ZPL command to use when sending these certificate files is the ~DY command.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.security
531
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to return the name and not the type. If an invalid security mode is entered the printer returns Invalid Mode.
Format: ! U1 getvar "wlan.security" "value"
This command instructs the printer to set the wireless security value.
Format: ! U1 setvar "wlan.security" "value"
Values:
"1" = No Security or "none"
"2" = WEP 40-bit or "wep 40-bit"
"3" = WEP 128-bit or "wep 128-bit"
"4" = EAP-TLS or "eap-tls"
"5" = EAP-TTLS or "eap-ttls"
"6" = EAP-FAST or "eap-fast"
"7" = PEAP or "peap"
"8" = LEAP or "leap"
"9" = WPA PSK or "wpa psk"
"10" = WPA EAP-TLS or "wpa eap-tls"
"11" = WPA EAP-TTLS or "wpa eap-ttls"
"12" = WPA EAP-FAST or "wpa eap-fast"
"13" = WPA PEAP or "wpa peap"
"14" = WPA LEAP or "wpa leap"
Default: "1"
Example •
This setvar example shows the value set to "1".
! U1 setvar "wlan.security" "1"
When the setvar value is set to "1", the getvar result is "none".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
532
SGD Wireless Commands
wlan.signal_noise
wlan.signal_noise
Description This command returns the signal noise on the wireless network. Values above
40% represent a very a very significant noise, and radio communication is not reliable.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar
Details
This command instructs the printer to return the current signal noise on the wireless network.
Format: ! U1 getvar "wlan.signal_noise"
Example •
In this example, the getvar result is the current signal_noise value.
! U1 getvar "wlan.signal_noise"
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.signal_quality
533
wlan.signal_quality
Description This command instructs the printer to return the current signal quality of the wireless network. Values below 40% represent a poor signal quality, and radio communication is not reliable.
Type getvar
Note •
.These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar
Details
This command instructs the printer to return the current signal quality of the wireless network.
Format: ! U1 getvar "wlan.signal_quality"
Example •
In this example, the getvar result is the current signal_quality value.
! U1 getvar "wlan.signal_quality"
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
534
SGD Wireless Commands
wlan.signal_strength
wlan.signal_strength
Description This command returns the signal strength of the connection to the access point as a percentage value between zero (not connected) and 100 (strongest signal). Values below
40% represent a very poor signal and radio communication is not reliable.
Type getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the command for this format:
Commands
getvar
Details
This command instructs the printer to respond with the current signal strength.
Format: ! U1 getvar "wlan.signal_strength"
Example •
In this example, the getvar result is "93".
! U1 getvar "wlan.signal_strength"
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.station_name
535
wlan.station_name
Description This printer setting refers to the station name.
Type setvar;getvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the station name value.
Format: ! U1 getvar "wlan.station_name"
This command instructs the printer to set the station name.
Format: ! U1 setvar "wlan.station_name" "value"
Values: A maximum of 32 alphanumeric characters
Default: "ZEBRA"
Example •
This setvar example shows the value set to "ZEBRA".
! U1 setvar "wlan.station_name" "ZEBRA"
When the setvar value is set to "ZEBRA", the getvar result is "ZEBRA".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
536
SGD Wireless Commands
wlan.tx_power
wlan.tx_power
Description This printer setting refers to specifying the wireless transmit power.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the wireless transmit power.
Format: ! U1 getvar "wlan.tx_power"
This command instructs the printer to set the wireless transmit power.
Format: ! U1 setvar "wlan.tx_power" "value"
Values: Decimal values of 1, 5, 20, 30, 50, 100
Default: "100"
Example •
This setvar example shows the value set to "100".
! U1 setvar "wlan.tx_power" "100"
When the setvar value is set to "100", the getvar result is "100".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.tx_rate
537
wlan.tx_rate
Description This printer setting refers to specifying the wireless transmit rate.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the wireless transmit rate.
Format: ! U1 getvar "wlan.tx_rate"
This command instructs the printer to set the wireless transmit rate.
Format: ! U1 setvar "wlan.tx_rate" "value"
Values: 1, 2, 5.5, 11, all
Default: "all"
Example •
This setvar example shows the value set to "all".
! U1 setvar "wlan.tx_rate" "all"
When the setvar value is set to "all", the getvar result is "all".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
538
SGD Wireless Commands
wlan.username
wlan.username
Description This printer setting refers to the generic user name that is used by the wireless securities that need a user name.
Type getvar; setvar
Important •
Kerberos has its own user name field.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with a generic user name for the wireless securities that need a user name.
Format: ! U1 getvar "wlan.username"
This command instructs the printer to set a generic user name for wireless securities that need a user name.
Format: ! U1 setvar "wlan.username" "value"
Values: A maximum of 32 alphanumeric characters
Default: "user"
Example •
This setvar example shows the value set to "user".
! U1 setvar "wlan.username" "user"
When the setvar value is set to "user", the getvar result is "user".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.wep.auth_type
539
wlan.wep.auth_type
Description For the WEP security type, this printer setting selects the authentication type to be used between the printer and the access point. The authentication types are open system and shared key.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to retrieve the current WEP authentication type.
Format: ! U1 getvar "wlan.wep.auth_type"
This command instructs the printer to set the WEP authentication type.
Format: ! U1 setvar "wlan.wep.auth_type" "value"
Values:
"open" = enables the open authentication type
"shared" = enables the shared authentication type
Default: "open"
Example •
This setvar example shows the value set to "open".
! U1 setvar "wlan.wep.auth_type" "open"
When the setvar value is set to "open", the getvar result is "open".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
540
SGD Wireless Commands
wlan.wep.index
wlan.wep.index
Description This printer setting refers to the WEP (Wired Equivalent Privacy) encryption key index. This printer setting determines which one of the four encryption keys is to be used by the client (printer).
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the encryption key index.
Format: ! U1 getvar "wlan.wep.index"
This command instructs the printer to set the encryption key index.
Format: ! U1 setvar "wlan.wep.index" "value"
Values:
"1" = enables encryption key 1
"2" = enables encryption key 2
"3" = enables encryption key 3
"4" = enables encryption key 4
Default: "1"
Example •
This setvar example shows the value set to "1".
! U1 setvar "wlan.wep.index" "1"
When the setvar value is set to "1", the getvar result is "1".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.wep.key1
541
wlan.wep.key1
Description This printer setting refers to the first indexed WEP encryption key. The WEP encryption key is a hexadecimal or string value. This key should match the wireless network
WEP encryption key 1.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the encryption key.
Format: ! U1 getvar "wlan.wep.key1"
For protection a single "*" prints.
This command instructs the printer to set the encryption key.
Format: ! U1 setvar "wlan.wep.key1" "value"
Values:
10 hexadecimal characters for 40-bit encryption
26 hexadecimal characters for 128-bit encryption
Default: All zeros
Example •
This setvar example shows the value set to "A1B2C3D4F5".
! U1 setvar "wlan.wep.key1" "A1B2C3D4F5"
When the setvar value is set to "A1B2C3D4F5", the getvar result is "*".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
542
SGD Wireless Commands
wlan.wep.key2
wlan.wep.key2
Description This printer setting refers to the second indexed WEP encryption key. The
WEP encryption key is a hexadecimal string value. This key should match the wireless network WEP encryption key 2.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer respond with the encryption key.
Format: ! U1 getvar "wlan.wep.key2"
For protection a single "*" prints.
This command instructs the printer to set the encryption key.
Format: ! U1 setvar "wlan.wep.key2" "value"
Values:
10 hexadecimal characters for 40-bit encryption
26 hexadecimal characters for 128-bit encryption
Default: All zeros
Example •
This setvar example shows the value set to "A1B2C3D4F5".
! U1 setvar "wlan.wep.key2" "A1B2C3D4F5"
When the setvar value is set to "A1B2C3D4F5", the getvar result is "*".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.wep.key3
543
wlan.wep.key3
Description This printer setting refers to the third indexed WEP encryption key. The WEP encryption key is a hexadecimal string value. This key should match the wireless network
WEP encryption key 3.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the encryption key.
Format: ! U1 getvar "wlan.wep.key3"
Format: For protection a single "*" prints.
This command instructs the printer to set the encryption key.
Format: ! U1 setvar "wlan.wep.key3" "value"
Values:
10 hexadecimal characters for 40-bit encryption
26 hexadecimal characters for 128-bit encryption
Default: All zeros
Example •
This setvar example shows the value set to "A1B2C3D4F5".
! U1 setvar "wlan.wep.key3" "A1B2C3D4F5"
When the setvar value is set to "A1B2C3D4F5", the getvar result is "*".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
544
SGD Wireless Commands
wlan.wep.key4
wlan.wep.key4
Description This printer setting refers to the fourth indexed WEP encryption key. The WEP encryption key is a hexadecimal string value. This key should match the wireless network
WEP encryption key 4.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer respond with the encryption key.
Format: ! U1 getvar "wlan.wep.key4"
For protection a single "*" prints.
This command instructs the printer to set the encryption key.
Format: ! U1 setvar "wlan.wep.key4" "value"
Values:
10 hexadecimal characters for 40-bit encryption
26 hexadecimal characters for 128-bit encryption
Default: All zeros
Example •
This setvar example shows the value set to "A1B2C3D4F5".
! U1 setvar "wlan.wep.key4" "A1B2C3D4F5"
When the setvar value is set to "A1B2C3D4F5", the getvar result is "*".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
SGD Wireless Commands
wlan.wep.key_format
545
wlan.wep.key_format
Description This printer setting specifies the format for the WEP key.
Type getvar; setvar
Important •
This printer setting should proceed any of the wep.key settings if you select a non-default value.
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the WEP key format.
Format: ! U1 getvar "wep.key_format"
This command instructs the printer to set the WEP key format.
Format: ! U1 setvar "wlan.wep.key_format" "value"
Values:
"ascii" = WEP key is set by ASCII string
"hex" = WEP key is a Hex string
Default: "hex"
Example •
This setvar example shows the value set to "ascii".
! U1 setvar "wlan.wep.key_format" "ascii"
When the setvar value is set to "ascii", the getvar result is "ascii".
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
546
SGD Wireless Commands
wlan.wpa.psk
wlan.wpa.psk
Description This printer setting specifies the pre-shared key (PSK) value to use when the
WPA authentication is set to PSK.
Type getvar; setvar
Note •
These are key reference links for this command:
•
For details on SGD command structure, see Command Structure on page 482
.
•
For details on the syntax and use of SGD commands, see SGD Command Support on page 601 .
This table identifies the commands for this format:
Commands
getvar setvar
Details
This command instructs the printer to respond with the pre-shared key.
Format: ! U1 getvar "wlan.wpa.psk"
For protection a single "*" prints.
This command instructs the printer to set the pre-shared key.
Format: ! U1 setvar "wlan.wpa.psk" "value"
Values: 64 hexadecimal digits
Default: 64 zeros (00000000...)
Example •
This setvar example shows the value set to "00000000...".
! U1 setvar "wlan.wpa.psk" "00000000..."
When the setvar value is set to "00000000...", the getvar result is "*".
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
A
Zebra Code Pages
This section provides you with a visual of the different Zebra Code pages.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
548
Zebra Code Pages
Zebra Code Page 850
Zebra Code Page 850
This is the Zebra Code Page 850:
Note •
For hex 5C, a cent sign prints for all printer resident fonts. A backslash prints for downloaded fonts.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Zebra Code Pages
Zebra Code Page 850
549
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
550
Zebra Code Pages
Zebra Code Page 1252
Zebra Code Page 1252
This is the Zebra Code Page 1252:
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Zebra Code Pages
Zebra Code Page 1252
551
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
552
Zebra Code Pages
Zebra Code Page 1252
Notes •
___________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
B
ASCII
This section shows the American Standard Code for Information Interchange (ASCII) code used by Zebra printers.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
554
ASCII
ASCII Code Chart
HEX Character
1C
1D
1E
1F
18
19
1A
1B
14
15
16
17
10
11
12
13
0C
0D
0E
0F
08
09
0A
0B
04
05
06
07
00
01
02
03
FS
GS
RS
US
CAN
EM
SUB
ESC
DLE
DC1
DC2
DC3
DC4
NAK
SYN
ETB
FF
CR
SO
SI
BS
HT
LF
VT
NUL
SOH
STX
ETX
EOT
ENQ
ACK
BEL
ASCII Code Chart
Shaded areas in
indicate characters not recommended for command prefix, format prefix, or delimiter characters.
Table 22 • Zebra Used ASCII Code
HEX Character
3C
3D
3E
3F
38
39
3A
3B
34
35
36
37
30
31
32
33
2C
2D
2E
2F
28
29
2A
2B
24
25
26
27
20
21
22
23
>
?
<
=
;
:
8
9
6
7
4
5
2
3
0
1
/
.
-
,
*
+
)
(
&
‘
$
%
Space
!
“
#
HEX Character
5C
5D
5E
5F
58
59
5A
5B
54
55
56
57
50
51
52
53
4C
4D
4E
4F
48
49
4A
4B
44
45
46
47
40
41
42
43
^
_
]
\
Z
[
X
Y
T
U
V
W
R
S
P
Q
L
M
N
O
J
K
H
I
F
G
D
E
@
A
B
C
HEX Character
7C
7D
7E
7F
78
79
7A
7B
74
75
76
77
70
71
72
73
6C
6D
6E
6F
68
69
6A
6B
64
65
66
67
60
61
62
63
|
}
~
DEL z
{ x y v w t u s r p q n o l m j k h i f g d e b c
‘ a
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
C
Fonts and Bar Codes
This section provides information about different fonts (type faces) and bar codes that can be used with the printer.
Contents
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
556
Fonts and Bar Codes
Standard Printer Fonts
Standard Printer Fonts
Most Zebra printers come standard with 15 bitmapped fonts and one scalable font, see
Figure 6 . Additional downloadable bitmapped and scalable fonts are also available. Character
size and density (how dark it appears) depend on the density of the printhead and the media used.
Figure 6 • Examples of the Standard Printer Fonts
13979L-005 Rev. A
To use one of these fonts, you must either use the change alphanumeric default font command
(^CF) or specify an alphanumeric field command (^A).
The standard Zebra character set is Code 850 for character values greater than 20 HEX. There
are six HEX character values below 20 HEX that are also recognized. Figure 7 shows how
these character values are printed.
Note •
Unidentified characters should default to a space.
ZPL II Programming Guide 5/17/07
Fonts and Bar Codes
Standard Printer Fonts
557
Figure 7 • Recognized HEX Values below 20 HEX
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
558
Fonts and Bar Codes
Proportional and Fixed Spacing
Proportional and Fixed Spacing
Proportional spacing is different than fixed spacing. In
Table 23 , the intercharacter gap (ICG),
the space between characters, is constant for fonts A through H, which means that the spacing between all characters is the same. For example, the spacing between the letters MW is the same as between the letters IE.
Figure 8 is an example of fixed space fonts:
Figure 8 • Fixed Space Fonts Proportion
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Fonts and Bar Codes
Proportional and Fixed Spacing
559
The baseline is the imaginary line on which the bottom (base) of all characters (except any descenders) rest. The area between the baseline and the bottom of the matrix is used for any character “descenders.” Baseline numbers define where the baseline is located in relationship to the top of the matrix. For example, the baseline for font “E” is 23 dots down from the top of the matrix.
Table 23 • Intercharacter Gap and Baseline Parameters
Font
F
G
H
GS
0
A
B
C,D
E
H x W (in dots)
9 x 5
11 x 7
18 x 10
28 x 15
26 x 13
60 x 40
21 x 13
24 x 24
DEFAULT: 15 x 12
Type
U-L-D
U
U-L-D
OCR-B
U-L-D
U-L-D
OCR-A
SYMBOL
Intercharacter Gap
(in dots)
2
5
1
2
3
8
6
PROPORTIONAL
PROPORTIONAL
Baseline
(in dots)
7
11
14
23
21
48
21
3 x HEIGHT/4
3 x HEIGHT/4
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
560
Fonts and Bar Codes
Scalable Versus Bitmapped Fonts
Scalable Versus Bitmapped Fonts
For scalable fonts, setting the height and width equally produces characters that appear the most balanced. Balanced characters are pleasing to the eye because actual height and width are approximately equal to each other. This is achieved through the use of a smooth-scaling algorithm in the printer.
For bitmapped fonts, this balancing is built into the font. In actuality, the height of a bitmap font is slightly larger than the width. Bitmap fonts are always at the maximum size of the character’s cell.
Scalable Fonts
All dot parameters used in the commands to create scalable fonts are translated into a point size because scalable fonts are measured in point sizes, not dots. To determine how many dots to enter to obtain a particular point size, use the following formula. The actual point size will be an approximate value.
Dots = (Point size) x (Dots per inch of Printer)
72
• For printers using a 6 dot/mm printhead the “dots per inch of printer” value is 152.4
• For printers using a 8 dot/mm printhead the “dots per inch of printer” value is 203.2
• For printers using a 12 dot/mm printhead the “dots per inch of printer” value is 304.8
• For printers using a 24 dot/mm printhead the “dots per inch of printer” value is 609.6
The actual height and width of the character in dots will vary, depending on the font style and the particular character. Therefore, some characters will be smaller and some will be larger than the actual dot size requested. The baselines for all scalable fonts are calculated against the dot size of the cell. The baseline is 3/4 down from the top of the cell. For example, if the size of the cell is 80 dots, the baseline will be 60 dots (3/4) down from the top of the cell.
For more information concerning fonts and related commands, see ~DB on page 149
Bitmapped Fonts
Internal bitmapped fonts can be magnified from 1 to 10 times their normal (default) size. The magnification factor is in whole numbers. Therefore, if the normal size of a bitmapped font is
9 dots high and 5 dots wide, a magnification factor of 3 would produce a character of 27 dots high and 15 dots wide. Height and width can be magnified independently.
Magnification Factor
The font commands contain parameters for entering the height and width of printed characters.
The values are always entered in dots. When entering these values for bitmapped fonts, use the following formula:
Base Height x Magnification Factor = Height Parameter Value
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
Fonts and Bar Codes
Scalable Versus Bitmapped Fonts
561
The same principle applies when calculating width.
Example:
Base height = 9 dots
Base width = 5 dots
To magnify a bitmapped character with the above specifics 3 times its size:
Height parameter = 27 [9 x 3]
Width parameter = 15 [5 x 3]
Changing Bitmapped Font Size
Alphanumeric field command (^A) parameters h and w control the magnification and, therefore, the ultimate size of the font. The parameter is specified in dots, but ZPL II actually uses an integer multiplier times the original height/width of the font. For example, if you specify
^AD,54 you get characters three times their normal size (54 dots high), but if you specify
^AD,52 you receive the same result, not characters 52 dots high.
Defining only the height or width of a bitmapped font forces the magnification to be proportional to the parameter defined. If neither is defined, the ^CF height and width are used.
For example, if the height is twice the standard height, the width will be twice the standard width.
Example •
If a ^CF command, with height and width parameters defined, is used to set the first font, any ^A commands (to select a different font) that follow must have the height and width parameter filled in.
If this is not done, the newly selected font will be magnified using values for the ^CF height and width parameters. This is an example of what happens:.
ZPL II CODE
^XA^LL1800
^FO50,50^CFD,26,10^FDZEBRA....^FS
^FO50,100^FD"Bar Code, Bar None"^FS
^FO50,200^AA^FDZEBRA....^FS
^FO50,250^FD"Bar Code, Bar None"^FS
^XZ
GENERATED LABEL
ZPL II Programming Guide 13979L-005 Rev. A
562
Fonts and Bar Codes
Font Matrices
Font
A
B
C, D
G
H
E
F
GS
0
Font Matrices
Type Key U = Uppercase, L = Lowercase, D = Descenders
Matrix
HxW (in dots)
9 x 5
11 x 7
18 x 10
21 x 10
26 x 13
60 x 40
17 x 11
24 x 24
Default: 15 x 12
U
Table 24 • 6 dot/mm printhead
Type
U-L-D
U-L-D
OCR-B
U-L-D
U-L-D
OCR-A
SYMBOL
HxW (in in.)
0.059 x 0.039
0.072 x 0.059
0.118 x 0.079
0.138 x 0.085
0.170 x 0.105
0.394 x 0.315
0.111 x 0.098
0.157 x 0.157
Character Size
Char./in.
HxW (in mm) Char. /mm
25.4
16.9
12.7
11.7
9.53
3.18
10.2
6.35
1.50 x 0.99
1.82 x 1.50
2.99 x 2.00
3.50 x 2.16
4.32 x 2.67
10.0 x 8.00
2.81 x 2.48
3.98 x 3.98
1.01
0.066
0.05
0.46
0.37
0.125
0.40
0.251
Font
U
V
S
T
0
GS
P
Q
R
A
B
C, D
G
H
E
F
Matrix
HxW (in dots)
9 X 5
11 X 7
18 X 10
28 x 15
26 x 13
60 x 40
21 x 13
24 x 24
20 x 18
28 x 24
35 x 31
40 x 35
48 x 42
59 x 53
80 x 71
Default: 15 x 12
Table 25 • 8 dot/mm (203 dpi) printhead
Type
U-L-D
U
U-L-D
OCR-B
U-L-D
U-L-D
OCR-A
SYMBOL
U-L-D
U-L-D
U-L-D
U-L-D
U-L-D
U-L-D
U-L-D
U-L-D
HxW (in in.)
0.044 x 0.030
0.054 x 0.044
0.089 x 0.059
0.138 x 0.098
0.128 x 0.079
0.295 x 0.197
0.103 x 0.093
0.118 x 0.118
0.098 x 0.089
0.138 x 0.118
0.172 x 0.153
0.197 x 0.172
0.236 x 0.207
0.290 x 0.261
0.394 x 0.349
Scalable
Character Size
Char./in.
HxW (in mm) Char. /mm
8.5
N/A
N/A
N/A
N/A
N/A
N/A
N/A
33.3
22.7
16.9
10.2
12.7
4.2
10.8
1.12 x 0.76
1.37 x 1.12
2.26 x 1.12
3.50 x 2.49
3.25 x 2.00
7.49 x 5.00
2.61 x 2.36
2.99 x 2.99
2.50 x 2.25
3.50 x 3.00
4.38 x 3.88
5.00 x 4.38
6.00 x 5.25
7.38 x 6.63
10.00 x 8.88
Scalable
0.334
N/A
N/A
N/A
N/A
N/A
N/A
N/A
1.31
0.89
0.66
0.40
0.50
0.167
0.423
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Fonts and Bar Codes
Font Matrices
563
Font
V
0
T
U
P
Q
R
S
F
G
H
GS
A
B
C, D
E
Matrix
HxW (in dots)
9 X 5
11 X 7
18 X 10
42 x 20
26 x 13
60 x 40
34 x 22
24 x 24
20 x 18
28 x 24
35 x 31
40 x 35
48 x 42
59 x 53
80 x 71
Default: 15 x 12
Table 26 • 12 dot/mm (300 dpi) printhead
Type
U-L-D
U
U-L-D
OCR-B
U-L-D
U-L-D
OCR-A
SYMBOL
U-L-D
U-L-D
U-L-D
U-L-D
U-L-D
U-L-D
U-L-D
U-L-D
HxW (in in.)
0.030 x 0.020
0.036 x 0.030
0.059 x 0.040
0.138 x 0.085
0.085 x 0.053
0.197 x 0.158
0.111 x 0.098
0.079 x 0.079
0.067 x 0.060
0.093 x 0.080
0.117 x 0.103
0.133 x 0.177
0.160 x 0.140
0.197 x 0.177
0.267 x 0.237
Scalable
Character Size
Char./in.
HxW (in mm) Char. /mm
N/A
N/A
N/A
N/A
N/A
N/A
N/A
50.8
33.8
25.4
23.4
19.06
6.36
10.20
12.70
0.75 x 0.50
0.91 x 0.75
1.50 x 1.00
1.75 x 1.08
2.16 x 1.34
5.00 x 4.00
2.81 x 2.48
1.99 x 1.99
1.69 x 1.52
2.37 x 2.03
2.96 x 2.62
3.39 x 2.96
4.06 x 3.56
5.00 x 4.49
6.77 x 6.01
Scalable
N/A
N/A
N/A
N/A
N/A
N/A
N/A
2.02
1.32
1.00
0.92
0.74
0.25
0.40
0.52
Font
U
V
S
T
0
GS
P
Q
R
A
B
C, D
G
H
E
F
Matrix
HxW (in dots)
9 X 5
11 X 7
18 X 10
42 x 20
26 x 13
60 x 40
34 x 22
24 x 24
20 x 18
28 x 24
35 x 31
40 x 35
48 x 42
59 x 53
80 x 71
Default: 15 x 12
Table 27 • 24 dot/mm (600 dpi) printhead
Type
U-L-D
U
U-L-D
OCR-B
U-L-D
U-L-D
OCR-A
SYMBOL
U-L-D
U-L-D
U-L-D
U-L-D
U-L-D
U-L-D
U-L-D
U-L-D
HxW (in in.)
0.015 x 0.010
0.018 x 0.015
0.030 x 0.020
0.137 x 0.087
0.043 x 0.027
0.100 x 0.080
0.100 x 0.093
0.040 x 0.040
0.067 x 0.060
0.093 x 0.080
0.117 x 0.103
0.133 x 0.117
0.160 x 0.140
0.197 x 0.177
0.267 x 0.237
Scalable
Character Size
Char./in.
HxW (in mm) Char. /mm
25.00
N/A
N/A
N/A
N/A
N/A
N/A
N/A
100.00
66.66
50.00
11.54
37.5
12.50
10.71
0.38 x 0.25
0.46 x 0.38
0.77 x 0.51
3.47 x 2.20
1.10 x 0.68
2.54 x 2.04
2.54 x 2.37
1.02 x 1.02
1.69 x 1.52
2.37 x 2.03
2.96 x 2.62
3.39 x 2.96
4.06 x 3.56
5.00 x 4.49
6.77 x 6.01
Scalable
1.00
N/A
N/A
N/A
N/A
N/A
N/A
N/A
4.00
2.60
2.0
0.45
1.50
0.50
0.42
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
564
Fonts and Bar Codes
Bar Codes
Bar Codes
Every bar code contains data made up of a sequence of light spaces and dark bars that represent letters, numbers, or other graphic characters. The usable characters differ among the various kinds of bar codes. Each bar code section in the
ZPL Commands on page 29 provides a
table of applicable characters. Start and stop characters and check digits are used by many, but not all, bar codes. These will be indicated in the specific bar code explanations.
Zebra printers can print the following kinds of bar codes:
•
•
Bar code modulus “X” dimensions
Picket fence (non-rotated) orientation:
•
203 dpi = 0.0049 in. mil to 0.049 in.
•
•
•
300 dpi = 0.0033 in. mil to 0.033 in.
Ladder (rotated) orientation:
203 dpi = 0.0049 in. mil to 0.049 in.
300 dpi = 0.0039 in. mil to 0.039 in.
•
•
•
•
•
•
•
•
•
Two-dimensional bar codes
Aztec
Code 49
Maxi Code
TLC39
PDF-417
QR Code
Codablock
DataMatrix
Micro-PDF417
•
•
•
•
Bar code ratios
2:1
7:3
5:2
3:1
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Linear bar codes
Codabar
Code 11
Code 39
Code 93
Code 128 with subsets A/B C and
UCC Case Codes
ISBT-128
UPC-A
UPC-E
EAN-8
EAN-13
UPC and EAN 2 or 5 digit extensions
Planet Code
Plessey
Postnet
Standard 2 of 5
Industrial 2 of 5
Interleaved 2 of 5
LOGMARS
MSI
RSS-14
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Fonts and Bar Codes
Bar Codes
565
Basic Format for Bar Codes
The basic format for bar codes is quiet zone, start character, data, check digit, stop character, and quiet zone. Not all bar codes require each of these elements.
Every bar code requires a quiet zone. A quiet zone (sometimes called a “clear area”) is an area adjacent to the machine-readable symbols that ensure proper reading (decoding) of the symbols. No printing is permissible within this area. Preprinted characters, borders, and background color are acceptable if they are invisible to the reading device; these are used in some applications but restrict the type of reading device that can be used. The size of the quiet zone depends on the size of bar widths (usually 10 times the width of the narrow bar).
Figure 9 • Quiet Zone in a Bar Code
Quiet Zone Quiet Zone
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
566
Fonts and Bar Codes
Bar Codes
Bar Code Field Instructions
To create a bar code, a bar code field command must be contained in the label format. Table 28
shows the bar code field commands. The number in brackets denotes the print ratio. Each command produces a unique bar code.
Important •
(*) for Fixed Printing Ratio means that the ratio between the width of the bars in the code is a fixed standard and cannot be changed.
As another reference to the bar code field commands ratio, see Table 11 on page 131 .
ZPL Command
^BD
^BE
^BF
^BI
^B9
^BA
^BB
^BC
^B4
^B5
^B7
^B8
^B0
^B1
^B2
^B3
^BO
^BP
^BQ
^BR
^BJ
^BK
^BL
^BM
^BS
^BU
Table 28 • Bar Code Field Commands
Command Description
Aztec Bar Code Parameters
Code 11 (USD-8)
Interleaved 2 of 5
Code 39 (USD-3 and 3 of 9)
Code 49 (*)
Planet Code Bar Code
PDF417 (*)
EAN-8 (*)
UPC-E
Code 93 (USS-93)(*)
CODABLOCK A, E, F (*)
Code 128 (USD-6) (*)
UPS MaxiCode (*)
EAN-13
Micro-PDF417
Industrial 2 of 5
Standard 2 of 5
ANSI Codabar (USD-4 and 2 of 7)
LOGMARS
MSI
Aztec Bar Code Parameters
Plessey
QR Code (*)
RSS (reduced Space Symbology Bar Code)
UPC/EAN Extensions (*)
UPC-A (*)
Ratio
[2.0 - 3.0]
[2.0 - 3.0]
[2.0 - 3.0]
[2.0 - 3.0]
[2.0 - 3.0]
[Fixed]
[2.0 - 3.0]
[Fixed]
[Fixed]
[Fixed]
[Fixed]
[Fixed]
[2.0 - 3.0]
[2.0 - 3.0]
[2.0 - 3.0]
[Fixed]
[Fixed]
[Fixed]
[Fixed]
[Fixed]
[Fixed]
[Fixed]
[Fixed]
[Fixed]
[Fixed]
[Fixed]
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Fonts and Bar Codes
Bar Codes
567
ZPL Command
^BX
^BZ
Table 28 • Bar Code Field Commands
Command Description
Data Matrix (*)
PostNet (*)
Ratio
[Fixed]
[Fixed]
Additionally, each bar code field command can be issued with a definition parameter string.
The parameter string defines field rotation, height, and interpretation line status for all bar codes. For some bar codes, the parameter string also sets a check digit, start character, and/or stop character. Use the definition parameter string to command the printer to print bar codes of appropriate heights and densities that conform to the specifications of the application.
The use of the parameter string is optional because all parameters have default values. If the default values for all of the bar code parameters suit the application, then only the bar code command needs to be entered.
Parameters in bar code field commands are “position specific.” If a value (other than the default value) is manually entered for one parameter the ZPL II delimiter character (a comma) must be used to mark the position of the preceding parameters in the string.
To change just the third parameter, enter two commas and then the value for the third parameter. The default values will be automatically used for the first and second parameters.
Bar Code Command Groups
Bar code commands are organized into four groups. Each group represents a type of bar code.
through Table 32 identify the groups and the bar codes they contain:
ZPL Command
^BJ
^BK
^BM
^BO
^B0
^B1
^B5
^BI
^BP
^BZ
Table 29 • Numeric Only Bar Codes
Command Description
Aztec Bar Code Parameters
Code 11
Planet Code Bar Code
Industrial 2 of 5
Standard 2 of 5
ANSI Codabar (or NW-7)
MSI
Aztec Bar Code Parameters
Plessey
POSTNET
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
568
Fonts and Bar Codes
Bar Codes
ZPL Command
^B0
^B8
^B9
^BE
^BO
^BS
^BU
Table 30 • Retail Labeling Bar Codes
Command Description
Aztec Bar Code Parameters
EAN-8
UPC-E
EAN-13
Aztec Bar Code Parameters
UPC/EAN extensions
UPC-A
ZPL Command
^B0
^B3
^BA
^BC
^BL
^BO
Table 31 • Alphanumeric Bar Code
Command Description
Aztec Bar Code Parameters
Code 39
Code 93
Code 128
LOGMARS
Aztec Bar Code Parameters
ZPL Command
^BD
^BF
^BQ
^BO
^B0
^B4
^B7
^BB
^BR
^BT
^BX
Table 32 • Two-Dimensional Bar Codes
Command Description
Aztec Bar Code Parameters
Code 49
PDF417
CODABLOCK
UPS MaxiCode
MicroPDF417
QR Code
Aztec Bar Code Parameters
RSS (Reduced Space Symbology)Bar Code
TLC39
Data Matrix
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
D
Mod 10 and Mod 43
Check Digits
This section provides information about Mod 10 and Mod 43 check digits.
Contents
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
570
Mod 10 and Mod 43 Check Digits
Mod 10 Check Digit
Mod 10 Check Digit
The calculations for determining the Mod 10 Check Digit character are as follows:
1.
Start at the first position and add the value of every other position together.
0 + 2 + 4 + 6 + 8 + 0 = 20
2.
The result of Step 1 is multiplied by 3.
20 x 3 = 60
3.
Start at the second position and add the value of every other position together.
1 + 3 + 5 + 7 + 9 = 25
4.
The results of steps 1 and 3 are added together.
60 + 25 = 85
5.
The check character (12th character) is the smallest number which, when added to the result in step 4, produces a multiple of 10.
85 + X = 90 (next higher multiple of 10)
X = 5 Check Character
This bar code illustrates the above example. The digit on the right (5) is the check digit.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Mod 10 and Mod 43 Check Digits
Mod 43 Check Digit
571
Mod 43 Check Digit
The calculations for determining the Mod 43 check Digit character are as follows:
Each character in the Code 39 character set has a specific value, as follows:
0=0
1=1
2=2
3=3
4=4
5=5
6=6
7=7
8=8
9=9
A=10
B=11
C=12
D=13
E=14
F=15
G=16
H=17
I=18
J=19
K=20
L=21
M=22
N=23
O=24
P=25
Q=26
R=27
S=28
T=29
U=30
V=31
W=32
X=33
Y=34
Z=35
- =36
. = 37
Space=38
$=39
/=40
+=41
%=42
Example •
Data string 2345ABCDE/
1.
Add the sum of all the character values in the data string. Using the chart above, the sum of the character values is as follows:
1 + 2 + 3 + 4 + 5 + 10 + 11 + 12 + 13 + 14 + 40 =115
2.
Divide the total by 43. Keep track of the remainder.
115/43 = 2 Remainder is 29
3.
The “check digit” is the character that corresponds to the value of the remainder.
Remainder = 29
29 is the value for the letter T.
T is the check digit.
Below is a bar code that illustrates the example. The character on the right, T, is the check digit.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
572
Mod 10 and Mod 43 Check Digits
Mod 43 Check Digit
Notes •
___________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
E
ZB64 Encoding and
Compression
This section describes the Base 64 MIME (ZB64) encoding and compression. This is the same type of MIME encoding that is used in e-mail.
Contents
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
574
ZB64 Encoding and Compression
Introduction to B64 and Z64
Introduction to B64 and Z64
The first encoding, known as B64, encodes the data using the MIME Base64 scheme. Base64 is used to encode e-mail attachments and is specifically designed to address communications path limitations, such as control characters and 7-bit data links. It encodes the data using only the printable ASCII characters:
13979L-005 Rev. A
With the use of ZPL, this has the added benefit of avoiding the caret (^) and tilde (~) characters. Base64 encodes six bits to the byte, for an expansion of 33 percent over the unenclosed data. This is much better than the 100 percent expansion given by the existing ASCII hexadecimal encoding.
The second encoding, known as Z64, first compresses the data using the LZ77 algorithm to reduce its size. (This algorithm is used by the PKWARE
®
compression program PKZIP™ and is integral to the PNG graphics format.) The compressed data is then encoded using the MIME
Base64 scheme as described above.
A CRC is calculated across the Base64-encoded data. If the CRC-check fails or the download is aborted, the object can be invalidated by the printer.
The robust encodings can be piggybacked on the existing download commands with full backward compatibility. This is done by prefacing the new encodings with a header that uniquely identifies them. The download routines in the printer firmware can key-off the header to determine whether the data is in the old ASCII hexadecimal encoding or one of the new encodings. This allows existing downloadable objects to be used in their present format, while new objects can be created using the same download commands with the new encodings for increased integrity and reduced download times.
For easy reference, B64 and Z64 are referred to as ZB64. In any reference to the ZB64 encoding, assume that both Base64-only (B64) and LZ77/Base64 (Z64) encodings are accepted.
Example •
The following is an example of an existing download command using the new encoding:
~DTARIAL,59494,:Z64:H4sICMB8+DMAC0FSSUFMLlRURgDsmnd8VEW7x5+ZO edsyibZNNJhlyWhbEJIwYSwJDGNkmwghJIgJYEEEhQIPSggKAjEAiIiVaSoIJ
YNBAkIGgGxUBVUUCGU0JQSC0WFnPvbE+SF18+9H+8f973X+3Jm93umzzNznvn
NSSFGRJ6ARAVZvXK7XDaXLyTiR5B7ontuZPQ824I5RKIa6ew+aba8+pU1rVDZ iciv
[multiple lines deleted]
/O6DU5wZ7ie2+g4xzDPwCpwm3nqW2GAPcdclxF4fIP66jHjncmKvKzh/ZUNCx l9/QQx2HXHYB4m/PkQcdCdx2G7OYt+mszkMh4iZxoifvkh89BFipo87kwD/Bf
/dOcycAAEA:a1b2
ZPL II Programming Guide 5/17/07
ZB64 Encoding and Compression
Introduction to B64 and Z64
575
The parameters are identical to the existing ~DT command:
Parameter
o = font name s = font size data = data string
Table 33 • ~DT Command Parameters
Details
Accepted Values: any valid TrueType name, up to 8 characters
Default Value: if a name is not specified, UNKNOWN is used
In this example, Arial is the specified font.
Accepted Values: the number of memory bytes required to hold the Zebra-downloadable format of the font
Default Value: if an incorrect value or no value is entered, the command is ignored
In this example, 59494 is the size.
To maintain compatibility with the existing ASCII hexadecimal encoding, this field must contain the size of the un-enclosed and uncompressed object — the number of bytes that are finally placed into the printer’s memory, not the number of bytes downloaded.
Accepted Values: a string of ASCII hexadecimal values (two hexadecimal digits/byte). The total number of two-digit values must match parameter s .
Default Value: if no data is entered, the command is ignored
Everything following the size field is data. The new encoding imposes a header with a unique signature. The new encoding must start with the characters :B64: (data encoded in Base-64 only) or
:Z64: (data compressed with LZ77, then encoded in Base-64) followed by the encoded data.
After the data is presented, another colon (:) and four hexadecimal digits comprise the CRC. The Base64 standard allows new-line characters (carriage returns and line feeds) to be inserted into the encoded data for clarity. These characters are ignored by the printer.
When downloading graphics, the colon is used in the current ASCII hexadecimal encoding indicate “repeat the previous dot row.” Since this shorthand is invalid for the first character of data (no previous dot row has been downloaded), it is safe for the printer to detect the leading colon character as the lead-in for the new encodings.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
576
ZB64 Encoding and Compression
B64 and Z64 Encoding
B64 and Z64 Encoding
These download encodings, B64 and Z64, are created as drop-in replacements for the existing
ASCII hexadecimal encoding.
B64 encoding do the following:
• Encode the compressed data using the MIME Base64 algorithm.
• Calculate a CRC across the encoded data.
• Add a unique header to differentiate the new format from the existing ASCII hex encoding.
Z64 encoding do the following:
• Compress the data using the LZ77 algorithm.
• Encode the compressed data using the MIME Base64 algorithm.
• Calculate a CRC across the encoded data.
• Add a unique header to differentiate the new format from the existing ASCII hexadecimal encoding.
The data field have this format:
:id:encoded_data:crc
This table identifies the parameters for this format:
Parameter
:id
:iencoded_data
:crc
Table 34 • Format Parameters
Details
the identifying string B64 or Z64 data to download, compressed with LZ77 (if the id parameter is set to Z64) and encoded with Base64.
four hexadecimal digits representing the CRC calculated over the
:encoded_data field.
13979L-005 Rev. A
The printer calculates a CRC across the received data bytes and compare this to the CRC in the header. A CRC mismatch is treated as an aborted download.
The B64 and Z64 encodings can be used in place of the ASCII hexadecimal encoding in any download command. The commands are:
~DB – Download Bitmap Font
~DE – Download Encoding
~DG – Download Graphic
~DL – Download Unicode Bitmap Font
~DS – Download Scalable Font
~DT – Download TrueType Font
~DU – Download Unbounded TrueType Font
^GF – Graphic Field (with compression type set to “ASCII hex”)
ZPL II Programming Guide 5/17/07
ZB64 Encoding and Compression
B64 and Z64 Encoding
577
The ~DB (Download Bitmap Font) command can use the new encodings in place of the ASCII hexadecimal encoding in data sub-fields. Each character is encoded individually. However, for small amounts of data, the identifying B64 or Z64 header and trailing CRC may negate any gains made by using the new format.
For backward compatibility, the ^HG (Host Graphic) command uses the ASCII hexadecimal encoding. It does not use the new encodings.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
578
ZB64 Encoding and Compression
B64 and Z64 Encoding
Notes •
___________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
F
Field Interactions
This section provides you with examples that show how commands interact with various justification parameters. The examples are in charts for these orientations:
• Normal
• Rotated
• Bottom-up
• Inverted
These charts are designed so that you can identify the location of the field origin and interactions between the rotation, formatting and justification commands.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
580
Field Interactions
Normal Orientation
Normal Orientation
shows you the various normal orientation outputs:
Table 35 • Normal Orientation Examples
^FPH ^FPV ^FPR
^FO
Left
Justified
^FT
Left
Justified
^FO
Right
Justified
^FT
Right
Justified
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Field Interactions
Rotated Orientation
581
Rotated Orientation
shows you the various rotated orientation outputs:
Table 36 • Rotated Orientation Examples
^FPH ^FPV
^FO
Left
Justified
^FPR
^FT
Left
Justified
^FO
Right
Justified
^FT
Right
Justified
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
582
Field Interactions
Bottom Up Orientation
Bottom Up Orientation
shows you the various bottom up orientation outputs:
Table 37 • Bottom Orientation Examples
^FPH ^FPV ^FPR
^FO
Left
Justified
^FT
Left
Justified
^FO
Right
Justified
^FT
Right
Justified
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Field Interactions
Inverted Orientation
583
Inverted Orientation
shows you the various inverted orientation outputs:
Table 38 • Inverted Orientation Examples
^FPH ^FPV ^FPR
^FO
Left
Justified
^FT
Left
Justified
^FO
Right
Justified
^FT
Right
Justified
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
584
Field Interactions
Inverted Orientation
Notes •
___________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
G
Real Time Clock
This appendix contains the information needed to install, program, and operate the Real Time
Clock (RTC) option.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
586
Real Time Clock
Overview
Overview
This hardware option is available as either a factory-installed or field-installable option in specific printer products manufactured and sold by Zebra Technologies Corporation.
The Real Time Clock option is currently available for following printers, and requires that the firmware version shown is installed on that printer.
Supported Zebra Printer and Print Engine Models
Requires this
Firmware Version or Later
60.13.0.13Z
105SL printers that meet any one of the following criteria:
•
•
•
if the printer was manufactured after April 2006 if the RTC Date and the RTC Time fields are printed on the configuration label if the RTC Date and the RTC Time appear on the LCD display
DA402 & T402 printers
LP2844-Z, TPL2844-Z, and TPL3844-Z printers
PAX Series print engines
170PAX2 print engines
110PAX3 print engines using Standard Font
110PAX3 print engines using TT Font
116PAX3 print engines using TT Font
170PAX3 print engines using Standard Font
170PAX3 print engines using TT Font
110PAX4 and 170PAX4 print engines
S4M printers (field-installable kit)
S600 printers
Xi Series printers
90XiII, 140XiII, 170XiII & 220XiII printers
90XiIII, 96XiIII, 140XiIII, 170XiIII, and 220XiIII printers
90XiIIIPlus, 96XiIIIPlus, 140XiIIIPlus,
170XiIIIPlus, and 220XiIIIPlus printers
Z4Mplus and Z6Mplus printers
ZM400/ZM600 printers
32.8.4
45.10.x
29.9.x or 31.9.x
34.10.x
49.10.x
35.10.x
37.10.x
38.10.x
60.13.0.12
50.13.x
27.10.3
18.9.x
33.10.0
60.13.0.12
60.13.0.12
53.15.xZ
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Real Time Clock
Control Panel Programming
587
Control Panel Programming
New parameters for the Real Time Clock have been added to the Control Panel Configuration.
These parameters are located immediately following the
FORMAT CONVERT
prompt. Refer to the printer/print engine User Guide for complete configuration information.
• X.9.x firmware added the parameters to XiII printers and 170PAX/170PAX2 print engines.
• X.10.x firmware added the parameters to XiIII printers and PAX3 print engines.
• X.13.x firmware added the parameters to XiIIIPlus printers, PAX4 print engines.
• X.13.0.13Z firmware added the parameters to 105SL printers.
Real Time Clock Parameters
The parameters listed on the following pages are added to the Control Panel Configuration prompts only when both the Real Time Clock hardware option and the appropriate version of firmware are installed:
• X.9.x or later firmware installed in the XiII series printers or the 170PAX/170PAX2 series print engines.
• X.10.x or later firmware installed in the XiIII series printers or the PAX3 series print engines.
• X.13.0.13Z or later firmware installed in the 105SL printers
• X.13.x or later firmware installed in the XiIIIPlus series printers, the PAX4 series print engines, or the S4M printers.
The RTC ZPL II commands apply to all printers/print engines with the Real Time Clock hardware option and proper firmware.
Idle Display
Selects the printer/print engine Idle Display format and the method of displaying the time/date information. This parameter also affects the Configuration Label printout and the RTC DATE and RTC TIME formats.
Selections
• FW VERSION
• MM/DD/YY 24HR
• MM/DD/YY 12HR
• DD/MM/YY 24HR
• DD/MM/YY 12HR
If FW VERSION is selected, the format on the Configuration Label and on the RTC DATE and RTC TIME parameters is MM/DD/YY 24HR.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
588
Real Time Clock
Control Panel Programming
RTC Date
Allows entry of the RTC date in the format selected by the IDLE DISPLAY parameter.
Note •
The RTC parameters are password-protected. Refer to your printer’s user guide for specific instructions on accessing and modifying printer parameters.
Printer Model
PAX Series print engines, Xi Series printers, and 105SL printers
Z4Mplus and
Z6Mplus printers
S4M printer
Action
1.
2.
Use the LEFT oval key to select the position to be adjusted
Then, use the RIGHT oval key to select the correct value for that position.
1.
2.
3.
Press
SELECT
to select the parameter.
Use the
MINUS
(-) key to select the position to be adjusted
Then, use the
PLUS
(+) key to select the correct value for that position.
Press
SELECT
to accept any changes and deselect the parameter.
4.
1.
Press ENTER. The printer displays the current RTC date.
2.
Modify the values as follows:
•
Press the right arrow to move to the next digit position.
•
To increase the value, press the up arrow.
•
To decrease the value, press the down arrow.
3.
Press ENTER to accept the value shown.
Note •
Invalid dates, such as 2/29/1999, may be entered, but will not be saved.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Real Time Clock
Control Panel Programming
589
RTC Time
Allows entry of the RTC time in the format selected by the
IDLE DISPLAY
parameter.
Note •
The RTC parameters are password-protected. Refer to your printer’s user guide for specific instructions on accessing and modifying printer parameters.
Printer Model
PAX Series print engines, Xi Series printers, and 105SL printers
Z4Mplus and
Z6Mplus printers
S4M printer
Action
1.
2.
Use the LEFT oval key to select the position to be adjusted
Use the RIGHT oval key to select the correct value for that position.
1.
2.
3.
4.
Press
SELECT
to select the parameter.
Use the
MINUS
(-) key to select the position to be adjusted.
Use the
PLUS
(+) key to select the correct value for that position.
Press SELECT to accept any changes and deselect the parameter.
1.
Press ENTER. The printer displays the current RTC date.
2.
Modify the values as follows:
•
Press the right arrow to move to the next digit position.
•
To increase the value, press the up arrow.
•
To decrease the value, press the down arrow.
3.
Press ENTER to accept the value shown.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
590
Real Time Clock
RTC General Information
RTC General Information
The Real Time Clock commands are only applicable if the Real Time Clock option is installed in the printer. For those printers with an LCD control panel display, additional control panel configuration parameters are also included.
The ZPL II Field Clock
^FC
command is used to specify the clock-indicator character for the primary, secondary, and third clocks. This command must be included within each label field command string whenever the date or time clock values are required within the field. No date or time clock information can be printed in a label field unless this command is included. The
^FC
command can now be combined with the
^SN
command in V60.13.0.10 and later.
A clock-indicator can be any printable character except the ZPL II Format Prefix, Control
Prefix, or Delimiter characters. The default value for the primary clock-indicator is the percent sign
%
. The secondary and third clock-indicators have no defaults and must be specified in order for that clock to be used.
The Field Data
^FD
command has been expanded to recognize the clock-indicators and associated command characters, and to replace them during the printing process with the corresponding time or date parameter. For example, if the primary clock-indicator is the percent sign
%
, then during printing, the character sequence %H in the ^FD statement would be replaced by the 2-digit current hour.
Note •
If the Real Time Clock is not installed, or the ^FC command has not preceded the
^FD
statement, no replacement would occur. In this case, the characters
%H
would print as text on the label.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
Real Time Clock
RTC General Information
591
The name of the day of the week, the name of the month, and the AM or PM designation can also be inserted in place of a specific clock-indicator/command character sequence. See
for the list of command characters and their functions.
Table 39 • Command Characters
Command
Character
%U
%W
%w
%y
%m
%M
%p
%S
%Y
%d
%H
%I
%j
%a
%A
%b
%B
Function
is replaced by the abbreviated weekday name is replaced by the weekday name is replaced by the abbreviated month name is replaced by the month name is replaced by the day of the month number, 01 to 31 is replaced by the hour of the day (military), 00 to 23 is replaced by the hour of the day (civilian), 01 to 12 is replaced by the day of the year, 001 to 366 is replaced by the month number, 01 to 12 is replaced by the minute, 00 to 59 is replaced by the AM or PM designation is replaced by the seconds, 00 to 59 is replaced by the week# of the year, 00 to 53, Sunday is 1st day* is replaced by the week# of the year, 00 to 53, Monday is 1st day** is replaced by the day# of the week, 00 (Sunday) to 06 (Saturday) is replaced by the 2 digits of the year, 00 to 99 is replaced by the full 4 digit year number—where% is the specified clock-indicator character
*. %U establishes Sunday as the first day of the year.
**.%W establishes Monday as the first day of the year.
The Set Offset
^SO
command permits the printing of specific times and dates relative to the primary clock. The secondary (or third) clock is enabled when secondary (or third) offsets are entered using this command. The secondary (or third) clock time and date are determined by adding the offsets to the current clock reading.
One
^SO
command is required to set the secondary offset; an additional ^SO command is required for a third offset. The offsets remain until changed or until the printer is either powered down or reset.
Note •
Only dates from January 1, 1998 to December 31, 2097 are supported. Setting the offsets to values that result in dates outside this range is not recommended and may have unexpected results.
ZPL II Programming Guide 13979L-005 Rev. A
592
Real Time Clock
RTC General Information
The Set Mode/Language
^SL
) command is used to select the language the days of the week and the months are printed in. This command also sets the printing mode, which can be
S
for START TIME,
T
for TIME NOW, or a Numeric Value for the time accuracy. In
START TIME mode, the time printed on the label is the time that is read from the Real Time
Clock when the label formatting begins (when the ^XA command is received by the printer).
In TIME NOW mode, the time printed on the label is the time that is read from the Real Time
Clock when the label is placed in the queue to be printed. In Numeric Value mode, a time accuracy tolerance can be specified.
First Day of the Week Affects Calendar Week
The %U and %W commands set the first day of the week. The week numbering starts at the beginning of the year with Week 01 representing the first full week of the year. Any day(s) before that established first day of the week are part of the Week 00. The following examples show how setting different days as the first day of the week affect the calendar week.
Important •
The %U and %W commands determine the numbering for all weeks in the year.
Example • January, 2005 with Week 00
Set Sunday as the first day of the week using the %U command. In this example, notice that Saturday, January 1st is Week 00 and Sunday, January 2nd begins
Week 01.
First Day of the Week
Sun Mon Tue Wed Thu
16
23
30
2
9
3
10
17
24
31
4
11
18
25
5
12
19
26
6
13
20
27
Fri
7
14
21
28
Sat
1
8
15
22
29
Week 00
Week 01
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Real Time Clock
RTC General Information
593
Example •
January, 2005 with Week 00
Set Monday as the first day of the week using the %W command. In this example, notice that Saturday, January 1st and Sunday, January 2nd are Week 00 and Monday,
January 3rd begins Week 01.
First Day of the Week
3
10
17
24
31
Mon Tue Wed Thu
4
11
18
25
5
12
19
26
6
13
20
27
Fri
7
14
21
28
Sat
15
22
1
8
29
Sun
16
23
2
9
30
Week 00
Week 01
Example • January, 2006 without Week 00
Set Sunday as the first day of the week using the %U command. Since 2006 begins on a Sunday, there is no Week 00 in this example.
First Day of the Week
Sun Mon Tue Wed Thu
No Week 00
1 2 3 4 5
8
15
22
9
16
23
10
17
24
11
18
25
12
19
26
29 30 31
Fri
6
13
20
27
Sat
7
14
21
28
Week 01
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
594
Real Time Clock
RTC General Information
Example •
January, 2006 with Week 00
Set Monday as the first day of the week using the %W command. In this example,
Saturday, January 1st is Week 00 and Sunday, January 2nd begins Week 01.
First Day of the Week
Mon Tue Wed Thu
16
23
30
2
9
3
10
17
24
31
4
11
18
25
5
12
19
26
Fri
6
13
20
27
7
14
21
28
Sat Sun
1
8
15
22
29
Week 00
Week 01
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Real Time Clock
RTC General Information
595
Time and Date Precision
As of V60.13.0.1 firmware, the
^CO
command is now ignored. While the S4M printer has a lower firmware version number (V50.x), its firmware was recently released and follows the rule to ignore the
^CO
command.
The time and date placed in a label field is determined at the time the label bitmap is created by the printer (start time mode). If a batch of labels is formatted, the date and time will be the same for all labels in the batch. If the printer is paused during the printing process and remains in that state for a period of time, when printing resumes, the time and date will still be the same as when the batch was first started.
If more precise time and date stamps are required on versions prior to V60, follow the process below. For versions after V60, use the Numeric Value mode shown on
.
Cycle the printer/print engine power Off (
O
) and On (
l
) to clear the memory before performing the steps below.
1.
Print a Memory Usage Label (
^XA^WD*:*.*^XZ
)
and note the following value:
Available RAM (in BYTES)
2.
Print a Configuration Label and note these values:
Printer “Print Width” (in DOTS)
(NOT the Label Width)
Label Length (in DOTS)
(A) __________
(B) __________
(C) __________
3.
Determine the desired maximum number of queued labels with the same Time and Date value.
(D) __________
Note •
Increasing the number of queued labels will improve throughput performance, but
Real Time Clock values will be less accurate. Two is usually a good compromise.
4.
Substitute the values for B through D from the previous page into the following formula:
The “label queue” memory required (in BYTES)
(B x C x D)/8 =
5.
Substitute the values for A and E into the following formula:
The
^CO
command memory required (in KBYTES)
(A-E)/1024)-5=
(E) __________
(F) __________
Note •
If the value of (F) is less than zero, then no ^CO command is needed. If the value of (F) is greater than zero, use the integer portion in the ^CO command.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
596
Real Time Clock
RTC General Information
Example •
Available RAM (A) = 71478 BYTES
Print Width (B)
Label Length (C)
= 832 DOTS
= 1000 DOTS
Max Labels Queued (D) = 2
Then —
The label queue memory required (E) =
(B x C x D)/8 = 208000 BYTES
And —
The ^CO command memory required (F) =
(71478-208000)/1024)-5=489.87 KBYTES
Therefore, the correct ^CO command string to add to the label format would be:
^XA^COY,489^XZ
This command string will cause 489 KBYTES to be set aside as Font Memory and make it unavailable as label format memory. The memory remaining will only allow two labels to be formatted at one time, and the time and date will be more precise for those two labels.
Note •
For the 170PAX2 print engine, you must disable the Reprint Function for the Time
Now Mode to function properly.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Real Time Clock
ZPL II Samples
597
ZPL II Samples
The ZPL II scripts shown on this page establish the initial settings for the date and time clock.
The script below then references these settings to provide the output shown in
Setting the date and time for the Real Time Clock only needs to be done once. The date and time are maintained by an on-board battery when the printer is reset or the printer is turned
Off (
O
).
To set the date and time to April 23, 2005 at 2:30pm, the following command string should be sent to the printer:
^XA
^XZ
^ST04,23,2005,02,30,0,P^FS
To initialize the Real Time Clock and set up two offset values (offset #2 set to 3 months and 1 hour in the future, offset #3 set to 1 year in the past), the following command sequence should be sent to the printer:
^XA
^SL
^XZ
^SO2,3,0,0,1,0,0^FS
^SO3,0,0,-1,0,0,0^FS
The above ZPL II scripts initialize the RTC date and time and must be sent to a printer to provide proper date and time parameters for the ZPL II script below.
The following ZPL II script illustrates the various methods of printing the date and time
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
598
Real Time Clock
ZPL II Samples
For the below example, the ^FC command delimiters are:
% Primary clock indicator
{ Secondary clock indicator
#
Third clock indicator
^XA
^LL175
^FO10,025^AD^FC%,{,#^FD1: Mil: %H:%M:%S Civ: %I:%M:%S
%p^FS
^FO10,050^AD^FC%,{,#^FD2: Mil: {H:{M:{S Civ: {I:{M:{S
{p^FS
^FO10,075^AD^FC%,{,#^FD3: Mil: #H:#M:#S Civ: #I:#M:#S
#p^FS
^FO10,100^AD^FC%,{,#^FD1: On %A, %B %d
, %Y (%a, %m/%d/%y, %d %b %Y).^FS
^FO10,125^AD^FC%,{,#^FD2: On {A, {B {d, {Y (
{a, {m/{d/{y, {d {b {Y).^FS
^XZ
^FO10,150^AD^FC%,{,#^FD3: On #A, #B #d, #Y (
#a, #m/#d/#y, #d #b #Y).^FS
Figure 10 • Printed Result of the Above ZPL II Script
1: Mil: 14:30:00 Civ: 02:30:00 PM
2: Mil: 15:30:00 Civ: 03:30:00 PM
3: Mil: 14:30:00 Civ: 02:30:00 PM
1: On Wed, April 23, 2005 (Fri, 04/23/05, 23 Apr 2005)
2: On Saturday, July 23, 2005 (Fri, 07/23/05, 23 Jul 2005)
3: On Friday, April 23, 2004 (Fri, 04/23/04, 23 Apr 2004)
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
5/17/07
Real Time Clock
ZPL II Samples
599
The following are examples of the time stamp using the ^SL1 and ^SL5 at 2 ips and 10 ips for the Enhanced Real Time Clock (V60.13.0.10 and later).
Note •
They show the variation of time due to print speed and label complexity.
^XA
^SL1^FS
^FO187,184^A0N,101,121^FC%^FD%H:%M:%S^FS
^XZ
^PQ10
Figure 11 • Example of ^SL1, 2 ips and 10 ips
2 ips 10 ips
15:42:31
15:42:29
15:42:27
15:42:24
15:42:22
15:42:20
15:42:18
15:42:16
15:42:13
15:42:11
5
4
7
6
10
9
8
3
2
1
15:47:10
15:47:09
15:47:08
15:47:07
15:47:06
15:47:05
15:47:04
15:47:03
15:47:02
15:47:01
3
4
1
2
5
Label 1
Label 2
Label 3
Label 4
Label 5
8
9
6
7
10
Label 6
Label 7
Label 8
Label 9
Label 10
ZPL II Programming Guide 13979L-005 Rev. A
600
Real Time Clock
ZPL II Samples
^XA
^SL5^FS
^FO187,184^A0N,101,121^FC%^FD%H:%M:%S^FS
^XZ
^PQ10
Figure 12 • Example of ^SL5, 2 ips and 10 ips
2 ips 10 ips
15:43:55
15:43:55
15:43:55
15:43:50
15:43:50
15:43:50
15:43:47
15:43:42
15:43:42
15:43:42
8
7
10
9
6
5
4
3
2
1
15:48:22
15:48:22
15:48:22
15:48:22
15:48:22
15:48:22
15:48:22
15:48:22
15:48:22
15:48:22
3
4
1
2
5
Label 1
Label 2
Label 3
Label 4
Label 5
8
9
6
7
10
Label 6
Label 7
Label 8
Label 9
Label 10
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
H
SGD Command Support
This appendix provides you with details identifying which SGD commands can be used with the wired and wireless print server interfaces.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
602
SGD Command Support
Printer and Firmware Compatibility
Printer and Firmware Compatibility
identifies the supported printer model, firmware version, and command type (internal wired, external wired, or wireless) for all SGD commands. In order to set and get configurations, the noted supported SGD commands can also be used through the serial, parallel, and USB interfaces.
Important •
All the firmware versions noted in
, refer to minimum firmware version required.
Table 40 • SGD Command Syntax
Key: Internal Wired =
External Wired =
Wireless =
SGD Commands
appl.bootblock appl.name
card.inserted
card.mac_addr
device.languages
external_wired.ip.addr
external_wired.ip.arp_interval
external_wired.ip.default_addr.enable
external_wired.ip.dhcp.cid_all
external_wired.ip.dhcp.cid_enable
external_wired.ip.dhcp.cid_prefix
external_wired.ip.dhcp.cid_suffix
external_wired.ip.dhcp.cid_type
external_wired.ip.gateway
external_wired.ip.netmask
external_wired.ip.port
external_wired.ip.protocol
external_wired.ip.timeout.enable
external_wired.ip.timeout.value
external_wired.mac_addr
13979L-005 Rev. A ZPL II Programming Guide
V60.15.2Z
V60.15.2Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
5/17/07
Table 40 • SGD Command Syntax
Key: Internal Wired =
External Wired =
Wireless =
SGD Command Support
Printer and Firmware Compatibility
603
SGD Commands
internal_wired.ip.addr
internal_wired.ip.arp_interval
internal_wired.ip.default_addr.enable
internal_wired.ip.dhcp.cid_all
internal_wired.ip.dhcp.cid_enable
internal_wired.ip.dhcp.cid_prefix
internal_wired.ip.dhcp.cid_suffix
internal_wired.ip.dhcp.cid_type
internal_wired.ip.gateway
internal_wired.ip.netmask
internal_wired.ip.port
internal_wired.ip.protocol
internal_wired.ip.timeout.enable
internal_wired.ip.timeout.value
internal_wired.mac_addr
ip.active_network
ip.addr
ip.arp_interval
ip.bootp.enable
ip.dhcp.cid_all
ip.dhcp.cid_enable
ip.dhcp.cid_prefix
ip.dhcp.cid_suffix
ip.dhcp.cid_type
ip.dhcp.enable
5/17/07
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V50.15.2Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
ZPL II Programming Guide 13979L-005 Rev. A
604
SGD Command Support
Printer and Firmware Compatibility
Table 40 • SGD Command Syntax
Key: Internal Wired =
External Wired =
Wireless =
SGD Commands
ip.ftp.enable
ip.gateway
ip.http.enable
ip.lpd.enable
ip.netmask
ip.pop3.enable
ip.pop3.password
ip.pop3.poll
ip.pop3.server_addr
ip.pop3.username
ip.port
ip.primary_network ip.smtp.domain
ip.smtp.enable
ip.smtp.server_addr
ip.snmp.enable
ip.snmp.get_community_name
ip.snmp.set_community_name
ip.tcp.enable
ip.telnet.enable
ip.udp.enable
media.printmode
odometer.headclean
odometer.headnew
13979L-005 Rev. A
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V53.15.3Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
ZPL II Programming Guide 5/17/07
Table 40 • SGD Command Syntax
Key: Internal Wired =
External Wired =
Wireless =
SGD Command Support
Printer and Firmware Compatibility
605
SGD Commands
odometer.label_dot_length
odometer.media_marker_count1
odometer.media_marker_count2
odometer.total_print_length wlan.adhocautomode
wlan.adhocchannel
wlan.associated
wlan.channel_mask
wlan.essid
wlan.firmware_version
wlan.ip.addr
wlan.ip.arp_interval
wlan.ip.default_addr.enable
wlan.ip.dhcp.cid_all
wlan.ip.dhcp.cid_enable
wlan.ip.dhcp.cid_prefix
wlan.ip.dhcp.cid_suffix
wlan.ip.dhcp.cid_type
wlan.ip.gateway
wlan.ip.netmask
wlan.ip.port
wlan.ip.protocol wlan.ip.timeout.enable
wlan.ip.timeout.value
wlan.keep_alive.enable
wlan.keep_alive.timeout
wlan.kerberos.kdc
5/17/07
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V50.15.2Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
ZPL II Programming Guide 13979L-005 Rev. A
606
SGD Command Support
Printer and Firmware Compatibility
Table 40 • SGD Command Syntax
Key: Internal Wired =
External Wired =
Wireless =
SGD Commands
wlan.kerberos.password
wlan.kerberos.realm
wlan.kerberos.username
wlan.mac_addr
wlan.operating_mode
wlan.password
wlan.preamble
wlan.private_key_password
wlan.roam.interval
wlan.roam.signal
wlan.security
wlan.signal_noise
wlan.signal_quality
wlan.signal_strength
wlan.station_name
wlan.tx_power
wlan.tx_rate
wlan.username
wlan.wep.auth_type
wlan.wep.index
wlan.wep.key_format
wlan.wep.key1
wlan.wep.key2
wlan.wep.key3
wlan.wep.key4
wlan.wpa.psk
13979L-005 Rev. A
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V60.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V53.15.3Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V50.15.2Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
V53.15.3Z
ZPL II Programming Guide 5/17/07
Features
I
This appendix covers features added to major firmware releases.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
608
Features
Firmware x.15
Firmware x.15
Identifies features that are available in printers with firmware version V60.15.x, V50.15.x, or later.
The following is an overview of the new and enhanced features available in firmware version
V60.15.x, V50.15.x, or later. These include:
• Additional wireless securities
• New and updated ZPL commands (including wireless commands)
• Extended SNMP features, providing SNMP based control over commonly-needed printer settings.
• Support for Set / Get / Do (SGD) commands
Wireless Securities
Firmware V60.15.x and V50.15.x offer support for a wider range of wireless securities. These are the supported wireless securities:
• WEP-40-BIT
• WEP-128-BIT
• EAP-TLS
• EAP-TTLS
• EAP-FAST
• PEAP
• LEAP
• WPA-PSK
• WPA EAP-TLS
• WPA EAP-TTLS
• WPA EAP-FAST
• WPA PEAP
• WPA LEAP
• KERBEROS*
* Use of any given wireless security is dependent on the RF card being used.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Features
Firmware x.15
609
ZPL and SGD Commands
identifies the new commands and updates to existing commands in firmware version
V60.15.x, V50.15.x, or later. The bolded items are either new commands or new enhancements to existing commands.
Command
^KC
~DY
~WS
^WX
Table 41 • x.14 Features in Detail
Details
The ^KC command is a new command with firmware version V60.15.x,
V50.15.x, or later. It allows wireless print servers to have their own client identifier (CID). When the print server is active is uses the CID on the printer. When both print servers are active they have the option to use the
CID on the printer, or their own CID.
Firmware version V60.15.x, V50.15.x, or later supports .NRD (non readable file) files and .PAC files (protected access credential).
Firmware version V60.15.x, V50.15.x, or later added these new parameters:
• wireless pulse—adds a pulse to the network traffic generated by the printer. To keep the printer online, a pulse is necessary with some network configurations.
• wireless pulse interval—when the wireless pulse feature is enabled this sets the interval at which the wireless pulse is sent.
• channel mask—for commonly used channel masks.
• international mode—disables or enables International mode
The ^WX command configures the wireless security settings for printers using the wireless print server.
SNMP
Firmware V60.15.x, V50.15.x, or later feature support for an extended Management
Information Base (MIB) file. The extended support now covers many of the printer settings, such as darkness, media type, and other printer specific settings. The MIB file can be downloaded from www.zebra.com
for use with SNMP management systems.
Set / Get / Do Support
Printers with firmware V60.15.x and V50.15.x support a new set of commands known as
Set / Get / Do (SGD) commands. These commands allow you to configure and get status on the wireless settings in the printer.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
610
Features
Firmware x.14
Firmware x.14
Identifies features that are available in printers with firmware version V60.14.x, V50.14.x, or later.
identifies the new commands and enhancements to existing commands in firmware
V60.14.x, V50.14.x, or later. The bolded items are either new commands or new enhancements to existing commands.
Command
^CI
~DY
^FH
^FL
^FO, ^FT,
^FW
^HT
Table 42 • Features in Detail
Details
The ^CI command selects the encoding and character set. To identify the encoding, include a ^CI in the ZPL script. These encodings are now supported with the ^CI command:
These are new variables that were added to the desired character set or a parameter of the existing ^CI command:
• Big 5 HKSCS (^CI26) with BIGHK.DAT. This supports the Hong
Kong supplementary character set of the Big 5 character set and encoding. You can download the Big 5 HKSCS DAT table from www.zebra.com
.
• Code Page 1252 (^CI27). The ^CI27 command supports code page
1252.
• GB 18030 (^CI26) with GB18030.DAT. This supports the GB 18030 character set and encoding standard.
• Unicode Support. These new values were added to the ^CI command:
28 = Unicode (UTF-8 encoding)
29 = Unicode (UTF-16 Big-Endian encoding)
30 = Unicode (UTF-16 Little-Endian encoding)
The ~DY command downloads fonts to the printer. Firmware version
V60.14.x, V50.14.x, or later improves support for TrueType fonts and adds support for TrueType Extension fonts. When OpenType fonts can be downloaded as a TrueType font they are supported.
The ^FH command allows you to enter the hexadecimal value for any character directly into the ^FD statement. It has been updated to function with Unicode encodings.
The ^FL command provides the ability to link any TrueType font, including private character fonts to associated fonts, such that if the base font does not have a glyph for the required character, the printer looks to the linked fonts for the glyph. The font links are user-definable.
In firmware version earlier than V60.15.x, V50.15.x or later, the ^FO and
^FT commands were left-justified. In firmware version V60.14.x, V50.14.x, or later, a new parameter supports right- and auto-justification. Using the
^FW command allows you to set justification options.
Over a communication port, the ^HT command receives the complete list of the font links.
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Features
Firmware x.14
611
Command
^LF
^PA
^SL
^TB
Table 42 • Features in Detail
Details
The ^LF command prints out a list of the linked fonts.
The Advanced Text Layout Options command (^PA) is new in firmware version V60.14.x, V50.14.x, or later.
Advanced text layout, such as bidirectional text layout, character shaping, and OpenType support, can be activated with the ^PA command. The glyph displayed when the character is missing from a font (default glyph) can be changed from a space character to the default glyph of a font, which is often a square box.
A new parameter was added to the ^SL command to support the Japanese language in the Real Time Clock feature set.
The text block (^TB) command is a new command in firmware version
V60.14.x, V50.14.x, or later. The ^FB command allows you to print text into a defined block type format; it does not support complex text layout. In contrast, the ^TB command supports a text block with complex text.
Global Printing Solution
The Global Printing solution greatly simplifies international character label printing by supporting Unicode compatible fonts and encoding (UTF-8, UTF-16BE and UTF-16LE) directly in its printers.
These are new and enhanced features available in firmware version V60.14.x, v50,14.x, or later:
• Advanced text layout options
• Big 5 HKSCS
• GB 18030
• Unicode support (UTF-8 and UTF-16)
• Code Page 1252
• Field hexadecimal
• Field origin justification
• Font linking
• Improved font support
• Real-time clock – Japanese support
• Text block
For details on these new features, see
.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
612
Features
Firmware x.14
Zebra firware V60.14.x, V50.14.x, or later continues to support locale-specific encoding formats. These formats include:
• Code Page 850
• Shift JIS
• GB
• Unified Hangul Code
• Big 5
What Is Unicode?
Unicode is a universal code page (which converts numeric codes into characters) that can be used with many computer platforms and software applications. While ASCII and other traditional code page encoding systems support 256 characters or less, Unicode can support almost 100,000 characters for all major languages. The languages include complex non-
Western languages that can be difficult to print.
Unicode encoding and supporting fonts allow the printer to seamlessly output in any language.
As a result, you do not have to select the language, font, code page, or configure or adjust the printer. Zebra’s printer-resident capabilities provide fast label output and seamless multilanguage printing.
You can create private libraries of logos and special characters and include them in labels. The ability to create custom characters is valuable for creating shipping labels for Asia, as many
Asian fonts don’t support characters for names, street names, and other proper nouns.
Firmware V60.14.x, V50.14.x, or later offers features that support bidirectional printing or complex text layout, including:
• Arabic
• Hindi
• Thai
• Vietnamese
• Other languages
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
This is a glossary of terms.
Glossary
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
614
Glossary
Terms
Terms
13979L-005 Rev. A
ASCII American Standard Code for Information Interchange. A 7-bit character set that includes Latin characters, as well as control and punctuation characters.
bidirectional text layout The arrangement of characters with mixed directionality on a single line. For example, English and Arabic.
big-endian In the encoding, the most significant byte is stored first.
byte order mark BOM; indicates big-endian (BE) or little-endian (LE).
character The smallest component of a writing system that has understanding, refers to the abstract meaning not the specific shape.
character code Another term for code point.
character set A collection of characters.
character shaping Characters assume different glyphic forms depending on the context.They can be used with a script-based language.
code point An integral reference number assigned to a character.
coded character set An ordered collection of characters that are assigned an integral reference number.
combining semantic cluster Consists of an atomic character, a combining character sequence consisting of a base character plus one or more nonspacing marks, enclosing marks, combining word joiner, such as an Indic virama, or a sequence of Hangul jamos equivalent to a
Hangual syllable. .
diacritic A mark that is added to a letter or other character to change its value or meaning.
encoding The mapping of a characters code points to a sequence of bytes used to represent the data.
font An electronic collection of glyphs used for the visual representation of characters.
GB18030 A standard required by the People’s Republic of China for operating systems of non-handheld computers.
GB 2312 A Chinese character set and encoding.
glyph The visual representation of a character, such as a shape or image.
grapheme cluster Consists of an atomic character, a combining character sequence consisting of a base character plus one or more nonspacing marks or enclosing marks, or a sequence of Hangul jamos equivalent to a Hangul syllable.
ISO 10646 An international standard that defines the Universal Character Set (UCS) and a character encoding. The UCS matches Unicode.
ZPL II Programming Guide 5/17/07
Glossary
Terms
615
ISO 8859-1 An encoding standard for representing Western European languages using the
Latin Alphabet.
language A system of sounds and scripts used to represent and communicate concepts, ideas, meanings, and thoughts.
ligature A glyph representing a combination of two or more characters.
little-endian In the encoding, the least significant byte is stored first.
open type A file format for scalable font files that extends the existing TrueType font file format used by Microsoft Windows and Apple Macintosh operating systems.OpenType tables support advanced layout features.
presentation form A pre-combined character, ligature or variant glyph that has a separate code point; used for compatibility.
script A collection of symbols used to represent textual information in one or more writing systems.
Shift-JIS A shifted encoding of the Japanese character encoding standard, JIS X 0208, heavily deployed in PCs.
True type An outline font format that is scalable without quality loss.
Unicode The universal character set and encoding maintained by the Unicode Consortium.
UTF-8 The Unicode encoding that assigns each character code point to a sequence of one to four bytes.
UTF-16 A Unicode encoding form that represents Unicode code point values in the BMP with 16-bit code units and Unicode code point values in the supplementary planes with pairs of
16-bit code units.
UTF-16BE A Unicode encoding scheme based on UTF-16 that serializes the bytes in each code unit in big-endian order.
UTF-16LE A Unicode encoding scheme based on UTF-16 that serializes the bytes in each code unit in little-endian order.
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
616
Glossary
Terms
Notes •
___________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Index
A
abort download graphic
access point associated
adhoc auto mode
adhoc channel
advanced counter reset
advanced counter reset
AFI byte read command (^RA)
write command (^WF)
alphanumeric default font change
antenna parameter setting via ZPL
antenna port select using ZPL
appl.bootblock
appl.name
applicator reprint
ARP setting using external_wired.ip.arp_interval
setting using internal_wired.ip.arp_interval
ARP interval or cache time out
authentication timeout for printer home page
auxiliary port set
B
backfeed sequence change
bar code field default
5/17/07 ZPL II Programming Guide battery set condition
battery status
bitmap font download
bitmapped fonts
bootp enable or disable
box
C
cache on
calibration
RFID tag using ZPL (^HR)
cancel all
cancel format
card.inserted
card.mac_addr
caret change
change alphanumeric default font
change backfeed sequence
change caret
change delimiter
change international font
change memory letter designation
change tilde
channel mask setting via ^WS
circle
client identifier
client identifier (CID)
13979L-005 Rev. A
618
Index
CODABLOCK
considerations for ^FD character set
considerations for the ^BY
code 11
code 128 subsets
subsets A and C
subsets a, b, and c
code 39
code 49
automatic mode
field data character set
code 93
full ASCII mode
code validation
command compatibility with printers and firmware
command structure
comment
communications diagnostics
enable
concantination
configuation update
configuration using ZPL commands
wireless securities
configuration label print
contacts
counter reset (~RO)
current partially input format cancel
currently connected printer set transparent
customer service
D
darkness set
data log for RFID
data matrix
date for real time clock set
define EPC data structure (^RB)
define language
define password
define printer name
delete object
delimiter change
13979L-005 Rev. A description information display
detect multiple RFID tags (^RN)
device.languages
DHCP
CID prefix
enable
diagnostics disable
diagonal line
directory label print
disable diagnostics
discharge mode battery
display description information
do command
double signal mode setting
download bitmap font
download encoding
download format
download graphic abort
download graphics
download Intellifont
download true type font
download unbounded true type font
E
E.A.S. bit enable/disable command (^RE)
EAN-13
EAN-8
Electronic Product Code (EPC) define EPC data structure (^RB)
ellipse
enable RFID motion (^RM)
encoding download
select
encoding results
encryption set LEAP parameters
set values via ZPL
end format
erase download graphics
error handling
ESSID printer
setting via ^WS
external wired gateway address change
ZPL II Programming Guide 5/17/07
external wired subnet mask address enable or disable
external_wired.ip.addr
external_wired.ip.arp_interval
external_wired.ip.default_addr.enable
external_wired.ip.dhcp.cid_all
external_wired.ip.dhcp.cid_enable
external_wired.ip.dhcp.cid_prefix
external_wired.ip.dhcp.cid_suffix
external_wired.ip.dhcp.cid_type
external_wired.ip.gateway
external_wired.ip.netmask
external_wired.ip.port
external_wired.ip.protocol
external_wired.ip.timeout value
external_wired.ip.timeout.value
external_wired.mac_addr
F
feedback suppress
field field reverse
orientation
parameter
separator
typeset
variable
field block
field data
field hexadecimal indicator
field number
field orientation
field origin
field parameter
field reverse print
field separator
field typeset
field variable
firmware supported tag types for each version
ZPL command compatibility
flash memory initialize
font identifier
font linking
font name to call font
fonts font matrices
standard printer fonts
5/17/07 ZPL II Programming Guide format cancel
download
end
pause
recall
set
FTP protocol setting
G
gateway address change
Gen 2 printers and firmware that support Gen 2
setting password or locking tag
specify tag type using ZPL
getvar appl.bootblock
appl.name
arp_interval
card.inserted
card.mac_addr
device.languages
external_wired..ip.arp_interval
external_wired.ip.addr
external_wired.ip.default_addr.enable address printer
external_wired.ip.dhcp.cid_all
external_wired.ip.dhcp.cid_enable
external_wired.ip.dhcp.cid_prefix
external_wired.ip.dhcp.cid_suffix
external_wired.ip.dhcp.cid_type
external_wired.ip.gateway
external_wired.ip.netmask
external_wired.ip.port
external_wired.ip.protocol
external_wired.ip.timeout.value
external_wired.mac_addr
internal_wired..ip.arp_interval
internal_wired.ip.addr
internal_wired.ip.default_addr.enable address
Index
619
13979L-005 Rev. A
620
Index
printer
internal_wired.ip.dhcp.cid_enable
internal_wired.ip.dhcp.cid_prefix
internal_wired.ip.dhcp.cid_suffix
internal_wired.ip.dhcp.cid_type
internal_wired.ip.gateway
internal_wired.ip.netmask
internal_wired.ip.port
internal_wired.ip.protocol
internal_wired.ip.timeout.enable
internal_wired.mac_addr
ip.active_network
ip.addr
ip.bootp.enable
ip.dhcp.cid_all
ip.dhcp.cid_enable
ip.dhcp.cid_prefix
ip.dhcp.cid_suffix
ip.dhcp.cid_type
ip.dhcp.enable
ip.ftp.enable
ip.gateway
ip.http.enable
ip.lpd.enable
ip.netmask
ip.pop3.enable
ip.pop3.password
ip.pop3.poll
ip.pop3.server_addr
ip.pop3.username
ip.port
ip.primary_network
ip.smtp.domain
ip.smtp.enable
ip.smtp.server_addr
ip.snmp.enable
ip.snmp.get_community_name
ip.snmp.set_community_name
ip.tcp.enable
ip.telnet.enable
ip.udp.enable
odometer.headclean
odometer.headnew
odometer.media_marker_count
odometer.media_marker_count1
odometer.media_marker_count2
odometer.total_print_length
wlan.adhocautomode
wlan.adhocchannel
wlan.associated
wlan.channel_mask
wlan.essid
13979L-005 Rev. A ZPL II Programming Guide wlan.firmware_version
wlan.ip.addr
wlan.ip.arp_interval
wlan.ip.default_addr.enable address printer
wlan.ip.dhcp.cid_all
wlan.ip.dhcp.cid_enable
wlan.ip.dhcp.cid_prefix
wlan.ip.dhcp.cid_suffix
wlan.ip.dhcp.cid_type
wlan.ip.gateway
wlan.ip.netmask
wlan.ip.protocol
wlan.ip.timeout.enable
wlan.ip.timeout.value
wlan.keep_alive.enable
wlan.keep_alive.timeout
wlan.kerberos.kdc
wlan.kerberos.password
wlan.kerberos.realm
wlan.kerberos.username
wlan.operating_mode
wlan.password
wlan.preamble
wlan.private_key_password
wlan.roam.interval
wlan.roam.signal
wlan.security
wlan.signal_noise
wlan.signal_quality
wlan.signal_strength
wlan.station_name
wlan.tx_power
wlan.tx_rate
wlan.username
wlan.wep.auth_type
wlan.wep.index
wlan.wep.key_format
wlan.wep.key1
wlan.wep.key2
wlan.wep.key3
wlan.wep.key4
wlan.wpa.psk
getvar command
,
graphic box
circle
diagonal line
ellipse
field
recall
symbol
5/17/07
Index
621
graphic field
graphics download
erase download
upload
graphing sensor calibration
H
head test fatal
interval
non-fatal
head test fatal
head test interval
head test non-fatal
host directory list
graphic
identification
RAM status
status return
host directory list
host graphic
host identification
host linked font list
host query
host RAM status
host status return
host verification command (^HV)
~HQ Host Query
HTTP protocol
I
image load
move
save
image load
image move
image save
industrial 2 of 5
initialize Flash memory
interleaved
2 of 5
internal wired gateway address change
internal wired subnet mask address enable or disable
internal wired timeout enable
internal wired.ip.timeout enable
internal.wired.mac_addr
5/17/07 ZPL II Programming Guide internal_wired.ip.addr
internal_wired.ip.arp_interval
internal_wired.ip.default_addr.enable
internal_wired.ip.dhcp.cid_enable
internal_wired.ip.dhcp.cid_prefix
internal_wired.ip.dhcp.cid_suffix
internal_wired.ip.dhcp.cid_type
internal_wired.ip.gateway
internal_wired.ip.netmask
internal_wired.ip.port
internal_wired.ip.protocol
internal_wired.ip.timeout.enable
internal_wired.mac_addr
international font change
international mode setting via ^WS
IP address printer
ip.active_network
ip.addr
ip.arp_interval
ip.bootp.enable
ip.dhcp.cid_all
ip.dhcp.cid_enable
ip.dhcp.cid_prefix
ip.dhcp.cid_suffix
ip.dhcp.cid_type
ip.dhcp.enable
ip.ftp.enable
ip.gateway
ip.http.enable
ip.lpd.enable
ip.netmask
ip.pop3.enable
ip.pop3.password
ip.pop3.poll
ip.pop3.server_addr
ip.pop3.username
ip.port
ip.primary_network
ip.smtp.domain
ip.smtp.enable
ip.smtp.server_addr
ip.snmp.get_community_name
ip.snmp.server_addr
ip.snmp.set_community_name
ip.tcp.enable
ip.telnet.enable
ip.udp.enable
13979L-005 Rev. A
622
Index
K
Kerberos password
realm
username
key distribution center (KDC)
kill battery
kill password
L
label maximum length
reverse print
shift
top
label home
label length
set
language define
LEAP mode setting using ZPL
liability
linked font host list
lock RFID tag
Gen 2
not Gen 2
log file for RFID
LOGMARS
LPD protocol setting
M
^MA Set Maintenance Alerts
MAC address retrieve via external_wired.mac_addr
retrieve via internal_wired.mac_addr
maintenance alerts, setting
map clear
maximum label length
media darkness
feed
tracking
type
media darkness
media sensor set
media sensor calibration
set
media tracking
13979L-005 Rev. A ZPL II Programming Guide media type
media.printmode
memory letter designation change
^MI Set Maintenance Information Message
mirror image printing
mode protection
modify head warning
motion in RFID label
MSI
multiple field origin locations
N
network connect
ID number
network boot command
network configuration label print via ZPL
network connect
network ID number
network operating mode
network printers set all transparent
network settings setting via ZPL
number of retries for block (^RR)
O
object delete
odometer.headclean
odometer.headnew
odometer.label_dot_length
odometer.media_marker_count
odometer.media_marker_count1
odometer.media_marker_count2
odometer.total_print_length
offset for real time clock set
option 61
CID prefix
enable
external_wired.ip.dhcp.cid_enable
internal_wired.ip.dhcp.cid_enable
ip.dhcp.cid_enable
ip.dhcp.cid_prefix
wlan.ip.dhcp.cid_enable
optional memory reset
5/17/07
Index
623
P
password define
set wireless password via ^WP
password for RFID tag
pause programmable
pause format
PDF417
consideration for ^FD
permanently lock Gen 2 tag data
POP3 mailbox
mailbox password
poll interval
username
POP3 server
IP address
POSTNET
power on reset
preamble length radio
pre-shared key value
primary network device selection by ^NC
primary/secondary device setting via ZPL
print start
width
print mode
print network configuration label via ZPL command
print orientation
print quantity
print rate
print start
print width
printer sleep
printer IP address
printer name define
printer sleep
printer web pages set timeout value
printhead resistance set
printing mirror image of label
private key password
programmable pause
5/17/07 ZPL II Programming Guide programming position set using ZPL
Q
QR code normal mode
quantity print
R
read power change using ZPL
read RFID tag read or write RFID format (^RF)
read RFID tag (^RT)
read/write position set using ZPL
real time clock set language
set mode
real time clock date format select
real time clock time format select
recall format
recall graphic
report RFID encoding results
reprint after error
applicator
reset power on
reset advanced counter
reset advanced counters (~RO)
reset optional memory
reset wireless radio card and print server
return data to host computer (^HV)
return RFID data log to host
RFID calibrate RFID tag using ZPL (^HR)
change read power using ZPL
change write power using ZPL
detect multiple tags (^RN)
enable motion (^RM)
number of retries for block (^RR)
RFID setup command (^RS)
verify write operation (^WV)
RFID tag ID command (^RI)
ribbon tension set
13979L-005 Rev. A
624
Index
S
sales
scalable font
download Intellifont
security type setting via ^WX
select encoding
sensor calibration graphing
serial communications set
serialization data
serialization field standard ^FD string
set all network printers transparent
set auxiliary port
set battery condition
set darkness
set dots millimeter
set dots per millimeter
set label length
set maintenance alerts
set maintenance information message
set RFID tag or kill password (^RZ)
set serial communications
set units of measurements
set up RFID information (^RS)
13979L-005 Rev. A setvar external_wired.ip.addr
external_wired.ip.arp_interval
external_wired.ip.dhcp.cid_all
external_wired.ip.dhcp.cid_enable
external_wired.ip.dhcp.cid_prefix
external_wired.ip.dhcp.cid_suffix
external_wired.ip.dhcp.cid_type
external_wired.ip.gateway
external_wired.ip.netmask
external_wired.ip.port
external_wired.ip.protocol
external_wired.ip.timeout value
internal_wired.ip.addr
internal_wired.ip.arp_interval
internal_wired.ip.dhcp.cid_enable
internal_wired.ip.dhcp.cid_prefix
internal_wired.ip.dhcp.cid_suffix
internal_wired.ip.dhcp.cid_type
internal_wired.ip.gateway
internal_wired.ip.netmask
internal_wired.ip.port
internal_wired.ip.protocol
internal_wired.ip.timeout enable
ip.active_network
ip.addr
ip.arp_interval
ip.bootp.enable
ip.dhcp.cid_all
ip.dhcp.cid_enable
ip.dhcp.cid_prefix
ip.dhcp.cid_suffix
ip.dhcp.cid_type
ip.dhcp.enable
ip.ftp.enable
ip.gateway
ip.http.enable
ip.lpd.enable
ip.netmask
ip.pop3.enable
ip.pop3.password
ip.pop3.poll
ip.pop3.server_addr
ip.pop3.username
ip.port
ip.primary_network
ip.smtp.domain
ip.smtp.enable
ip.smtp.server_addr
ZPL II Programming Guide 5/17/07
Index
625
setvar (continued) ip.snmp.enable
ip.snmp.get_community_name
ip.snmp.set_community_name
ip.tcp.enable
ip.telnet.enable
ip.udp.enable
media.printmode
odometer.headclean
odometer.headnew
odometer.media_marker_count
odometer.media_marker_count1
odometer.media_marker_count2
wlan.adhocautomode
wlan.adhocchannel
wlan.channel_mask
wlan.essid
wlan.ip.addr
wlan.ip.arp_interval
wlan.ip.dhcp.cid_all
wlan.ip.dhcp.cid_enable
wlan.ip.dhcp.cid_prefix
wlan.ip.dhcp.cid_suffix
wlan.ip.dhcp.cid_type
wlan.ip.gateway
wlan.ip.netmask
wlan.ip.protocol
wlan.ip.timeout enable
wlan.ip.timeout value
wlan.keep_alive.enable
wlan.keep_alive.timeout
wlan.kerberos.kdc
wlan.kerberos.password
wlan.kerberos.realm
wlan.kerberos.username
wlan.operating_mode
wlan.password
wlan.preamble
wlan.private_key_password
wlan.roam.interval
wlan.roam.signal
wlan.security
wlan.station_name
wlan.tx_power
wlan.tx_rate
wlan.username
wlan.wep.auth_type
wlan.wep.index
wlan.wep.key_format
wlan.wep.key1
wlan.wep.key2
wlan.wep.key3
5/17/07 wlan.wep.key4
wlan.wpa.psk
setvar command
SGD command structure
SGTIN-64 standard programming example
single signal mode setting
slew home position
slew given number dot rows
slew to home position
SMTP IP address
SMTP parameters setting via ZPL
SMTP protocol
SNMP get community
set community
SNMP parameters setting via ZPL
SNMP protocol
SNMP query
specify number of retries for block (^RR)
standard printer fonts
start print
subnet mask change
subnet mask address enable or disable
symbol
T
tag type specify using ZPL
TCP communication
TCP socket protocol
tear-off adjust position
technical support
TELNET protocol
text blocks
text properties advanced
tilde change
time for real time clock set
timeout value
timeout value for printer home page
transfer object
transmit rate setting via ^WR
ZPL II Programming Guide 13979L-005 Rev. A
626
Index
transponders calibration using ZPL (^HR)
true type font download
U
UDP communication
UDP socket protocol
unbounded true type font download
units of measurement set
UPC/EAN extensions
UPC-A
UPC-E
update configuration
upload graphics
UPS maxicode
considerations for ^FD
use font name to call font
V
verify RFID write operation (^WV)
void handling
W
web authentication timeout value
web server setting
WEP key format
WEP mode configuring print server for WEP
setting encryption index via ^WX
width print
wired equivalent privacy
wired print server
^NB to set check for
wireless password setting via ^WP
Wireless Print Server
ZPL commands
wireless print server change network settings
wireless pulse and interval setting via ^WS
wireless radio card reset via ZPL
setting values via ^WS
wireless timeout enable
wlan gateway address change
13979L-005 Rev. A ZPL II Programming Guide wlan subnet mask address enable or disable
wlan.adhocautomode
wlan.adhocchannel
wlan.associated
wlan.channel_mask
wlan.essid
wlan.firmware_version
wlan.ip.addr
wlan.ip.arp_interval
wlan.ip.default_addr.enable
wlan.ip.dhcp.cid_all
wlan.ip.dhcp.cid_enable
wlan.ip.dhcp.cid_prefix
wlan.ip.dhcp.cid_suffix
wlan.ip.dhcp.cid_type
wlan.ip.gateway
wlan.ip.netmask
wlan.ip.protocol
wlan.ip.timeout enable
wlan.ip.timeout value
wlan.ip.timeout.enable
wlan.keep_alive.enable
wlan.keep_alive.timeout
wlan.kerberos.kdc
wlan.kerberos.password
wlan.kerberos.realm
wlan.kerberos.username
wlan.operating_mode
wlan.password
wlan.preamble
wlan.private_key_password
wlan.roam.interval
wlan.roam.signal
wlan.security
wlan.signal_noise
wlan.signal_quality
wlan.signal_strength
wlan.station_name
wlan.tx_power
wlan.tx_rate
wlan.username
wlan.wep.auth_type
wlan.wep.index
wlan.wep.key_format
wlan.wep.key1
wlan.wep.key2
wlan.wep.key3
wlan.wep.key4
wlan.wpa.psk
write AFI byte command (^WF)
5/17/07
Index
627
write power change using ZPL
write RFID format (^RF)
write RFID tag (^WT)
Z
Zebra Programming Language (ZPL II)
^HL or ~HL, Return RFID Data Log to Host (^HL or ~HL)
^HR, Calibrate RFID Transponder
^RA, Read AFI Byte
^RB, Define EPC Data Structure
^RE, Enable/Disable E.A.S. Bit
^RF, Read or Write RFID Format
^RI, Get RFID Tag ID
^RM, Enable RFID Motion
^RN, Detect Multiple RFID Tags
^RR, Specify RFID Retries for a Block
^RS, RFID Setup
^RT, Read RFID Tag
^RW, Set RFID Read and Write Power
^RZ, Set RFID Tag Password and Lock Tag
^WF, Write AFI Byte
^WT, Write Tag
^WV, Verify RFID Write Operation
~RO, Reset Advanced Counters
~RV, Report RFID Encoding Results
command compatibility with printers and firmware
ZebraNet Alert halt
set
ZPL set
ZPL commands
^B7
^JH
~HQ
^MA
^MI
Wireless Print Server commands
5/17/07 ZPL II Programming Guide 13979L-005 Rev. A
628
Index
13979L-005 Rev. A ZPL II Programming Guide 5/17/07
Zebra Technologies Corporation
333 Corporate Woods Parkway
Vernon Hills, Illinois 60061.3109 U.S.A.
Telephone: +1 847 793 2600
Facsimile: +1 847 913 8766
Zebra Technologies Europe Limited
Zebra House
The Valley Centre, Gordon Road
High Wycombe
Buckinghamshire HP13 6EQ, UK
Telephone: +44 (0) 1494 472872
Facsimile: +44 (0) 1494 450103
Zebra Technologies Asia Pacific, LLC
16 New Industrial Road
#05-03 Hudson TechnoCentre
Singapore 536204
Telephone: +65 6858 0722
Facsimile: +65 6885 0838
Part Number: 13979L-005 Rev. A
© 2007 ZIH Corp.
Download
Advertisement
Key features
ZPL II command reference
RFID command guidance
Wireless command support
SGD printer setting commands
Detailed parameters explanation
Configuration examples
Frequently asked questions
This guide covers ZPL, RFID, and wireless commands.
This guide provides information on programming capabilities, RFID features, parameters, and maintenance commands.
Yes, network settings are covered in the wireless commands and SGD settings.