Datamax E-Class Mark II, E-Class Mark III, A-Class, A-Class Mark II, MP Compact4 Mark II, M-Class Mark II, H-Class, I-Class, Ex2 Programmer's Manual
Specifications and Main Features
Frequently Asked Questions
User Manual
Class Series II
Programmer’s Manual
Covers the following models:
E-Class Mark II / E-Class Mark III
A-Class / A-Class Mark II
MP Compact4 Mark II
M-Class Mark II
H-Class
I-Class
Ex2
CG Times (based upon Times New Roman), CG Triumvirate, MicroType, and TrueType are
trademarks of the AGFA Monotype Corporation.
PCL, Intellifont, and HP Laser JetII are trademarks of the Hewlett Packard Corporation.
Macintosh is a trademark of the Apple Corporation.
Windows is a trademark of the Microsoft Corporation.
All other brand and product names are trademarks, service marks, registered trademarks,
or registered service marks of their respective companies.
Information in this manual is subject to change without notice and does not represent a
commitment on the part of Datamax-O’Neil Corporation. No part of this manual may be
reproduced or transmitted in any form or by any means, for any purpose other than the
purchaser’s personal use, without the expressed written permission of Datamax-O’Neil
Corporation.
This manual is intended for programmers who wish to create their own label production
software.
The Scope of this Manual
This manual, arranged alphabetically by command, explains Datamax-O’Neil Programming
Language (DPL) and its related uses in the writing, loading and storing of programs for the
control and production of label formats (designs) for the following printers at, or above, the
listed firmware version below:
Model distinctions, including configurations (i.e., Display or Non-Display) and equipment
types (e.g., GPIO-1, graphics display, RFID, etc.), will be indicated in this text to
differentiate command compatibility. The appendices of this manual also contain details that
cannot be ignored; the use of any command will require checking for possible exclusionary
conditions.
Overview
Printer Firmware Version
A-Class 11.08
A-Class Mark II 12.07
E-Class Mark II 12.01
E-Class Mark III 14.07
EX2 11.08
H-Class 12.071
I-Class 11.08
M-Class Mark II 12.071
MP Compact4 Mark II 14.02
version; and then, if necessary, upgrade that firmware. Upgrades are available at
http://www.datamax-oneil.com.
See the <STX>KC command for information regarding attainment of the printer’s firmware
•
• Programming information for Class Series printers (or firmware versions for Class Series
printers) not found in this manual can be found in the Class Series Programmer’s Manual
(part number 88-2316-01), except the S-Class printer and the legacy model printers which
can be found in the DPL Programmer’s Manual (part number 88-2051-01); and, for the E-
3202 see the E-3202 Programmer’s Manual (part number 88-2257-01). All manuals can be
downloaded from our web site at http://www.datamax-oneil.com
• References to “Menu Settings” refer either to the set-up menu or to the system menu of
the printer; consult to the appropriate Operator’s Manual for details.
• Where applicable, printer responses to a host device will depend upon the communication
port, port settings, and cabling.
Class Series 2 Programmer’s Manual 1
.
Overview
This manual contains the following sections and appendices:
OVERVIEW on page 1
Contents, organization, and conventions used in this manual; also includes a
typical data flow sequence for the printer.
CONTROL CODE COMMAND FUNCTIONS on page 9
Description of the attention-getter characters necessary for the printer to receive a
command sequence, and available alternate characters and line terminators.
IMMEDIATE COMMAND FUNCTIONS on page 11
Description of the commands, listed alphabetically, that perform status queries and
printer control commands.
SYSTEM-LEVEL COMMAND FUNCTIONS on page 17
Description of the commands, listed alphabetically, that control the printer and
allow scalable font and image downloads.
EXTENDED SYSTEM-LEVEL COMMAND FUNCTIONS on page 37
Description of the commands (listed alphabetically) that control the printer.
LABEL FORMATTING COMMAND FUNCTIONS on page 125
Description of commands, listed alphabetically, that control the position of text and
images on the media, print or store, and end the formatting process.
FONT LOADING COMMAND FUNCTIONS on page 145
Description of commands, listed alphabetically, used when downloading font data
in PCL-4 compatible bitmaps.
GENERATING LABEL FORMATS on page 147
Description of the structure of records, the different types, and their use in
generating label formats.
APPENDICES on pages 165 – 313
These contain details that cannot be ignored including various tables, programming
examples, printer default values, and bar code symbology details. See the Table of
Contents for specific content information.
GLOSSARY on page 315
Definitions of words, abbreviations, and acronyms used in this manual.
2 Class Series 2 Programmer’s Manual
Overview
General Conventions
These are some of the conventions followed in this manual:
On the header of each page, the name of the section.
On the footer of each page, the page number and the title of the manual.
Names of other manuals referenced are in Italics.
Notes are added to bring your attention to important considerations, tips or helpful
suggestions.
Boldface is also used to bring your attention to important information.
This manual refers to IBM-PC based keyboard command characters for access to the
ASCII character set. Systems based on different formats (e.g., Apple’s Macintosh )
should use the appropriate keyboard command to access the desired ASCII
character. See Appendix A for the ASCII character set.
Computer Entry and Display Conventions
Command syntax and samples are formatted as follows:
The Courier font in boldface indicates the DPL command syntax, and Italics are
used to indicate the command syntax parameters.
Regular Courier font indicates sample commands, files and printer responses.
Square brackets ([ ]) indicate that the item is optional.
<CR>is used to identify the line termination character. Other strings placed
between < > in this manual represent the character of the same ASCII name, and
are single-byte hexadecimal values (e.g., <STX>, <CR>, and <0x0D> equal 02, 0D,
and 0D, respectively).
Hexadecimal values are often displayed in “C” programming language conventions
(e.g., 0x02 = 02 hex, 0x41 = 41 hex, etc.)
Important Safety Instructions
The exclamation point within an equilateral triangle is intended to alert the
user to the presence of important operating and maintenance instructions.
Class Series 2 Programmer’s Manual 3
Overview
Special Instructions
The green check box is intended to alert the user to conventions used within this
text or to notable operating details of the printer.
Typical Data Flow Sequence
The typical data flow sequence is summarized in the following bullets and detailed in the
table below. Printer Commands data is transmitted to the printer as shown in the table from
left to right, top to bottom.
Status commands
Configuration commands
Download commands
Label format
Status commands
Label reprint commands
Memory cleanup
“Status” commands: Get
Status, Request Memory
Module Storage
Information…
“Configuration”
commands, download
image…
“Download” commands,
image, fonts…
Begin label
Label Header record
Label Formatting Data
record –
Object type, orientation,
position, data
Label Quantity
Optional,
bidirectional
communication
required for these
commands.
See <STX>Kc to
reduce configuration
commands
transferred
RAM (temporary) or
Flash (semipermanent)
memory.
Existing label
formats may be
recalled. Label
header records are
not required.
E
4 Class Series 2 Programmer’s Manual
Label Terminate record
Printer Commands Description Notes
<SOH>A
<STX>U01new data for field 01
<STX>E0005
<STX>G
Overview
Status command
Reprint with New Data
Records
Optional,
bidirectional
communication
required for these
commands.
Used for fast
reprints.
<STX>xImagename<CR>
<STX>zA
Memory cleanup
Typically used for
temporary storage.
Commands are available for retrieving stored label formats, updating data, and adding new
data. These techniques are used for increasing throughput; see <STX>G, Label Recall
Command “r”, and Label Save Command “s”.
Typical commands used in the various stages shown above are listed in the tables that
follow.
Configuration Commands
The following table lists some commands useful in controlling printer configuration.
These commands are generally effective only for the current power-up session; toggling
power restores the default configuration. See <STX>Kc for changes to the default powerup configuration. Changing the default power-up configuration and saving objects in
printer Flash memory can reduce the data transmitted for each label and therefore
improve throughput.
Configuration
Command
Name Function
<STX>A
<STX>c
<STX>e
Class Series 2 Programmer’s Manual 5
Set Date and Time Sets Date and Time.
Set Continuous Paper Length
Set Edge Sensor
Must be 0000 for gap media; not used
for reflective media.
Sets sensing for gap or registration hole
type stock.
Length to search for next gap or
reflective mark; not used with
continuous media.
Subsequent measurements interpreted
in metric (most units, mm/10). Label
equivalent command can be used.
Subsequent measurements interpreted
in inches (most units in/100) label
equivalent command can be used.
Effect is not on the label immediately
following command since media position
is at Start of Print between labels;
<STX>K default position relative 64
in/100 maximum deviation.
<STX>S
<STX>V
6 Class Series 2 Programmer’s Manual
Set Feed Rate Sets blank label movement speed.
Software Switch
Enables optional hardware, cutter, and
present sensor.
Download Commands
Download
Command
Overview
Name Function
<STX>I
<STX>i
<ESC>
Download Image
Download Scalable Font
Download Bitmapped Font
Downloads Image to selected memory
module.
Downloads Scalable Font to selected
memory module.
Downloads Bitmapped Font to selected
memory module.
Label Header Commands
These commands determine how the label formatting occurs, the print quality and
quantity. They are typically issued immediately following the <STX>L start of the label
format. The Format Attribute (A) and the Offset (C, R) commands can be changed at
any point between format records to achieve desired effects.
Label Header Command Name
A
C
D
H
M
P
P
Q
R
S
Set Format Attribute
Column Offset
Set Width and Dot Size
Set Heat Setting
Set Mirror Mode
Set Print Speed
Set Backup Speed
Set Quantity
Set Row Offset
Set Feed Speed
Class Series 2 Programmer’s Manual 7
Overview
8 Class Series 2 Programmer’s Manual
2
Control Code Command Functions
Introduction
The printer requires a special “attention-getter” character in order to receive a command
sequence, informing the printer that it is about to receive a command and the type of
command it will be. Control Commands, System-Level Commands, and Font Loading
Commands have their own unique attention-getter, followed by a command character that
directs printer action.
Attention-Getters
The attention-getters (e.g., “SOH”) are standard ASCII control labels that represent a one
character control code (i.e., ^A or Ctrl A). Appendix A contains the entire ASCII Control
Code Chart.
Attention-Getter ASCII Character Decimal Value HEX Value
Immediate Commands
System-Level Commands
Font Loading Commands
Table 2-1: Attention Getter Listings
Easy Control Codes
DPL has been enhanced to accept a 3-character SOH and STX sequence. Easy Control Codes
are always enabled, whether in Standard, Alternate, Alternate 2, or Custom Control Code
Mode. Two types of sequences have been created to meet any application’s requirements.
Use these sequences where you normally would use a single SOH or STX character.
Control Character
SOH %01 ^01
STX %02 ^02
3 “%” Character
Table 2-2: Easy Control Code Listings
SOH 1 01
STX 2 02
ESC 27 1B
Sequence
3 “^”Character
Sequence
Command Type
Control
System
Class Series 2 Programmer’s Manual 9
Control Code Command Functions
Alternate Control Code Modes
For systems unable to transmit certain control codes, Alternate Control Code Modes are
available. Configuring the printer to operate in an Alternate Control Code Mode (selected via
the Setup Menu, the <STX>Kc command or, where applicable, the <STX>KD command)
requires the substitution of Standard Control Characters with Alternate Control Characters in
what is otherwise a normal data stream.
Control
Character
SOH 0x01 0x5E 0x5E
STX 0x02 0x7E 0x7E
CR 0x0D 0x0D 0x7C
ESC 0x1B 0x1B 0x1B
“Count By”
[1]
See Label Formatting Commands, ^ set count by amount.
Throughout this manual <SOH>, <STX>, <CR>, <ESC>, and ^ will be used to indicate control
codes. The actual values will depend on whether standard or alternate control codes are
enabled for the particular application.
Standard Alternate Alternate 2 Custom
[1]
0x5E 0x40 0x40
Table 2-3: Alternate Control Code Listings
User Defined
Command
Type
Control
System
Line Termination
Font Loading
Label Formatting
Alternate Line Terminator Example: Alternate Control Codes provide for substitution of
the line terminator, as well as the control characters listed above. For example using
Alternate 2, the line terminator <CR> (0x0D) is replaced by | (0x7C). The following is a
sample label format data stream for a printer configured for Alternate-2 Control Codes:
~L|1911A10001000101234560|X|~UT01ABCDE|~G|
10 Class Series 2 Programmer’s Manual
3
Immediate Command Functions
Introduction
When the printer receives an Immediate Command, its current operation will be
momentarily interrupted to respond to the command. Immediate Commands may be issued
before or after System-Level commands; however, they may not be issued among Label
Formatting Commands or during font or image downloading. Immediate Commands consist
of:
1. Attention-Getter, 0x01 or 0x5E; see Control Code Command Functions.
2. Command Character
SOH # Reset
This command resets the printer. Resetting the printer returns all settings to default and
clears both the communications and printing buffers. The command also clears DRAM
memory.
Syntax:
Printer Response: The printer will reset.
<SOH>#
<XON> T
(The T may come before the<XON>)
SOH * Reset (Display-Equipped Models only)
This command forces a soft reset of the microprocessor, resetting the printer, returning
all factory default values, and clearing the communication and print buffers.
Syntax:
Printer Response: The printer will reset.
Class Series 2 Programmer’s Manual 11
<SOH>*
<XON> R
(The R may come before the<XON>)
Immediate Command Functions
SOH A Send ASCII Status String
This command allows the host computer to check the current printer status. The printer
returns a string of eight characters, followed by a carriage return. Each character (see
below) indicates an associated condition, either true (Y) or false (N). Byte 1 is
transmitted first. See <SOH>F.
Syntax:
Sample:
Printer Response:
Where:
SOH a Send ASCII Extended Status String
This command allows the host computer to check an extended current printer status.
The printer returns a string of seventeen characters, followed by a carriage return. Most
characters (see below) indicate an associated condition, either true (Y) or false (N). Byte
1 is transmitted first. See <SOH>F.
Syntax:
Sample:
Printer Response:
<SOH>A
<SOH>A
abcdefgh<CR>
Possible
Values
-
a
b
c
d
e
f
g
h
Y/N Y = Interpreter busy (imaging) 1
-
Y/N Y = Paper out or fault 2
-
Y/N Y = Ribbon out or fault 3
-
Y/N Y = Printing batch 4
-
Y/N Y = Busy printing 5
-
Y/N Y = Printer paused 6
-
Y/N Y = Label presented 7
-
Y/N Y = (Internal) Rewinder out or fault 8
Table 3-1: ASCII Status Bytes
<SOH>a
<SOH>a
abcdefgh:ijklmnop<CR>
Interpretation
Transmit
Sequence
12 Class Series 2 Programmer’s Manual
Immediate Command Functions
Where:
SOH B Toggle Pause
This command toggles the printer’s paused state between “On” and “Off.” (This is the
same function achieved by pressing the PAUSE Key.)
Syntax:
Sample:
Printer Response: This command will illuminate the Paused/Stop Indicator and/or
Possible
Values
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/N Y = Interpreter busy (imaging) 1
-
Y/N Y = Paper out or fault 2
-
Y/N Y = Ribbon out or fault 3
-
Y/N Y = Printing batch 4
-
Y/N Y = Busy printing 5
-
Y/N Y = Printer paused 6
-
Y/N Y = Label presented 7
-
Y/N Y = Rewinder out or fault 8
-
: : = Always : 9
-
Y/N Y = Cutter Fault 10
-
Y/N Y = Paper Out 11
-
Y/N Y = Ribbon Saver Fault 12
-
Y/N Y = Print Head Up 13
-
Y/N Y = Top of Form Fault 14
-
Y/N Y = Ribbon Low 15
-
Y/N Y = N (reserved for future) 16
-
Y/N Y = N (reserved for future) 17
-
: : = Always : 18
-
Y/N Y = Ready (no data or signal) 19
-
Y/N Y = Waitng for Signal 20
-
Y/N Y = Waitng for Data 21
-
Y/N Y = Com1 has data not parsed 22
-
Y/N Y = N (reserved for future) 23
-
Y/N Y = N (reserved for future) 24
-
Y/N Y = N (reserved for future) 25
-
Y/N Y = N (reserved for future) 26
<CR> 27
Interpretation
Table 3-1: ASCII Status Bytes
<SOH>B
<SOH>B
indicate PAUSED on the LCD or graphics display panel, suspend
printing, and wait until one of the following occurs:
• The <SOH>B command is sent to the printer.
• The PAUSE Key is pressed.
Upon which the printer will turn the Paused/Stop Indicator “Off”
and/or remove PAUSED from the LCD or graphics display, then
resume operation from the point of interruption. (If the Receive
Buffer is not full, an <XON> character will be transmitted from
the printer.)
Transmit
Sequence
Class Series 2 Programmer’s Manual 13
Immediate Command Functions
SOH C Stop/Cancel
This command performs the same function as pressing the STOP/CANCEL Key (i.e., it
clears the current format from the print buffer, pauses the printer, and illuminates the
Paused/Stop Indicator). (The pause condition is terminated as described under <SOH>B.)
Syntax:
Sample:
Printer Response: The print buffer is cleared and the Paused/Stop Indicator is
SOH D SOH Shutdown
This command is ignored by the printer.
SOH E Send Batch Remaining Quantity
This command causes the printer to return a four-digit number indicating the quantity of
labels that remain to be printed in the current batch, followed by a carriage return.
Communications latency may cause this value to be higher than actual on some printers.
Syntax:
Printer response:
Where:
<SOH>C
<SOH>C
illuminated (and/or PAUSED is displayed on the LCD or graphics
display) as operations are suspended, until one of the following
occurs:
• The <SOH>B command is sent to the printer; or
• The PAUSE Key is pressed.
Upon which the printer will turn the Paused/Stop Indicator
“Off” and/or remove PAUSED from the LCD or graphics
display. (If the Receive Buffer is not full, an <XON> character
will be transmitted from the printer.)
<SOH>E
nnnn<CR>
nnnn -
Are four decimal digits, 0-9999.
14 Class Series 2 Programmer’s Manual
Immediate Command Functions
SOH e Send Batch Printed Quantity
This command causes the printer to return a four-digit number indicating the quantity of
labels that have been printed in the current batch, followed by a carriage return.
Communications latency may cause this value to be lower than actual on some printers.
Syntax:
Printer response:
Where:
SOH F Send Status Byte
This command instructs the printer to send a single status byte where each bit (1 or 0)
represents one of the printer’s status flags, followed by a carriage return (see below). If
an option is unavailable for the printer, the single bit will always be zero. See <SOH>A.
Syntax:
Response format:
Where:
<SOH>e
nnnn<CR>
nnnn -
Are four decimal digits, 0-9999.
<SOH>F
X<CR>
“X” is 0 through 0xef with bits as indicated in the “Condition”
column below:
Bit* Value Condition
8 1 or 0 (Internal) Rewinder out or fault
7 1 or 0 Label presented
6 1 or 0 Printer paused
5 1 or 0 Busy printing
4 1 or 0 Printing batch
3 1 or 0 Ribbon out or Fault
2 1 or 0 Paper out or Fault
1 1 or 0 Command interpreter busy (imaging)
*
One is the least significant bit.
Class Series 2 Programmer’s Manual 15
Immediate Command Functions
16 Class Series 2 Programmer’s Manual
4
System-Level Command Functions
Introduction
The most commonly used commands are the System-Level Commands. These are used to
load and store graphics information, in addition to printer control. System-Level Commands
are used to override default parameter values (fixed and selectable) and may be used
before or after Immediate Commands but cannot be issued among Label Formatting
Commands. System-Level Commands consist of:
1. Attention-Getter, 0x02 or 0x7E; see Control Code Command Functions.
2. Command Character
3. Parameters (if any).
STX A Set Time and Date
This command sets the time and date. The initial setting of the date will be stored in the
printer’s internal inch counter. This date can be verified by printing a Configuration
Label.
Syntax:
Where:
Sample:
Printed response:
<STX>AwmmddyyyyhhMMjjj
w
mm
dd
yyyy
hh
MM
jjj
<STX>A1020319960855034
Mon. Feb 3, 1996, 8:55AM, 034
1 digit for day of week; 1 = Monday; 7 = Sunday
2 digits for month
2 digits for day
4 digits for year
2 digits for hour in 24 hour format
2 digits for minutes
3 digits for Julian date / constant; see notes below.
When set to 000, the Julian date is automatically calculated; otherwise, the Julian
•
date will print as entered, without daily increments. If factory defaults are restored
the actual Julian date will also be restored.
• Printers without the Real Time Clock option lose the set time/date when power is
removed.
• Response format is variable; see the Special Label Formatting Command <STX>T.
Class Series 2 Programmer’s Manual 17
System-Level Command Functions
STX a Enable Feedback Characters
This command enables the feedback ASCII hex characters to be returned from the
printer following specific events after each completed batch of labels when using serial
communications. The default value is ”OFF”.
Syntax:
Printer response: Event dependent. (Also see Appendix D for error codes.)
Where:
STX B Get Printer Time and Date Information
This command instructs the printer to retrieve its internal time and date information.
Syntax:
Sample:
Response format:
Where:
Response sample:
<STX>a
Event Return Characters
Invalid character
Label printed
End of batch
<STX>B
<STX>B
wmmddyyyyhhMMjjj<CR>
w
mm
dd
yyyy
hh
MM
jjj
* See <STX>A for details and restrictions.
1 digit for day of week; 1 = Monday
2 digits for month
2 digits for day
4 digits for year
2 digits for hour in 24 hour format
2 digits for minutes
3 digits for Julian date / constant*
1020319960855034<CR>
0x07 ( BEL )
0x1E ( RS )
0x1F ( US )
18 Class Series 2 Programmer’s Manual
Loading...
+ 300 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.