Each product and program carries a respective written warranty, the only warranty on which the customer can
rely. Monarch reserves the right to make changes in the product, the programs, and their availability at any
time and without notice. Although Monarch has made every effort to provide complete and accurate
information in this manual, Monarch shall not be liable for any omissions or inaccuracies. Any update will be
incorporated in a later edition of this manual.
This equipment has been tested and found to comply with the limits for a Class A
digital device, pursuant to Part 15 of the FCC Rules. These limits are designed
to provide reasonable protection against harmful interference when the
equipment is operated in a commercial environment. This equipment generates,
uses, and can radiate radio frequency energy and, if not installed and used in
accordance with the instruction manual, may cause harmful interference to radio
communications. Operation of this equipment in a residential area is likely to
cause harmful interference in which case the user will be required to correct the
interference at his own expense.
CANADIAN D.O.C. WARNING
This digital apparatus does not exceed the Class A limits for radio noise
emissions from digital apparatus set out in the Radio Interference Regulations of
the Canadian Department of Communications.
Le présent appareil numérique n’émet pas de bruits radioélectriques dépassant
les limites applicables aux appareils numériques de la classe A prescrites dans
le Réglement sur le brouillage radioélectrique édicte par le ministère des
Communications du Canada.
Trademarks
Paxar
is a trademark of Paxar Corporation.
Monarch
SYMBOL
,
6017, and HandiPrint are trademarks of Monarch Marking Systems, Inc.
,
SPT, and PPT are trademarks of Symbol Technologies, Inc.
Monarch Marking Systems
170 Monarch Lane
Miamisburg, Ohio 45342
The Monarch® 6017™ HandiPrint™ printer works with application
programs written for the SYMBOL® SPT® 1700 or PPT® 2700 handheld
computers (“handheld”). The handheld/printer combination is suitable for
retail printing applications.
The printer control language contains commands to
♦ create and print formats.
♦ configure the printer.
♦ enable the use of certain printer features.
The application writes a data stream of commands (in the printer's control
language) to the printer. It writes these commands either directly or through
the Symbol Application Programming Interface (API). For information about
the API, refer to Symbol's Web site (www.symbol.com
This manual describes the printer's control language.
Duty Cycle
The HandiPrint 6017 printer is designed to print up to 1000 inches per day.
The average print rate is 1 inch every 10 seconds at a text character print
density of 25% (i.e., one character printed out of every four positions). Bar
codes and graphics are more dense (print with more dots) than text and may
need a lower duty cycle. If the duty cycle is exceeded, the printer may not print
all of the information that was sent to it.
).
Introduction 1-1
Conventions Used in this Manual
Following are the conventions used in the syntax descriptions of each
command.
Symbol Description
- Separates items in the command sequence.
< > Indicates a variable with a single-byte value.
' ' Indicates the value is a literal. Enter the value as it appears or
use the ASCII hex values for the same characters.
( ) Indicates a variable of any length.
# # Indicates a variable of an exact length.
ESC Indicates the beginning of a command sequence. Enter 1B hex
for this item.
CR-LFNAK
These conventions make it easier for you to read the commands' syntax
descriptions. They are not part of the data streams. For example,
ESC-'F1' may be the syntax description, but the application substitutes 1B
ESC. Also, - and ' (and other such characters described here) are not
for
part of the data stream.
Indicates the end of a response from the printer. In the
response, it is represented as 0D 0A 15 hex.
The printer ignores commands with syntax errors.
1-2 Introduction
CREATING AND PRINTING
2
FORMATS
A format is the design of what your application prints. It consists of fields
placed at various locations on the format. Fields can contain text, graphics,
and bar codes.
This chapter describes how to create a format.
Overview
To create a format:
1. Draw a rough sketch of how you want the format to look. For example,
a graphic may appear at the top, followed by the name of your
organization, followed by a list of items purchased. Your format could
be organized any number of ways.
There are .157-inch no-print zones on the left and right
sides of the format, and a .7-inch no-print zone at the
top of the format.
2. Code the commands to implement your format design, as described in
this chapter.
3. Add any commands to the data stream related to how the printer
performs. For example, at the data stream's beginning, enter the
command to initialize the printer (
4. Embed the data stream in the application and test what you have
written.
18 hex).
Creating Text Fields
Text fields can contain letters, numbers, and symbols. To specify text for
the format, write the text directly to the printer. There is no special
command to use. There are, however, commands/control characters to
select a character set to use and to format the text.
Creating and Printing Formats 2-1
Selecting Character Sets
The printer can use the ANSI or ASCII character sets. These character sets
are preloaded in the printer. ANSI characters are the default.
You can modify character sets/fonts resident in the
printer. See “Modifying Resident Fonts.”
Character Exceptions
Both character sets have missing characters. The
replace and , respectively; the character replaces .
Command Summary
Command Description
ESC-'F1' Selects ANSI characters.
ESC-'F2' Selects ASCII characters.
F1 and F2 are two-character strings, not the familiar
notation for function keys 1 and 2.
and characters
Formatting Text
For the text on your format, you can choose the font, its size, spacing, and
style (normal or bold).
Command Summary
Command Description
1C hex (Extend) Prints characters twice as high as normal.
1D hex (Extendoff) Stops printing characters twice as high as
normal.
2-2 Creating and Printing Formats
Command Description
ESC-'k'-<font> Selects a font. Standard Bold is the default.
<font> 0 Large Rotated (90 degrees clockwise)
ESC-'U'-<mode> Turns bold printing on or off.
<mode> 0 Turn off bold printing.
1Turn on bold printing.
ESC-'a'-<space> Specifies the amount the space for the printer
<space> 0-10 The amount of space (in increments of
Example: ESC-a2 Sets the space between text lines to .25 mm.
1 Large Normal
2 Standard Bold
3 Standard Normal
4 Reduced Bold
5 Reduced Normal
to leave between lines of text.
.125 mm). The default is 3 (.375 mm).
Creating Graphic Fields
The printer can print bitmap graphics from
♦ data streams
♦ flash memory.
You use the same commands for both methods. However, if you use a data
stream, you must recreate the graphic every time you want to print it. If you
put the graphic in flash memory, you create it only once, and then retrieve it
when you want to print it.
Creating and Printing Formats 2-3
Using Data Stream Graphics
You print data stream graphics one line at a time. To create a line, you
specify bits to turn off or on. Bits turned off represent white space, and bits
turned on represent part of the graphic. There is a .125 mm gap between
consecutive lines.
Command Summary
Command Description
ESC-'V'-01 hex-00 hex#data#
#data# 72 hex bytes, indicating the dots to turn on or
You do not directly specify the bits turned on or off.
You specify the bits in groups of eight by using hex
Example
This line of code prints a solid horizontal line of dots.
off. For example, if a specified byte is FF, all
the dots are on. If it is 01, only one dot is on,
and the other 7 are off.
If you accidentally specify less than 72 bytes,
the printer does not print the graphic. If you
specify more than 72 bytes, a fatal exception
occurs.
values.
2-4 Creating and Printing Formats
Using Flash Memory Graphics
You can also use a graphic previously stored in flash memory. You are
limited to one graphic stored in memory at a time. Saving a graphic to flash
memory when there is already one there overwrites the previous one.
To store a graphic in flash memory:
1. Remove the printer’s battery and wait several seconds.
2. Re-insert the battery and enter Download Mode immediately (see
below). It takes two commands to make the transition to Download
Mode. Design the application so that it waits to send the second
command until the printer responds to the first command by returning a
‘?‘ character.
3. Transmit the graphic one line at a time, using a graphic created as
described in “Using Data Stream Graphics.”
4. Save the graphic to flash memory (see below). When it receives the
command, the printer returns a ‘D‘ character, and begins the save.
When the save is complete, the printer transmits an ‘!’ character, and
then an ‘X’ character every 500 milliseconds.
5. Remove the printer’s battery and wait several seconds before replacing
it.
Creating and Printing Formats 2-5
Command Summary
Commands Description
ESC-'DL' Step 1 of entering Download Mode. After
processing this command, the printer returns a
‘?’ character.
ESC-'LG0' Step 2 of entering Download Mode. Any
character not accepted as part of this
command is sent back the handheld.
ESC-'LG'-FF hex Saves the graphic. After receiving this
command, the printer returns a ‘D’ character,
and then saves the graphic.
When finished, the printer sends an ‘!’
character, then it sends an ‘X’ character every
500 milliseconds.
ESC-'Lg0' Prints the graphic stored in flash memory.
ESC-'V'-<low>-<high>#data#
<low> and <high> The hex digits (listed backward) of a number
#data# 72 hex bytes, indicating the dots to turn on or
Note that you are not directly specifying the bits turned
on or off. You are specifying the bits in groups of eight
Prints a number of graphic lines.
indicating how many lines to print. For
example, to print 10 lines,
<high> is 0.
off. For example, if a specified byte is FF, all
the dots are on. If it is 01, only one dot is on,
and the other 7 are off.
If you accidentally specify less than 72 bytes,
the printer does not print the graphic. If you
specify more than 72 bytes, a fatal exception
occurs.
by using two digit hex values.
<low> is A, and
2-6 Creating and Printing Formats
Creating Bar Code Fields
The printer can print the following bar codes, with or without humanreadable data.