therein are owned by ZIH Corp. and Zebra’s licensors. Unauthorized reproduction of this manual or the software
and/or firmware in the 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.
ZebraLink, Element Energy Equalizer, E3 and all product names and numbers are trademarks, and Zebra, the Zebra
head graphic, ZPL and ZPL II 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 Corporation.
Product Improvements Continuous improvement of products is a policy of Zebra Technologies Corporation.
All specifications and designs are subject to change without notice.
Liability Disclaimer Zebra Technologies Corporation takes steps to ensure that its published Engineering
specifications and manuals are correct; however, errors do occur. Zebra Technologies Corporation reserves the right
to correct any such errors and disclaims liability resulting therefrom.
Limitation of Liability In no event shall Zebra Technologies Corporation 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 Corporation 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.
Page 3
Contents
Who Should Use This Document ............................................ 3
Note • A command prompt appears briefly as the files are being copied.
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Page 14
Kiosk OPOS Driver Installation
12
Kiosk OPOS Driver Installation
When the update is complete, the following dialog appears.
12. In the Select Printer area, select the Kiosk printer that you want to use with the OPOS
driver, click Install OPOS driver, and then click OK.
The following dialog appears indicating that the installer setup is complete.
13. Click the Run Kiosk OPOS Driver Installer now check box, and then click Finish.
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
Page 15
Testing the Installation
When the driver is installed a link to the test application can be found in the Start menu
OPOS_Test folder or All Programs\Kiosk OPOS Driver Installer folder.
Due to the nature of the Zebra Kiosk printers not being true POS devices, we have certain
limitations and differences to the original specification. The Zebra Kiosk OPOS driver is based
on the Version 1.11 OLE for Retail POS specification but is working together with an
underlying Windows driver for the Kiosk printers.
The following sections describe:
• How an Application Uses an OPOS Control on page 16
• Device Power Reporting Model on page 16
• Summary of Common Properties, Methods, and Events on page 17
• DirectIO Method on page 19
• Events on page 21
• POS Printer Summary on page 21
• General Information on page 28
• Properties on page 33
• Methods on page 36
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Page 18
Kiosk Modifications of the OLE for Retail POS
16
How an Application Uses an OPOS Control
How an Application Uses an OPOS Control
The first action the application must take on the Control is to call its Open method. The
parameter of this method selects a device name to associate with the Control. The Open
method performs the following steps:
• Establishes a link to the device name that in our case is the Windows printer driver name.
• Initializes the properties OpenResult, Claimed, DeviceEnabled, DataEventEnabled, FreezeEvents, AutoDisable, DataCount, and BinaryConversion, as well as descriptions
and version numbers of the OPOS Control layers. Additional class-specific properties may
also be initialized.
Several applications may have an OPOS Control open at the same time. Therefore, after the
device is opened, the application will need to call the ClaimDevice method to gain exclusive
access to the device. The device must be claimed before the Control allows access to its
methods and properties. Claiming the device ensures that other applications do not interfere
with the use of the device. The application may call the ReleaseDevice method when the
device can be shared by other applications – for instance, at the end of a transaction.
Before using the device, the application must set the DeviceEnabled property to TRUE. This
value brings the device to an operational state, while FALSE disables the device.
After the application has finished using the device, the DeviceEnabled property should be set
to FALSE, then the ReleaseDevice method and finally the Close method should be called to
release the device and associated resources. Before exiting, an application should close all
open OPOS Controls.
In summary, the application follows this general sequence:
• Open method: Call to link the Control Object to the Service Object.
• ClaimDevice method: Call to gain exclusive access to the device. Required for exclusiveuse devices; optional for some sharable devices.
• DeviceEnabled property: Set to TRUE to make the device operational.
• Use the device.
• DeviceEnabled property: Set to FALSE to disable the device.
• ReleaseDevice method: Call to release exclusive access to the device.
• Close method: Call to release the Service Object from the Control Object.
Device Power Reporting Model
Kiosk Printer OPOS segments device power into two states:
• ONLINE: The device is powered on and ready for use. This is the “operational” state.
• OFF_OFFLINE: The device is either off or offline and the Service Object cannot
distinguish these states.
Power reporting only occurs while the device is open, claimed (if the device is exclusive-use),
and enabled.
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
Page 19
Kiosk Modifications of the OLE for Retail POS
Summary of Common Properties, Methods, and Events
Summary of Common Properties, Methods, and Events
Table 1 • Common Properties
17
NameVerType Access
AutoDisable1.2Boolean R/WNO
CapCompareFirmwareVersion1.9Boolean RNO
BinaryConversion1.2LongR/WNO
CapPowerReporting1.3LongRNO
CapStatisticsReporting1.8Boolean RNO
CapUpdateFirmware1.9Boolean RNO
CapUpdateStatistics1.8Boolean RNO
CheckHealthText1.0StringRYES
Claimed1.0BooleanRYES
DataCount1.2LongRNO
DataEventEnabled1.0Boolean R/WNO
DeviceEnabled1.0Boolean R/WYES
FreezeEvents1.0Boolean R/WYES
OpenResult1.5LongRYES
OutputID1.0LongRNO
Zebra Kiosk Printer
Supported Properties
PowerNotify1.3LongR/WNO
PowerState1.3LongRNO
ResultCode1.0LongRYES
ResultCodeExtended1.0LongRYES
State1.0LongRYES
ControlObjectDescription1.0StringRYES
ControlObjectVersion1.0LongRYES
ServiceObjectDescription1.0StringRYES
ServiceObjectVersion1.0LongRYES
DeviceDescription1.0StringRYES
DeviceName1.0StringRYES
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Page 20
Kiosk Modifications of the OLE for Retail POS
18
Summary of Common Properties, Methods, and Events
Table 2 • Common Methods
NameVer
Zebra Kiosk Printer
Supported Methods
Open1.0YES
Close1.0YES
ClaimDevice1.0YES
Claim—Special addition
ReleaseDevice1.0YES
CheckHealth1.0NO
ClearInput1.0NO
clearInputProperties 1.1NO
ClearOutput1.0NO
DirectIO1.0YES
compareFirmwareVersion1.9NO
resetStatistics1.8NO
retrieveStatistics1.8NO
updateFirmware1.9NO
updateStatistics1.8NO
Table 3 • Common Events
NameVer
Zebra Kiosk Printer
Supported Events
DataEvent1.0NO
DirectIOEvent1.0YES
ErrorEvent1.0YES
OutputCompleteEvent1.0NO
StatusUpdateEvent1.0YES
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
Page 21
DirectIO Method
Syntax LONG DirectIO (LONG Command, LONG* pData, BSTR* pString);
Parameters This table identifies the parameters for this format:
ParameterDescription
CommandCommand number. 0 is the only valid option for the Kiosk
pDataPointer to additional numeric data. Set to the amount of bytes
pStringPointer to additional string of valid ESC commands or data.
Kiosk Modifications of the OLE for Retail POS
DirectIO Method
printers and then you can send any valid ESC commands with
the exception of status enquiries or data to the printer in the
pString buffer.
pData is set to the amount of bytes in pString.
in pString.
The data format has to comply with the data format specified
in the Kiosk printers Technical Manual. It is recommended to
only use printer parameter set commands since the printing is
implemented through the Kiosk Printer Windows Driver.
19
Remarks Call to communicate directly with the Service Object.
This method provides a means for a Service Object to provide functionality to the application
that is not otherwise supported by the standard Control Object for its device class. Depending
upon the Service Object’s definition of the command, this method may be asynchronous or
synchronous.
Use of DirectIO will make an application non-portable. The application may, however,
maintain portability by performing DirectIO calls within conditional code. This code may be
based upon the value of the ServiceObjectDescription, DeviceDescription, or DeviceName
property.
Return One of the following values is returned by the method and placed in the ResultCode
property:
ValueMeaning
OPOS_SUCCESSDirect I/O successful.
Other ValuesSee ResultCode.
The use of DirectIO has one valid command entry.
DirectIO (0, BufferLength, Buffer)
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Page 22
Kiosk Modifications of the OLE for Retail POS
20
DirectIO Method
The calling application has to prepare the DirectIO function with the following data: {STX}
and the printout with the following data: {ETX}.
After sending of {STX} you can send all valid KPL commands to the printer but they have to
be in binary format.
Example • ESC N 1 should be sent as 27 N 1. Where 27 is the binary decimal value for
Entering a command of 0 or 1 will result in printing the buffer with KPL and ending the page
after the command. There is no continuation of the data possible with these Commands.
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
Page 23
Events
ErrorEvent Event
Remarks Fired when an error is detected and the Control’s State transitions into the error
state.
Input error events are not delivered until the DataEventEnabled property is TRUE, so that
proper application sequencing occurs.
Note • In the Kiosk environment it is not expected that the receipt will be retried because
when a severe Error occurs, a Technician has to go out and clear the Error at the remote
location. Therefore, Retry is not supported and Cancel will clear the printer buffer. All data
will be sent to the printer regardless of the error state.
POS Printer Summary
Kiosk Modifications of the OLE for Retail POS
Table 4 • Common Properties
Events
21
Zebra Kiosk Printer
Property (Common)VerTypeAccessMay Use After
AutoDisable1.2BooleanR/WNot Supported NO
BinaryConversion1.2LongR/WOpenNO
CapCompareFirmwareVersion1.9Boolean R—NO
CapPowerReporting1.3LongROpenNO
CapStatisticsReporting1.8BooleanROpenNO
CapUpdateFirmware1.9BooleanROpenNO
CapUpdateStatistics1.8BooleanROpenNO
CheckHealthText1.0StringROpen NO
Claimed1.0BooleanRROpen YES
DataCount1.2LongRNot Supported NO
DataEventEnabled1.0BooleanR/WNot Supported NO
DeviceEnabled1.0BooleanR/WOpen & Claim YES
FreezeEvents1.0BooleanR/WOpen YES
OpenResult1.5LongR—YES
OutputID1.0LongROpen YES
Supported
Properties
PowerNotify1.3LongR/WOpenNO
PowerState1.3LongROpenNO
ResultCode1.0LongR—YES
ResultCodeExtended1.0LongROpen YES
State1.0LongR—YES
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Page 24
Kiosk Modifications of the OLE for Retail POS
22
POS Printer Summary
Table 4 • Common Properties (Continued)
Property (Common)VerTypeAccessMay Use After
ControlObjectDescription1.0StringR—YES
ControlObjectVersion1.0LongR—YES
ServiceObjectDescription1.0StringROpen YES
ServiceObjectVersion1.0LongROpen YES
DeviceDescription1.0StringROpen YES
DeviceName1.0StringROpen YES
Table 5 • Specific Properties
Zebra Kiosk Printer
Supported
Properties
Property (Specific)VerTypeAccessMay Use After
Zebra Kiosk Printer
Supported Properties
CapCharacterSet1.1LongROpenYES
CapConcurrentJrnRec1.0BooleanROpenNO
CapConcurrentJrnSlp1.0BooleanROpenNO
CapConcurrentRecSlp1.0BooleanROpenNO
CapCoverSensor1.0BooleanROpenYES
CapTransaction1.1BooleanROpenNO
CapConcurrentPageMode1.9BooleanROpenNO
CapMapCharacterSet1.7BooleanROpenNO
CapJrnPresent1.0BooleanROpenNO
CapJrn2Color1.0BooleanROpenNO
CapJrnBold1.0BooleanROpenNO
CapJrnCartridgeSensor1.5LongROpenNO
CapJrnColor1.5LongROpenNO
CapJrnDhigh1.0BooleanROpenNO
CapJrnDwide1.0BooleanROpenNO
CapJrnDwideDhigh1.0BooleanROpenNO
CapJrnEmptySensor1.0BooleanROpenNO
CapJrnItalic1.0BooleanROpenNO
CapJrnNearEndSensor1.0BooleanROpenNO
CapJrnUnderline1.0BooleanROpenNO
CapRecPresent1.0BooleanROpenYES
CapRec2Color1.0BooleanROpenNO
CapRecBarCode1.0BooleanROpenYES
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
Page 25
Kiosk Modifications of the OLE for Retail POS
Table 5 • Specific Properties (Continued)
POS Printer Summary
23
Property (Specific)VerTypeAccessMay Use After
Zebra Kiosk Printer
Supported Properties
CapRecBitmap1.0BooleanROpenYES
CapRecBold1.0BooleanROpenYES
CapRecCartridgeSensor1.5LongROpenNO
CapRecColor1.5LongROpenNO
CapRecDhigh1.0BooleanROpenYES
CapRecDwide1.0BooleanROpenYES
CapRecDwideDhigh1.0BooleanROpenYES
CapRecEmptySensor1.0BooleanROpenYES
CapRecItalic1.0BooleanROpenYES
CapRecLeft901.0BooleanROpenYES
CapRecMarkFeed1.5LongROpenNO
CapRecNearEndSensor1.0BooleanROpenYES
CapRecPapercut1.0BooleanROpenYES
CapRecRight901.0BooleanROpenNO
CapRecRotate1801.0BooleanROpenNO
CapRecStamp1.0BooleanROpenNO
CapRecUnderline1.0BooleanROpenYES
CapRecPageMode1.9BooleanROpenNO
CapSlpPageMode1.9BooleanROpenNO
CapSlpPresent1.0BooleanROpenNO
CapSlpFullslip1.0BooleanROpenNO
CapSlp2Color1.0BooleanROpenNO
CapSlpBarCode1.0BooleanROpenNO
CapSlpBitmap1.0BooleanROpenNO
CapSlpBold1.0BooleanROpenNO
CapSlpBothSidesPrint1.5BooleanROpenNO
CapSlpCartridgeSensor1.5LongROpenNO
CapSlpColor1.5LongROpenNO
CapSlpDhigh1.0BooleanROpenNO
CapSlpDwide1.0BooleanROpenNO
CapSlpDwideDhigh1.0BooleanROpenNO
CapSlpEmptySensor1.0BooleanROpenNO
CapSlpItalic1.0BooleanROpenNO
CapSlpLeft901.0BooleanROpenNO
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Page 26
Kiosk Modifications of the OLE for Retail POS
24
POS Printer Summary
Table 5 • Specific Properties (Continued)
Property (Specific)VerTypeAccessMay Use After
Zebra Kiosk Printer
Supported Properties
CapSlpNearEndSensor1.0BooleanROpenNO
CapSlpRight901.0BooleanROpenNO
CapSlpRotate1801.0BooleanROpenNO
CapSlpUnderline1.0BooleanROpenNO
AsyncMode1.0BooleanR/WOpenYES
CartridgeNotify1.5LongR/WOpenNO
CharacterSet1.0LongR/WOpen, Claim,
YES
& Enable
CharacterSetList1.0StringROpenYES
CoverOpen1.0BooleanROpen, Claim,
YES
& Enable
ErrorLevel1.1LongROpenYES
ErrorStation1.0LongROpenYES
ErrorString1.1StringROpenYES
FontTypefaceList1.1StringROpenYES
FlagWhenIdle1.0BooleanR/WOpenNO
MapCharacterSet1.7BooleanR/WOpenNO
MapMode1.0LongR/WOpenYES
PageModeArea1.9StringR/WOpenNO
PageModeDescriptor1.9Int32R/WOpenNO
PageModeHorizontalPosition1.9Int32R/WOpenNO
PageModePrintArea1.9StringR/WOpenNO
PageModePrintDirection1.9Int32R/WOpenNO
PageModeStation1.9Int32R/WOpenNO
PageModeVerticalPosition1.9Int32R/WOpenNO
RotateSpecial1.1LongR/WOpenYES
JrnLineChars1.0LongR/WOpen, Claim,
NO
& Enable
JrnLineCharsList1.0StringROpenNO
JrnLineHeight1.0LongR/WOpen, Claim,
NO
& Enable
JrnLineSpacing1.0LongR/WOpen, Claim,
NO
& Enable
JrnLineWidth1.0LongROpen, Claim,
NO
& Enable
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
Page 27
Kiosk Modifications of the OLE for Retail POS
Table 5 • Specific Properties (Continued)
POS Printer Summary
25
Property (Specific)VerTypeAccessMay Use After
JrnLetterQuality1.0BooleanR/WOpen, Claim,
Zebra Kiosk Printer
Supported Properties
NO
& Enable
JrnEmpty1.0BooleanROpen, Claim,
NO
& Enable
JrnNearEnd1.0BooleanROpen, Claim,
NO
& Enable
JrnCartridgeState1.5LongROpen, Claim,
NO
& Enable
JrnCurrentCartridge1.5LongR/WOpen, Claim,
NO
& Enable
RecLineChars1.0LongR/WOpen, Claim,
YES
& Enable
RecLineCharsList1.0StringROpenYES
RecLineHeight1.0LongR/WOpen, Claim,
NO
& Enable
RecLineSpacing1.0LongR/WOpen, Claim,
YES
& Enable
RecLineWidth1.0LongROpen, Claim,
YES
& Enable
RecLetterQuality1.0BooleanR/WOpen, Claim,
NO
& Enable
RecEmpty1.0BooleanROpen, Claim,
YES
& Enable
RecNearEnd1.0BooleanROpen, Claim,
YES
& Enable
RecSidewaysMaxLines1.0LongROpen, Claim,
YES
& Enable
RecSidewaysMaxChars1.0LongROpen, Claim,
YES
& Enable
RecLinesToPaperCut1.0LongROpen, Claim,
YES
& Enable
RecBarCodeRotationList1.1StringROpenYES
RecBitmapRotationList1.7StringROpenNO
RecCartridgeState1.5LongROpen, Claim,
NO
& Enable
RecCurrentCartridge1.5LongR/WOpen, Claim,
NO
& Enable
SlpLineChars1.0LongR/WOpen, Claim,
NO
& Enable
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Page 28
Kiosk Modifications of the OLE for Retail POS
26
POS Printer Summary
Table 5 • Specific Properties (Continued)
Property (Specific)VerTypeAccessMay Use After
Zebra Kiosk Printer
Supported Properties
SlpLineCharsList1.0StringROpenNO
SlpLineHeight1.0LongR/WOpen, Claim,
NO
& Enable
SlpLineSpacing1.0LongR/WOpen, Claim,
NO
& Enable
SlpLineWidth1.0LongROpen, Claim,
NO
& Enable
SlpLetterQuality1.0BooleanR/WOpen, Claim,
NO
& Enable
SlpEmpty1.0BooleanROpen, Claim,
NO
& Enable
SlpNearEnd1.0BooleanROpen, Claim,
NO
& Enable
SlpSidewaysMaxLines1.0LongROpen, Claim,
NO
& Enable
SlpSidewaysMaxChars1.0LongROpen, Claim,
NO
& Enable
SlpMaxLines1.0LongROpen, Claim,
NO
& Enable
SlpLinesNearEndToEnd1.0LongROpen, Claim,
NO
& Enable
SlpBarCodeRotationList1.1StringROpenNO
SlpBitmapRotationList1.7StringROpenNO
SlpPrintSide1.5LongROpen, Claim,
NO
& Enable
SlpCartridgeState1.5LongROpen, Claim,
NO
& Enable
SlpCurrentCartridge1.5LongR/WOpen, Claim,
NO
& Enable
Table 6 • Common Methods
Method (Common)VerMay Use After
Zebra Kiosk Printer
Supported Methods
Open1.0—YES
Close1.0Open YES
ClaimDevice1.0Open YES
ReleaseDevice1.0Open & Claim YES
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
Page 29
Kiosk Modifications of the OLE for Retail POS
Table 6 • Common Methods
POS Printer Summary
27
Method (Common)VerMay Use After
Zebra Kiosk Printer
Supported Methods
CheckHealth1.0Open, Claim, & EnableYES
ClearInput1.0Not Supported NO
ClearOutput1.0Open & ClaimYES
DirectIO1.0Open YES
compareFirmwareVersion1.9—NO
resetStatistics1.8—NO
retrieveStatistics1.8—NO
updateFirmware1.9—NO
updateStatistics1.8—NO
Table 7 • Specific Methods
Method (Specific)VerMay Use After
Zebra Kiosk Printer
Supported Methods
PrintNormal1.0Open, Claim, & EnableYES
PrintTwoNormal1.0Open, Claim, & EnableNO
PrintImmediate1.0Open, Claim, & EnableYES
printMemoryBitmap1.10—NO
BeginInsertion1.0Open, Claim, & EnableNO
EndInsertion1.0Open, Claim, & EnableNO
BeginRemoval1.0Open, Claim, & EnableNO
clearPrintArea1.9—NO
EndRemoval1.0Open, Claim, & EnableNO
CutPaper1.0Open, Claim, & EnableFull cut and 50% cut to
implement the page hold in
the driver. The driver cut
value will be used to partial
cut.
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Page 30
Kiosk Modifications of the OLE for Retail POS
28
General Information
Table 7 • Specific Methods
Method (Specific)VerMay Use After
ChangePrintSide1.5Open, Claim, & EnableNO
MarkFeed1.5Open, Claim, & EnableNO
pageModePrint1.9—NO
NameVerMay Occur After
DataEvent1.0Not Supported NO
DirectIOEvent1.0Open, ClaimYES
ErrorEvent1.0Open, Claim, & EnableYES
OutputCompleteEvent1.0Open, Claim, & EnableNO
StatusUpdateEvent1.0Open, Claim, & EnableYES
General Information
Zebra Kiosk Printer
Supported Methods
Table 8 • Events
Zebra Kiosk Printer
Supported Events
The POS Printer follows the general output model, with some enhancements:
Printer out-of-paper and cover open conditions are reported by setting the ResultCode to
OPOS_E_EXTENDED and then setting ResultCodeExtended to one of the following error
conditions:
• OPOS_EPTR_REC_EMPTY
• OPOS_EPTR_COVER_OPEN
• OPOS_EPTR_REC_CARTRIDGE_REMOVED
• OPOS_EPTR_REC_CARTRIDGE_EMPTY
• OPOS_EPTR_REC_HEAD_CLEANING
Other printer errors are reported by setting the ResultCode to OPOS_E_FAILURE or another
standard error status. These failures are typically due to a printer fault or jam, or to a more
serious error. The Kiosk printer
returns a few different error strings back which state the kind
of failure.
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
Page 31
Kiosk Modifications of the OLE for Retail POS
Data Characters and Escape Sequences
The following escape sequences are recognized. If an escape sequence specifies an operation
that is not supported by the printer station, then it is ignored.
One Shots Perform indicated action.
Table 9 • One Shot Data Characters and Escape Sequences
General Information
29
NameDataRemarks
Paper cutESC |#PCuts receipt paper. The character ‘#’
is replaced by an ASCII decimal
string telling the percentage cut
desired. If ‘#’ is omitted, then a full
cut is performed. For example: The C
string “\x1B|75P” requests a 75%
partial cut.
Feed and Paper cutESC |#fPCuts receipt paper, after feeding the
paper by the RecLinesToPaperCut
lines. The character ‘#’ is defined by
the “Paper cut” escape sequence.
Feed, Paper cut, and
Stamp
ESC |#sPCuts and stamps receipt paper, after
feeding the paper by the
RecLinesToPaperCut lines. The
character ‘#’ is defined by the “Paper
cut” escape sequence.
Zebra Kiosk
Printer Supported
For a full cut use
ESC|100P.
Use ESC|50P if you want
to use Hold Page in the
Windows driver.
See Paper cut.
Use ESC|100P.
This command is not
working as expected
when used with the
Windows printer driver
and the paper advance at
the end before cut has to
be setup in the Driver’s
Printing Preferences
under Advanced settings.
NO
Fire stampESC |sLFires the stamp solenoid, which
NO
usually contains a graphical store
emblem.
Print bitmapESC |#BPrints the pre-stored bitmap. The
character ‘#’ is replaced by the bitmap
number. See setBitmap method.
YES
Note • This command
will be ignored in Left90
rotation.
Print top logoESC |tLPrints the pre-stored top logo.NO
Print bottom logoESC |bLPrints the pre-stored bottom logo.NO
Feed linesESC |#lFFeed the paper forward by lines. The
YES
character ‘#’ is replaced by an ASCII
decimal string telling the number of
lines to be fed. If ‘#’ is omitted, then
one line is fed.
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Page 32
Kiosk Modifications of the OLE for Retail POS
30
General Information
Table 9 • One Shot Data Characters and Escape Sequences (Continued)
NameDataRemarks
Feed unitsESC |#uFFeed the paper forward by mapping
mode units. The character ‘#’ is
replaced by an ASCII decimal string
telling the number of units to be fed. If
‘#’ is omitted, then one unit is fed.
Feed reverseESC |#rFFeed the paper backward. The
character ‘#’ is replaced by an ASCII
decimal string telling the number of
lines to be fed. If ‘#’ is omitted, then
one line is fed.
Print Mode Characteristics that are remembered until explicitly changed.
Table 10 • Print Mode Data Characters and Escape Sequences
NameDataRemarks
Pass through
embedded data
ESC |#ESend the following # characters of
data through to the hardware without
modifying it. The character '#' is
replaced by an ASCII decimal string
telling the number of bytes following
the escape sequence that should be
passed through as-is to the hardware.
Zebra Kiosk
Printer Supported
NO
NO
Zebra Kiosk
Printer Supported
NO
Print in-line barcodeESC |#RPrints the defined barcode in-line. The
character ‘#’ is the number of
characters following the R to use in
the definition of the characteristics of
the barcode to be printed. See details
below.
Font typeface selectionESC |#fTSelects a new typeface for the
following data. Values for the
character ‘#’ are:
0 = Default typeface.
1 = Select second typeface from the
FontTypefaceList property.
2 = Select third typeface from the
FontTypefaceList property.
And so on.
NO
YES
The Kiosk OPOS driver
has 2 fonts implemented.
Valid selections are 0 for
(small) Monospace, 1 for
Lucida Console (big)
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
Page 33
Kiosk Modifications of the OLE for Retail POS
General Information
Print Line Characteristics that are reset at the end of each print method or by a “Normal”
sequence.
Table 11 • Print Line Data Characters and Escape Sequences
31
NameDataRemarks
BoldESC |(!)bCPrints in bold or double-strike. If ‘!’
is specified then bold is disabled,
UnderlineESC |#uCPrints with underline. The character
‘#’ is replaced by an ASCII decimal
string telling the thickness of the
underline in printer dot units. If ‘#’ is
omitted, then a printer-specific
default thickness is used.
ItalicESC |(!)iCPrints in italics. If ‘!’ is specified
then italic is disabled.
Alternate color
(Custom)
ESC |#rCPrints using an alternate custom
color. The character ‘#’ is replaced
by an ASCII decimal string
indicating the desired color. The
value of the decimal string is equal
to the value of the cartridge constant
used in the printer device properties.
If ‘#’ is omitted, then the secondary
color (Custom Color 1) is selected.
Custom Color 1 is usually red.
Zebra Kiosk
Printer Supported
YES
YES
YES
NO
Reverse videoESC |(!)rvCPrints in a reverse video format. If ‘!’
YES
is specified then reverse video is
disabled.
ShadingESC |#sCPrints in a shaded manner. The
NO
character ‘#’ is replaced by an ASCII
decimal string telling the percentage
shading desired. If ‘#’ is omitted,
then a printer-specific default level
of shading is used.
Single high & wideESC |1CPrints normal size.YES
Double wideESC |2CPrints double-wide characters.YES, can co-exist with
normal characters on the
line
Double highESC |3CPrints double-high characters.YES, can co-exist with
normal characters on the
line
Double high & wideESC |4CPrints double-high/double-wide
characters.
YES, can co-exist with
normal characters on the
line
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Page 34
Kiosk Modifications of the OLE for Retail POS
32
General Information
Table 11 • Print Line Data Characters and Escape Sequences (Continued)
NameDataRemarks
Scale horizontallyESC |#hCPrints with the width scaled ‘#’ times
the normal size, where ‘#’ is
replaced by an ASCII decimal string.
Scale verticallyESC |#vCPrints with the height scaled ‘#’
times the normal size, where ‘#’ is
replaced by an ASCII decimal string.
RGB colorESC |#fCPrints in # color. The character ‘#’ is
replaced by an ASCII decimal string
indicating the additive amount of
RGB to produce the desired color.
There are 3 digits each of Red, Green
and Blue elements. Valid values
range from “000” to “255”. (For
example, “255255000” represents
yellow.) Color Matching to the
subtractive percentage of CMY
(Cyan, Magenta and Yellow
components) to produce the desired
color matching specified by the RGB
is up to the service object. If ‘#’ is
omitted, then the primary color is
used. Bitmap printing is not affected.
Zebra Kiosk
Printer Supported
YES, max value 7
YES, max value 15
NO
CenterESC |cAAligns following text in the center.YES
Right justifyESC |rAAligns following text at the right.YES
NormalESC |NRestores printer characteristics to
YES
normal condition.
SubScriptESC |(!)tbCPrints SubScript characters. If ‘!’ is
NO
specified then SubScript is disabled.
SuperScriptESC |(!)tpCPrints SuperScript characters. If ‘!’ is
NO
specified then SuperScript is
disabled.
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
Page 35
Properties
CapCharacterSet Property
Added in Release 1.1, Updated in Release 1.5
Syntax LONG CapCharacterSet
Kiosk Modifications of the OLE for Retail POS
Properties
33
Remarks Holds the default character set capability. It is PTR_CCS_WINDOWS for Kiosk
printer.
Value
PTR_CCS_WINDOWSThe Windows ANSI character set. The value of this constant is
999. This is exactly equivalent to the Windows code page 1252.
This property is initialized by the Open method.
CapRecMarkFeed Property
Added in Release 1.5
Mark feed is only supported through settings in the Windows driver.
CapRecNearEndSensor Property
• This property is initialized by the Open method.
• This sensor will be reported as “Paper near end.”
Meaning
CapRecPapercut Property
• This property is initialized by the Open method.
• The Kiosk printer supports full 100% cut and 50% cut. See CutPaper on page 27 for more
information.
CharacterSet Property
Updated in Release 1.5
This property is initialized when the device is first enabled following the Open method.
Values are: PTR_CS_WINDOWS for Kiosk printer.
Value
PTR_CS_WINDOWSThe Windows ANSI character set. The value of this constant is
999. This is exactly equivalent to the Windows code page 1252.
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Meaning
Page 36
Kiosk Modifications of the OLE for Retail POS
34
Properties
CharacterSetList Property
“999” for Kiosk printer.
FontTypefaceList Property
Added in Release 1.1
There are two fonts supported in the Kiosk printer; a small Monospac821 BT and a larger
Lucida Console.
MapMode Property
The value of MapMode is initialized to PTR_MM_DOTS when the device is first enabled
following the Open method. This is the only valid setting for the Kiosk printer.
RecBarCodeRotationList Property
Added in Release 1.1
The Kiosk printer cannot rotate barcodes. The barcode is always in Portrait position.
RecLineChars Property
The value of RecLineChars is initialized to the printer’s default line character width when the
device is first enabled following the Open method. It depends on the page width setting of the
Paper setting in the Windows driver and can be controlled by modifying the paper template
used in the driver.
RecLineCharsList Property
This property is initialized by the Open method. The string consists of ASCII numeric set
numbers, separated by commas.
It depends on the page width setting of the Paper setting in the Windows driver and can be
controlled by modifying the paper template used in the driver.
RecLineHeight Property
The value of RecLineHeight is initialized to the printer’s default line height when the device is
first enabled following the Open method. It depends on the selected Windows font height and
is 30 for the first font and 44 for the second font. The height is reflected in logical units.
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
Page 37
RecLineSpacing Property
The value of RecLineSpacing is initialized to the printer’s default line spacing when the
device is first enabled following the Open method. The value is approximately 7/10 of the
RecLineHeight.
RecLinesToPaperCut Property
This property is initialized when the device is first enabled following the Open method. The
value is determined by the CutPosition parameter set during installation (found in the INF file
and set in mm) and divided by the RecLineHeight.
RecLineWidth Property
The value of RecLineWidth is initialized to the printer’s default line width when the device is
first enabled following the Open method.
It depends on the selected Windows font height and is 15 for the first font and 22 for the
second font.
Kiosk Modifications of the OLE for Retail POS
Properties
35
RecSidewaysMaxChars Property
This property is initialized when the device is first enabled following the Open method. The
number depends on the paper template used in the Windows driver and the printing mode the
driver is set to.
RecSidewaysMaxLines Property
This property is initialized when the device is first enabled following the Open method.
The number depends on the paper template used in the Windows driver and the printing mode
the driver is set to.
RotateSpecial Property
Added in Release 1.1
This property is initialized to PTR_RP_NORMAL by the Open method.
Values are: Only PTR_RP_NORMAL is valid for the Kiosk printer.
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Page 38
Kiosk Modifications of the OLE for Retail POS
36
Methods
Methods
CutPaper Method
The Percentage parameter indicates the percentage of paper to cut. The constant identifier
PTR_CP_FULLCUT or the value 100 causes a full paper cut. A full cut and 50% cut are the
only valid values for the Kiosk printer.
PrintBarCode Method
Description
Symbology
Height
Width
Alignment
TextPosition
The Alignment parameter values are:
ValueMeaning
PTR_BC_LEFT
PTR_BC_CENTER
PTR_BC_RIGHT
Other Values
Barcode symbol type to use. See values below.
Barcode height. Expressed in the unit of measure given by
MapMode. (Valid values can be 96, 124.)
Barcode width. Expressed in the unit of measure given by
MapMode. (Valid values can be 40 to 70.)
Placement of the barcode. The Kiosk printer can’t align
Barcode other then PTR_BC_LEFT.
Placement of the readable character string. See values below.
Align with the left-most print column.
Align in the center of the station. (Not valid.)
Align with the right-most print column. (Not valid.)
Distance from the left-most print column to the start of the
barcode. Expressed in the unit of measure given by
MapMode. (Not valid.)
The TextPosition parameter values are:
ValueMeaning
PTR_BC_TEXT_NONE
PTR_BC_TEXT_ABOVE
PTR_BC_TEXT_BELOW
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
No text is printed. Only print the barcode.
Print the text above the barcode.
Print the text below the barcode.
Page 39
Kiosk Modifications of the OLE for Retail POS
Methods
The Symbology parameter values for this release are:
Table 12 • One Dimensional Symbologies
ValueMeaning
PTR_BCS_UPCAUPC-A—
PTR_BCS_UPCA_SUPC-A with supplemental barcode (Not valid)
PTR_BCS_UPCEUPC-E(Not valid)
PTR_BCS_UPCE_SUPC-E with supplemental barcode(Not valid)
PTR_BCS_UPCD1UPC-D1(Not valid)
PTR_BCS_UPCD2UPC-D2(Not valid)
PTR_BCS_UPCD3UPC-D3(Not valid)
PTR_BCS_UPCD4UPC-D4(Not valid)
PTR_BCS_UPCD5UPC-D5(Not valid)
PTR_BCS_EAN8EAN 8 (= JAN 8)(Not valid)
PTR_BCS_JAN8JAN 8 (= EAN 8)(Not valid)
37
PTR_BCS_EAN8_SEAN 8 with supplemental barcode(Not valid)
PTR_BCS_EAN13EAN 13 (= JAN 13)(Only EAN 13)
PTR_BCS_JAN13JAN 13 (= EAN 13)(Not valid)
PTR_BCS_EAN13_SEAN 13 with supplemental barcode(Not valid)
PTR_BCS_EAN128EAN-128(Not valid)
PTR_BCS_TFStandard (or discrete) 2 of 5(Not valid)
PTR_BCS_ITFInterleaved 2 of 5(Not valid)
PTR_BCS_CodabarCodabar(Not valid)
PTR_BCS_Code39Code 39(Not valid)
PTR_BCS_Code93Code 93(Not valid)
PTR_BCS_Code128Code 128(Not valid)
PTR_BCS_OCRAOCR “A”(Not valid)
PTR_BCS_OCRBOCR “B”(Not valid)
Table 13 • Two Dimensional Symbologies
ValueMeaning
PTR_BCS_PDF417PDF 417(Not valid)
PTR_BCS_MAXICODEMAXICODE(Not valid)
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Page 40
Kiosk Modifications of the OLE for Retail POS
38
Methods
Remarks Call to print a barcode on the specified printer station.
If the property RotateSpecial indicates that the barcode is to be rotated, then perform the
rotation. The Height, Width, and TextPosition parameters are applied to the barcode before the
rotation. For example, if PTR_BC_TEXT_BELOW is specified and the barcode is rotated left,
then the text will appear on the paper to the right of the barcode.
Note • Rotation is not possible.
PrintBitmap Method
ParameterDescription
Station
FileName
Width
Alignment
Note • PTR_BM_ASIS is the only valid Width value for the Kiosk printer.
RotatePrint Method
Rotation Direction of rotation. See values below.
ValueMeaning
PTR_RP_RIGHT90
The printer station to be used. Only PTR_S_RECEIPT can be
used.
Name of Windows bitmap file. The file must be in
uncompressed and 2 color (black and white) format. Color
inversion may be necessary.
Printed width of the bitmap to be performed. Only
PTR_BM_ASIS can be used.
Placement of the bitmap. (No alignment other then left-most
print column possible (PTR_BM_LEFT).)
Rotate printing 90º to the right (clockwise). (Not valid.)
PTR_RP_LEFT90
PTR_RP_ROTATE180
PTR_RP_NORMAL
Note • The driver will send an FF to start the print out and eject the page after printing.
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
Rotate printing 90º to the left (counter-clockwise).
The printer prints in Landscape mode and can’t print bitmaps
within OPOS commands. The printer will not print any text
until it is switched back into Normal, the page is full, or
receives a FF to print and eject the page. You need to set the
RecLineChars to define the page width.
Rotate printing 180º, that is, print upside-down. (Not valid.)
End rotated printing.
Page 41
SetBitmap Method
ParameterDescription
Kiosk Modifications of the OLE for Retail POS
Methods
39
BitmapNumber
The number to be assigned to this bitmap. Two bitmaps,
numbered 1 and 2, may be set. You have to set Bitmap 1 first
and then Bitmap 2 or you receive an Error.
Note • You cannot overwrite a bitmap. In order to
reset the bitmap you have to unset all bitmaps first
and then set the new bitmaps again. To do this you
have to SetBitmap with an empty string.
FileName
Name of Windows bitmap file. The file must be in
uncompressed and 2 color (black and white) format. Color
inversion may be necessary.
If set to an empty string (“”), then the bitmap is unset.
Note • When the bitmaps are unset, all bitmaps are
lost.
Remarks Call to save information about a bitmap for later printing.
The bitmaps may be no bigger then approximately 5000 bytes all together otherwise the
printer cannot load it.
Only 2 bitmaps may be set, and each bitmap number may only be used for one station at a
time.
11/25/2013OPOS Driver User GuideP1061668-001 Rev. A
Page 42
Kiosk Modifications of the OLE for Retail POS
40
Methods
P1061668-001 Rev. AOPOS Driver User Guide11/25/2013
Page 43
Page 44
Zebra Technologies Corporation
Zebra Technologies Corporation
475 Half Day Road, Suite 500
Lincolnshire, IL 60069 USA
T: +1 847 634 6700
Toll-free +1 866 230 9494
F: +1 847 913 8766
Zebra Technologies Europe Limited
Dukes Meadow
Millboard Road
Bourne End
Buckinghamshire, SL8 5XF, UK