Ithaca ITHERM 280 Programmer's Manual

Ithaca ITHERM 280 Programmer's Manual

International version
Hide thumbs Also See for ITHERM 280:
Table of Contents

Advertisement

Quick Links

®
iTherm
280
International Version
Programmer's Guide
PN 28-07764, Rev C April 2009

Advertisement

Table of Contents
loading

Summary of Contents for Ithaca ITHERM 280

  • Page 1 ® iTherm International Version Programmer’s Guide PN 28-07764, Rev C April 2009...
  • Page 2 This page intentionally left blank...
  • Page 3: Change History

    Change History Rev A Initial Release Rev B Added Periodic status back Added user defined code page description. Added double byte code page support Rev C Revised Page mode section Added several internal code pages Added Multi-byte Code page support 28-07764 Sept 2007 April 2009...
  • Page 4: Federal Communications Commission Radio Frequency Interference Statement

    Federal Communications Commission Radio Frequency Interference Statement ® The iTherm 280 Printer complies with the limits for a Class A computing device in accordance with the specifications in Part 15 of FCC rules. These regulations are designed to minimize radio frequency interference during installation; however, there is no guarantee that radio or television interference will not occur during any particular installation.
  • Page 5: Disclaimer

    TransAct Technologies, Inc. ("TransAct"). This document is the property of and contains information that is both confidential and proprietary to TransAct. Recipient shall not disclose any portion of this document to any third party.
  • Page 6: Table Of Contents

    Table of Contents Change History ... 1 Federal Communications Commission Radio Frequency Interference Statement ... 2 Canadian Department of Communications Radio Interference Statement ... 2 Regulatory Compliance ... 2 Disclaimer ... 3 Copyright ... 3 Trademarks ... 3 Table of Contents ... 4 Figures ...
  • Page 7 Ethernet 10-Base-T adapter ... 32 802.11b Wireless Interface ... 32 Cash Drawer ... 33 Interface Description ... 33 Cash Drawer Pin Assignments ... 33 Vertical Wall Mount Kit Option ... 35 Setup Procedures ... 37 Verifying the Configuration ... 39 Verify the Communications Interface Card ...
  • Page 8 Configuring Your iTherm Configuration Mode Overview ... 65 Most Frequent Configuration Incompatibilities ... 65 How to Change Configuration Settings ... 65 Entering into Configuration Mode ... 65 Using Configuration Mode ... 66 Remote Configuration ... 69 Setting up for Color Paper ... 69 Custom Color ...
  • Page 9 Character Commands ... 193 Panel Button Commands ... 202 Paper Sensor Commands ... 203 Print Position Commands ... 205 Bit-Image Commands ... 209 Status Commands ... 210 Printing Paper Command ... 216 Page Mode ... 217 Bar Code Commands... 220 Mechanism Control Commands ...
  • Page 10 File System ... 281 File System Interface ... 283 File System commands ... 283 ® iTherm 280 Extended Printer Control ... 289 Communications ... 297 Protocol and Print Buffers ... 299 USB ... 302 USB Support ... 302 TCP/IP ... 303 Print Server Features Standard Ethernet Connection ...
  • Page 11: Figures

    Index ... 343 Figures Figure 1 Receipt Printing, Tear off Position ... 28 Figure 2 Cash Drawer Pin Definitions ... 33 Figure 3 Cash Drawer Selection... 40 Figure 4 3-pin mini DIN plug... 42 Figure 5 Windows Print Driver ... 47 Figure 6 OPOS or UPOS ...
  • Page 12 Table 14 Paper Sensor Commands ... 165 Table 15 Paper Sensor Commands ... 166 Table 16 Supported TM-T90 Commands ... 185 Table 17 Undocumented TM-T90 Commands... 186 Table 18 Supported EPOS Commands ... 187 Table 19 Select Character Font Table ... 194 Table 20 International Character Sets ...
  • Page 13: Introducing Your Itherm ® 280 Printer

    chapter ® Introducing your iTherm 280 Printer 28-07764 Rev C Page 11...
  • Page 14 This page intentionally left blank Page 12 Rev C 28-07764...
  • Page 15: About Your Itherm ® 280 Printer

    ® iTherm 280 Programmer’s Guide About your iTherm ® The Ithaca iTherm 280 printer represents the very latest technology for use for thermal receipt printing for point-of-sale and retail environments. It builds upon the architecture of Ithaca’s proven thermal printers, together with a host of features specifically designed to improve the performance of your receipt-printing applications, including: Crisp, clear receipt printing in either one or two colors Fast 8 inches per second print speed...
  • Page 16: Who Should Read This Guide

    ® About Your iTherm 280 Printer Who Should Read This Guide? This document provides information and programming specifications for operators who ® will integrate the iTherm 280 printer into their kitchen operations. What Is Included in This Guide? This Programmer’s Guide includes information on the features and programming ®...
  • Page 17: Technical And Sales Support

    280 Programmer’s Guide Technical and Sales support Your Ithaca printer is backed by the resources of TransAct Technologies, a global technology firm with dedicated technical support and sales assistance. Here is how we can help you: On-line Technical Support Our web site at www.transact-tech.com is your on-line portal to obtaining technical...
  • Page 18: Return Materials Authorization And Return Policies

    Write the RMA number clearly on the outside of the box. Service Programs TransAct Technologies Incorporated has a full service organization to meet your printer service and repair requirements. If your printer needs service, please contact your service provider first. If any problems still persist, you can directly contact the Ithaca facility’s Technical Support Department at (607) 257-8901 or (877) 7ithaca for a return...
  • Page 19 ® iTherm 280 Programmer’s Guide Sales fax (607) 257-3868 Technical Support fax (607) 257-3911 Web site www.transact-tech.com 28-07764 About Your iTherm Rev C ® 280 Printer Page 17...
  • Page 21: 280 Specifications And Requirements

    chapter ® iTherm 280 Specifications and Requirements 28-07764 Rev C Page 19...
  • Page 22 This page intentionally left blank Page 20 Rev C 28-07764...
  • Page 23: Itherm ® 280 Specifications And Requirements

    ® iTherm 280 Programmer’s Guide ® iTherm 280 Specifications and Requirements iTherm® 280 Thermal Printer Models ® iTherm 280-P: parallel interface printer ® iTherm 280-S: serial interface printer ® iTherm 280-USB: USB interface printer Standard Features The following features are common to the entire family of thermal printers: Print Speed for text is 8 inches per second (200 mm/sec) (monochrome) 8.0 inches per second paper feed speed 3.15 inch (80 mm.) print zone...
  • Page 24 Specifications and Requirements CPI selections from 8 to 30 CPI Paper Out sensor Multiple printer emulations: Ithaca PcOS and Epson Extended, Maximum 8K buffer (adjustable) 2 Megabytes Flash Memory 2 Megabytes RAM APA and Epson graphics Bar Codes: Code 39, Code 93, Code 128, Interleaved 2 of 5, UPC-A, UPC- E, EAN-8, EAN-13, EAN-14, PDF417 stacked symbology and Codabar WGL4.0 Character set.
  • Page 25: Optional Features

    ® iTherm 280 Programmer’s Guide Optional Features The following options are available on some of the models: Vertical Wall Mount Kit Adjustable paper low OCR TrueType font Chinese GB18030 Font. Custom interfaces and emulations DC powered version through Hosiden type connector 28-07764 Specifications and Requirements Rev C...
  • Page 26: General Specifications

    Specifications and Requirements General Specifications Printing Specifications Printing method: Vertical/Horizontal dot pitch: Resolution: Line feed pitch: Print zone (maximum) Print speed (monochrome): Print Speed (two color): Number of print elements: Physical Characteristics Dimensions Page 24 ® iTherm 280 Programmer’s Guide Thermal Sensitive Line Dot System 0.125 mm.
  • Page 27: Weight

    ® iTherm 280 Programmer’s Guide Max Dimensions Dimensions in 6.25 inches Weight Approximate weight: Shipping weight: 28-07764 Specifications and Requirements 8.50 5.87 4.6 lb. 6.0 lb. Rev C Page 25...
  • Page 28: Electrical Characteristics

    Specifications and Requirements Electrical Characteristics Internal AC Powered The iTherm® 280 Printer is designed to be AC self-powered in domestic and international markets. The printer is equipped with a universal input power supply that is designed to operate worldwide without modification. Supply Supply Frequency...
  • Page 29: Media Specifications

    ® iTherm 280 Programmer’s Guide Once narrow paper has been used, some part of the print head always contacts the platen. If 80 mm. paper is used after setting up and running 58 mm. paper, the head or the cutter blade may be worn out. Never change the paper width from narrow to wide (58 to 80 mm.) once you set the paper width to narrow (58 mm.).
  • Page 30: Figure 1 Receipt Printing, Tear Off Position

    Specifications and Requirements Use only specified thermal paper. If other paper is used, print quality, head life, and cutter life may deteriorate. Paper Out A receipt paper out sensor is provided as a standard feature. It senses when there is approximately .5 inches length of paper left on the paper roll.
  • Page 31: Buzzer

    ® iTherm 280 Programmer’s Guide Receipt Printing, Auto Cutter Position A receipt auto-cutter is a standard feature with all iTherm™ 280 Printers. Cutter type Media width Media thickness range Cut to line of print Cutter life Partial Cut tab: Cut time: Buzzer A buzzer is provided as a standard feature.
  • Page 32: Communications Interface

    Specifications and Requirements Communications Interface Parallel Interface Your printer features two parallel interfaces: An IEEE 1284-A 25-pin, D-shell connector, with pin-outs that interface to a standard IBM PC parallel printer interface with a one-to-one cable. An IEEE 1284-B, which is a standard Centronics 36-pin connector. Both interface cards provide a dual cash drawer interface.
  • Page 33: Rs-232 Serial Interface

    ® iTherm 280 Programmer’s Guide RS-232 Serial Interface Serial Port Features The serial port features are as follows: Baud Rates 300, 600, 1200, 2400, 4800, 9600, 19.2K, 38.4K, and 57.6K Bit Patterns 8-bit no parity; 8-bit odd; 8-bit even; 7-bit no parity; 7-bit odd; 7-bit even Flow Control DTR and XON/XOFF 9-pin...
  • Page 34: Ethernet 10-Base-T Adapter

    Specifications and Requirements 1 Vbus (+5 V dc) (Not used in the iTherm 2 Minus data 3 Plus data 4 Ground Note: The standard USB interface does not have enough power to run the printer. Ethernet 10-Base-T adapter An IP addressable 10-Base-T Ethernet adapter is available for the iTherm It provides for web page configuration and supports bi-directional RAW and Telnet interfaces.
  • Page 35: Cash Drawer

    ® iTherm 280 Programmer’s Guide Cash Drawer Interface Description ® The iTherm 280 Printer supports a single cash drawer with status. The driver in the printer is capable of supplying 24 V DC at up to 1.5 amps for up to 250 milliseconds. The ®...
  • Page 36: Table 6 Cash Drawer Pin Assignment

    Specifications and Requirements Ithaca Pin Number Signal Name Direction Frame ground Drawer kick- Output Sink out drive Drive signal 1 Drawer Input open/close signal +24V DC Drawer kick- Output Sink out drive Drive signal 2 Signal Ground Table 6 Cash Drawer Pin Assignment Page 34 ®...
  • Page 37: Vertical Wall Mount Kit Option

    ® iTherm 280 Programmer’s Guide Vertical Wall Mount Kit Option A kit is available as an add-on option that allows the iTherm mounted to a wall. It is comprised of a metal mounting bracket that attaches to the base of the printer with two M6 thread-cutting screws. Additional hardware is required to mount the bracket to the wall.
  • Page 39: Setup Procedures

    chapter Setup Procedures 28-07764 Rev C Page 37...
  • Page 40 This page intentionally left blank Page 38 Rev C 28-07764...
  • Page 41: Verifying The Configuration

    ® iTherm 280 Programmer’s Guide Verifying the Configuration ® Before you install an iTherm configured as required by your system. There are four parts to this verification process. 1. Verify that the communications interface card is the correct one. 2. Verify that the cash drawer interface is configured correctly. 3.
  • Page 42: Cash Drawer Configuration

    Setup Procedures Cash Drawer Configuration Verify the Cash Drawer Interface The printer is shipped from the factory with a cash drawer interface label on the bottom of the printer. You should always verify that the cash drawer you are using matches the printer’s cash drawer interface label.
  • Page 43: Installing Cables

    ® iTherm 280 Programmer’s Guide Installing Cables Three cables are required to be connected to the printer. 1. Power 2. Communications 3. Cash Drawer Connecting power ® The iTherm 280 Printer is generally supplied with a built-in power supply. As an option, the printer is available without a power supply.
  • Page 44: Connecting Communications Cables

    Setup Procedures External Supply If an external supply is used a 3 pin mini DIN plug is provided for the external 24 Volt supply. Connecting Communications Cables ® The iTherm 280 has a number of different communications interfaces. Serial The serial interface connector is either a 9-pin or 25-pin mail D shell interface. The pin-out is shown below 9-pin 25-pin...
  • Page 45: Verify The Firmware Configuration

    ® iTherm 280 Programmer’s Guide The USB connector can be one of two types: a standard Type B connector, as in commonly used in the PC industry, or a POS Powered USB connector. In the case of the powered USB connector, there are a number of different versions.
  • Page 46: Printer Drivers And Printer Controls

    Setup Procedures Printer Drivers and Printer Controls Definitions for terms you will see in this guide: OS – The Operating System, which is the operating software underlying a computer system. Examples of OS’s include Microsoft Windows and OS2. Application - A software program that a person uses to perform a function, such as a point of sale (POS) application.
  • Page 47: Getting Started - Questions To Ask

    Setup Procedures Getting Started – Questions to Ask Most driver software for TransAct Technologies printers fall into one of three main categories: They support or emulate a specific type of communications port – for example, a USB port driver, or a driver to emulate a serial port via an Ethernet interface.
  • Page 48: Are You Using Opos (Unifiedpos/Upos)

    If you are using an application that is written to interface with the OPOS (OLE Point of Sale) standard, then the TransAct Technologies OPOS driver will allow you to communicate with most TransAct Technologies printers. The OPOS driver provides the mechanisms to print in all of the print modes supported by the printer.
  • Page 49: Windows Printer Driver

    Setup Procedures Windows Printer Driver A Windows printer driver is a specific type of driver defined by Microsoft that the OS uses to translate drawing commands by a Windows application to a specific printer’s command set. A standard Windows printer driver is a graphics page mode driver, and is not a POS (point of sale) driver.
  • Page 50: Opos Driver

    Setup Procedures OPOS driver An OPOS driver is an implementation of the UnifiedPOS (UPOS) specification. It provides an application interface for retail devices such as a POS printer, scanner, cash drawer, pole display, MICR, scale, or others. PC Hardware Window’s Operating System POS Application OPOS Printer Control (ActiveX)
  • Page 51: Usb Driver

    Setup Procedures USB driver A USB driver is a low level device driver, required for USB communication with the printers. It is a Windows Plug and Play driver and needs to be installed for USB printers, when the printer is initially plugged into the system. Window’s Operating System USB Interface OPOS...
  • Page 52: Ethernet Virtual Serial Driver

    ® Setup Procedures iTherm 280 Programmer’s Guide Ethernet Virtual Serial driver A VSerial driver is a low level device driver, which appears to Windows and your application as a serial com port. However, all of the data sent to and received from the serial com port actually comes from the Ethernet printer.
  • Page 53: Posprinter Activex Control (Posprinter Ocx)

    Setup Procedures POSPrinter ActiveX Control (POSPrinter OCX) This is not a driver; but rather a software component that provides a connection from an application to a port driver. This allows an application to communicate “directly” with a printer. This approach allows an application to send commands to the printer if desired, similar to the legacy DOS approach once used to communicate with a POS printer.
  • Page 54: Where To Get More Information

    Setup Procedures iTherm 280 Programmer’s Guide Where to get more information Additional information about Driver and support programs are available for your Transact Sales representative, from Transact customer support or from the TransAct Technologies Web site. Page 52 Rev C 28-07764...
  • Page 55: 280 Printer

    chapter ® How to Operate the iTherm 280 Printer 28-07764 Rev C Page 53...
  • Page 56 This page intentionally left blank Page 54 Rev C 28-07764...
  • Page 57: How To Operate The Itherm

    ® How to Operate the ITherm How to Operate the iTherm ® Your iTherm 280 printer contains two buttons and three (LED) indicator lights. In addition to power control and feeding paper, these two buttons can be used to perform functions like self-testing, clearing errors and printer configuration.
  • Page 58: Indicator Lights (Led)

    ® How to Operate the ITherm Indicator Lights (LED) ® The three iTherm 280 indicator lights are: Power LED Indicates printer activity and non-recoverable errors Error LED Indicates problems and probability of recovery Paper LED Indicates paper status (paper low) Power Indicator (LED) The power indicator lets the user know that the printer is ON.
  • Page 59: Table 9 Error Blink Codes

    ® How to Operate the ITherm Fully-recoverable and Status A fully-recoverable error will restart printing exactly where it stopped when the error occurred. Printing will resume after error has been properly addressed. A status recoverable error is very similar to a fully-recoverable error. Additionally, status is used to display when the printer consumables may need replacing.
  • Page 60: Testing The Printer Overview

    ® How to Operate the ITherm Testing the Printer Overview Using Self-Test, Configuration, and Hex Dump Mode Self-Test Mode allows you to perform a series of tests to show if the printer is functioning correctly. Self-Test Mode also allows you to print a summary of how your iTherm currently configured.
  • Page 61 ® How to Operate the ITherm Maintaining the Electronic Journal The iTherm® 280 has an electronic journal option. It is possible to configure the printer with a journal station. This selection allows the information saved in the electronic journal to be printed and maintained by the operator. Operation of this mode will be described later in the manual under Electronic Journal Operation.
  • Page 62: Hex-Dump Mode

    ® How to Operate the ITherm Hex-dump Mode Hex-dump mode is used to diagnose communication problems with the printer. As information is received by the printer, the information is converted to a Hex/ASCII format and printed. No translation is made, which means no commands are interpreted. All information is converted to Hex/ASCII and printed on the receipt tape.
  • Page 63: Level 0 Diagnostics

    ® How to Operate the ITherm Level 0 Diagnostics Level 0 diagnostics always and only run at power up, e.g. power being applied. These diagnostics perform the following tasks: Cold Power On Basic System Integrity Vector Integrity RAM Test Flash Boot Loader Integrity Flash Firmware Integrity (NOTE: If the firmware is corrupted, the printer will remain in boot load.) Start Normal Firmware Verify Configuration Integrity...
  • Page 65: Configuring Your Itherm ® 280 Printer

    chapter ® Configuring Your iTherm 280 Printer 28-07764 Rev C Page 63...
  • Page 66 This page intentionally left blank Page 64 Rev C 28-07764...
  • Page 67: Configuration Mode Overview

    There are two ways to configure the iTherm configuration sequence by using the keypad controls, and the second is to use TransAct’s remote configuration software. TransAct Technologies offers the use of a remote CONFIG program as a fast, easy way for system integrators to configure or ®...
  • Page 68: Using Configuration Mode

    ® Configuring Your ITherm 280 Printer Using Configuration Mode The Feed button is used to select and change configuration setting. By pressing and releasing the Feed button, the parameter to be changed can be selected. By pressing and holding the Feed button, the value of the selected parameter will change. The following chart lists some of the potential parameters and their options.
  • Page 69 ® Configuring Your ITherm 280 Printer Smoothing Flag for whether scaled characters smoothed. Paper Width Width of the paper installed. Bar Code Width Default barcode line width. 10CPI (DC2) ESC v nINIT/ENQ<10> Carriage Return This option defines how CR and LF characters are used.
  • Page 70 ® Configuring Your ITherm 280 Printer CD ESC BEL Parm. The Microline Emulation has the option of using the ESC BEL command to operate the cash drawer Microline Mode There are three Microline modes Cash Drawer Time The cash drawer fire time is adjustable in the Ithaca emulation.
  • Page 71: Remote Configuration

    ® Configuring Your ITherm 280 Printer Remote Configuration Remote configuration is provided for all printers, and is accessed through a series of extended diagnostic and configuration commands. The TransAct universal configuration program will allow the configuration to be read, edited, and written back to the printer. It will also allow the configuration of one printer to be recorded and replicated over a number of printers.
  • Page 73: Programming Codes

    chapter Programming Codes 28-07764 Rev C Page 71...
  • Page 74 This page intentionally left blank Page 72 Rev C 28-07764...
  • Page 75: Control Codes Overview

    ® iTherm 280 Programmer’s Guide Control Codes Overview This Programmer's Guide is designed to help users of the iTherm ® applications. iTherm 280 Printers are specialized point-of-sale printers that have several features not normally found on general-purpose printers. Because of these ®...
  • Page 76: Standard Emulation

    One emulation is for the TM-T88, and the other is an enhanced TM-T90 emulation. Specific EPSON compatibility features, such as its Automated Status Back (ASB) feature, are available as an option from TransAct Technologies. Command codes pertaining to these features are documented as “licensed” within the command description.
  • Page 77: Ithaca Control Codes And Commands

    ® iTherm 280 Programmer’s Guide Programming Codes how the printer works, including a description of the internal print buffer, communications link, and interaction between the host computer and printer. Ithaca Control Codes and Commands Throughout this Programmer's Guide, charts and tables list commands and features. In most cases, the charts cross-reference the page that describes the command.
  • Page 78: Quick Pcos Reference Chart

    Programming Codes Quick PcOS Reference Chart Description Low Level paper Motion Line feed. Carriage return. Horizontal Motion Back space. Horizontal tab. Set horizontal tab stops. Set horizontal position. Set justification. n=0 Left n=1 Center n=2 Right n=8 Left (No line feed) n=9 Center (No line feed) n=10 Right (No line feed) Reset horizontal and vertical tab stops.
  • Page 79 ® iTherm 280 Programmer’s Guide Description Reverse line feed. Character Pitch Set character spacing in points Set character spacing in ¼ points Set character spacing in points with adjustment Set character spacing in ¼ points with adjustment Begin 10 CPI character pitch. Begin 12 CPI character pitch.
  • Page 80 Programming Codes Description Print control character. Print Unicode character Character Attributes Select color. Begin one-line double-wide print. Cancel one-line double-wide print. Multi-line double-wide double-high mode. n=0 Standard mode n=1 Double-wide n=2 Double-high 3 = Both Enable/disable Strike Through. n=0 End n=1 Begin Begin underline mode.
  • Page 81 ® iTherm 280 Programmer’s Guide Description Process horizontal graphics data. Set horizontal graphic mode. User Store Begin named macro record. Save macro data in user store. End named macro record. Load item from user store. Save user-defined characters. Run macro data from user store. Flag item as a start-up macro.
  • Page 82 Programming Codes Description Initiate Unicode UTF-16BE encoding Initiate Unicode UTF-16LE encoding Initiate Unicode UTF-8 encoding (MBCS) Initiate Unicode UTF-8 Text only encoding (MBCS) Initiate normal 8-bit ASCII character encoding File System Commands Open File Return Free Space for Open File Return Free Space for Partition Return Last File Command Status Close File...
  • Page 83 ® iTherm 280 Programmer’s Guide Description Set left/right margins. n1 = Left margin n2 = Right margin Clear print buffer. Query marker. Open cash drawer. n=1 Cash Drawer 1 n=2 Cash Drawer 2 Perform Auto Cut Audio alert. Configure audio alert. Print suppress and data pass through.
  • Page 84: Low Level Paper Motion Control

    Programming Codes Low Level Paper Motion Control Print/Paper Motion [CR] Carriage return ASCII [CR] Hexadecimal 0DH Decimal <13> IPCL &%CR EPOS Description The [CR] command prints the contents of the print buffer (if any) and resets the next character print position to the left margin. A line feed is not performed unless auto-feed is active.
  • Page 85: Horizontal Motion Control

    ® iTherm 280 Programmer’s Guide Horizontal Motion Control Several commands can be used to control the horizontal position of characters. Many applications use space control to position fields. However, the iTherm the ability to control character position with horizontal tab stops. This is done using the horizontal tab [HT] to move to those tab stops.
  • Page 86 Programming Codes [ESC] R Reset horizontal and vertical tab stops ASCII [ESC] R Hexadecimal 1BH 52H Decimal <27> <82> IPCL &%HV EPOS none Description The [ESC] R command resets horizontal and vertical tab stops to the power up configuration. The power up horizontal default is every eight spaces, i.e., 9, 17, 25, and so on.
  • Page 87: Vertical Motion Control

    ® iTherm 280 Programmer’s Guide Vertical Motion Control [ESC] j Perform a fine line feed ASCII [ESC] J <n> Hexadecimal 1BH 4AH <n> Decimal <27> <74> <n> IPCL &%FM <m > <m EPOS [ESC] J <n> Description The [ESC] J <n> command prints the contents of the buffer and performs a line feed of n/216 inch.
  • Page 88 Programming Codes [ESC] 0 Set line spacing to 1/8 inch ASCII [ESC] 0 Hexadecimal 1BH 30H Decimal <27> <48> IPCL &%ST EPOS [ESC] 2 Description The [ESC] 0 command sets the default line spacing to 1/8 inch (27/216 inch), which is the standard eight lines per inch line spacing at initial power-up.
  • Page 89 ® iTherm 280 Programmer’s Guide [ESC] 2 Enable [ESC] A <n> variable line spacing ASCII [ESC] 2 Hexadecimal 1BH 32H Decimal <27> <50> IPCL none EPOS none Description The [ESC] 2 command is a companion to the [ESC] A <n> command and puts the specified line spacing into effect.
  • Page 90 Programming Codes [VT] Vertical tab ASCII [VT] Hexadecimal 0BH Decimal <11> IPCL &%VT EPOS (VT) Description The printer sets a line counter to the top of the form at reset and when a set top of form command is issued. By setting vertical tab stops, various form positions can be reached with a [VT] operation.
  • Page 91 ® iTherm 280 Programmer’s Guide [FF] Form feed ASCII [FF] Hexadecimal 0CH Decimal <12> IPCL &%FF EPOS none Description The [FF] command performs a form feed to the top of the form. Note: The form feed command can be disabled. Set the form length to zero.
  • Page 92 Programming Codes [ESC] 5 Begin auto line feed ASCII [ESC] 5 <n> Hexadecimal 1BH 35H <n> Decimal <27> <53> <n> IPCL &%MA (Begin) IPCL &%CA (End) EPOS none Description The [ESC] 5 <1> command sets auto line feed mode. [ESC] 5 <0> command ends auto line feed mode.
  • Page 93: Feed To Black Dot

    ® iTherm 280 Programmer’s Guide Feed to Black Dot ® An option for the iTherm 280 is a black dot sensor. This command is supported by a feed to black dot command. Note: This is a special order option, and requires an additional sensor and modified firmware.
  • Page 94 Programming Codes 0.8 (.20) to first line of print m/203 (m/8) Dot Width Back of Ticket Note: This command interacts with the Feed to Black Dot command. If the Black Dot paper Option is set, the black dot position specified by this command will be used for the Cover Close operation.
  • Page 95: Character Pitch

    ® iTherm 280 Programmer’s Guide Character Pitch Character pitch commands that set specific characters per inch (cpi) disable any right- side spacing set by the [ESC] V <n> command. In addition, when font changes are made, the character pitch is maintained. [DC2] Begin 10 cpi character pitch ASCII...
  • Page 96: Table 10 Character Pitch

    Programming Codes [ESC] [ P Set character pitch ASCII [ESC] [ P <n> Hexadecimal 1BH 5BH 50H <n> Decimal <27> <91> <80> <n> IPCL &%F1, &%F2, &%F3, &%F4, &%F5, &%F6, &%F7 EPOS [ESC] [SP] <n> Description The [ESC] [ P <n> command sets character per inch print pitch to <n>. The printer resolution limits the exact print pitch.
  • Page 97: Table 11 Inter-Character Spacing

    ® iTherm 280 Programmer’s Guide [ESC] V Set inter-character spacing Mode Global ASCII [ESC] V <n> Hexadecimal 1BH 56H <n> Decimal <27> <86> <n> IPCL none EPOS [ESC] [SP] <n> Description The [ESC] V <n> command sets inter-character spacing by adding white space between characters.
  • Page 98: Character Font

    Programming Codes Character Font [ESC] # Begin 12 x 12 draft print mode ASCII [ESC] # <0> Hexadecimal 1BH 23H 00H Decimal <27> <35> <0> IPCL &%QT EPOS [ESC] ! <n> Description The [ESC] # <0> command begins 12 x 12 draft print mode. Draft print is provided to maintain compatibility with other Ithaca [ESC] I Set print quality mode...
  • Page 99 ® iTherm 280 Programmer’s Guide [ESC] P Begin rotated font/Right to left entry ASCII [ESC] P <n> Hexadecimal 1BH 50H <n> Decimal <27> <80> <n> IPCL &%RI {n=2} &%RF {n=1} &%RN {n=0} EPOS [ESC] V <n> Description The [ESC] P <n> command sets the print font to a rotated 90 or 270 font.
  • Page 100: Character Sets And Code Pages

    Programming Codes Character Sets and Code Pages ® The iTherm 280 Printer is primarily intended to be used in Unicode based systems. However to provide legacy support, the printer supports 8 bit and double byte ASCII encoding with code pages. When not using Unicode or double byte encoding, the printer is restricted to the 8 bit ASCII character set.
  • Page 101 ® iTherm 280 Programmer’s Guide SYMBOL SET = WE /name = Windows 3.1 Latin 2 /pcl char = E /symbols = 32 0x0020 ; Space Code, Prntabl Thin Space 33 0x0021 ; Exclamation 34 0x0022 ; Neutral Double Quote 5 0x0023 ; Number 36 0x0024 ;...
  • Page 102: Double-Byte And Multi-Byte Code Page Description Files

    Programming Codes Double-Byte and Multi-Byte Code Page Description Files ® In ASCII mode the iTherm 280 Printer supports double byte code pages. Currently there are 4 double-byte codepages available and one multi-byte. Double Byte code pages available are: Code page 932, 936, 949 and 950 Multi-byte code page available are GB18030-2000.
  • Page 103: Table 12 Language Table Id's

    ® iTherm 280 Programmer’s Guide To allow other code pages to be created by an application, a redefine character set command is provided. As discussed above, there are two commands for language selection in IBM mode. The first is [ESC] !, which selects one of 19 international character sets. The [ESC] ! command does not allow all of the possible character sets to be selected, it is provided for compatibility with older programs only.
  • Page 104 Programming Codes Note: The code page field is a 16-bit field that is a function of the code page numbers <n 256 + 181 = 437. For the IPCL command, the page is specified in ASCII as a 4-byte field. Note: If the code page is not found in the internal translation, the code page requested is translated into a code page file name and if a user defined file is found, it will be used as the code page definition.
  • Page 105: Table 13 Euro Character Substitution Matrix

    ® iTherm 280 Programmer’s Guide ASCII ESC] [ C <n> Hexadecimal 1BH 5BH 43H <n> Decimal <27> <91> <67> <n> IPCL &%EU Description The [ESC] [ C <n> command allows an application to replace any character in the currently active character set with the Euro character. The character to be replaced is defined by <n>.
  • Page 106 Programming Codes [ESC] [ S Redefine character set ASCII [ESC] [ S <L > <L …<T ><T > Hexadecimal 1BH 5BH 53H … Decimal <27> <91> <83> … IPCL none Description The [ESC] [ S <L <T ><T > command allows an application to replace or redefine the active character set mapping in the printer, where <L total length of the following data: <L...
  • Page 107 ® iTherm 280 Programmer’s Guide [ESC] = Define user-defined characters ASCII [ESC] = <y> <c Hexadecimal 1BH 3DH <y> … Decimal <27> <51> <y> … Range y = 2 or 3 12 (12 x 12 font) 14 (12 x 14 font) 16 (24 x 16 font) …...
  • Page 108 Programming Codes [ESC] $ Cancel user-defined characters ASCII [ESC] $ Hexadecimal 1BH 24H Decimal <27> <36> IPCL none Description The [ESC] $ command removes all user-defined characters from the printer’s memory. After the user-defined characters are canceled, the internal character set is printed. [ESC] >...
  • Page 109 ® iTherm 280 Programmer’s Guide Character Attributes [ESC] c Select color ASCII [ESC] c <n> Hexadecimal 1BH 63H <n> Decimal <27> <99> <n> IPCL &%CL <m > EPOS none Description The [ESC] c <n> command selects the print color, and should match the color of the paper installed.
  • Page 110 Programming Codes [ESC] _ Enable/Disable Strike Through ASCII [ESC] _ <n> Hexadecimal 1BH 5FH 01H Decimal <27> <95> <n> IPCL &%MO (Begin) IPCL &%CO (End) EPOS [ESC] ! <n> Description The [ESC] _ <1> command begins strike through print mode. subsequent text, leading spaces, and trailing spaces are over-scored.
  • Page 111 ® iTherm 280 Programmer’s Guide [ESC] [ @ Set print style: double-wide, double-high, italic control ASCII [ESC] [ @ [EOT] [NUL] <k> [NUL] <n> <m> Hexadecimal 1BH 5BH 40H 04H 00H <k> 00H <n> <m> Decimal <27> <91> <64> <04> <0> <K> <0> <n> <m> IPCL &%DH Double-high, double-wide, and double-space...
  • Page 112 Programming Codes [ESC] - Begin underline ASCII [ESC] - <n> Hexadecimal 1BH 2DH 01H Decimal <27> <45> <n> IPCL &%MU (Begin) IPCL &%CU (End) EPOS [ESC] ! <n> Description The [ESC] - <1> command begins underline print mode. All subsequent text, leading spaces, and trailing spaces are underlined.
  • Page 113 ® iTherm 280 Programmer’s Guide [ESC] F End emphasized print mode ASCII [ESC] F Hexadecimal 1BH 46H Decimal <27> <70> IPCL &%CM EPOS [ESC] E <0> Description The [ESC] F command cancels emphasized print mode. [ESC] S <0> Select superscript ASCII [ESC] S <0>...
  • Page 114 Programming Codes [ESC] % G Begin italics ASCII [ESC] % G Hexadecimal 1BH 25H 47H Decimal <27> <37> <71> IPCL &%MI EPOS [ESC] 4 Description The [ESC] % G command begins italic print mode. Note: Italics are not available in all print modes. [ESC] % H End italics ASCII...
  • Page 115: Page Mode

    ® iTherm 280 Programmer’s Guide Page Mode ® The iTherm 280i supports two operational modes, standard and page mode. In standard mode, as a line of text is received it is buffered and printed when the line feed is received. In page mode the printer waits for a complete “page” (a number of lines) to be received before printing the complete page.
  • Page 116: Figure 10 Page Mode Entry Orientations

    Programming Codes Receipt or Inserted Form A > > > > > > > > > > Figure 10 Page Mode Entry Orientations The [ESC] u command wet the maximum page dimensions. Note that these dimensions are always based on 0 degree rotation. Enter text and/or graphics as required.
  • Page 117 ® iTherm 280 Programmer’s Guide ASCII [ESC] t<x> Hexadecimal 1BH 74H<x> Decimal <27><116><x> IPCL &%PM<x > EPOS [ESC] L Description This command activates page mode and sets the orientation. This command may also be issued during page definition. When issued in page mode it resets the orientation and entry position, but does not cause the currently defined image to be erased or printed.
  • Page 118 Programming Codes station select Electronic journal entries Status requests Printer initialize command Set top of form Vertical tab Macro definitions Note 3: Unless specified by a page mode set page size command, the default page size is the full paper width for about 14 inches. Printing starts at the current paper position. The complete page definition is printed excluding any blank information at the bottom of the page.
  • Page 119: Figure 11 Page Mode Set Printable Area

    ® iTherm 280 Programmer’s Guide smaller windows within the initially defined page. If the Set page size command is not used, the page size will default to the maximum size. The orientation of the set print area command is always based on 0 degrees regardless of the current orientation setting.
  • Page 120: Figure 12 Default Page Mode Printed Area

    Programming Codes Cut to print offset 0.7 in or 18mm Max width is 576 dots Bottom most print data Figure 12 Default Page mode printed area Page 118 iTherm Cut point is after bottom most print data. Unused page area is not printed Rev C ®...
  • Page 121: Figure 13 Defined Page Mode Printed Area

    ® iTherm 280 Programmer’s Guide Function Set Printed Area in Page Mode ASCII [ESC] [SUB] W <XO Hexadecimal 1BH 1AH 57H <XO Decimal <27><26><87> IPCL None EPOS [ESC] W Description This command is similar Set Print Area in Page Mode command above, however it will force the complete page to be printer rather than only what is used.
  • Page 122 Programming Codes Function Set Print Area in Page Mode ASCII [ESC] u <O ><O Hexadecimal 1BH 75H <O ><O Decimal <27><117><O IPCL &%PS<0000><WWWW><HHHH> EPOS [ESC] W Description This command Sets the position and size of the printing initial area in page mode and sub pages.
  • Page 123 ® iTherm 280 Programmer’s Guide Function Set Page Mode Entry Position ASCII [ESC] [SUB] A <X Hexadecimal 1BH 1AH 41H<X Decimal <27><26><65><X IPCL &%PY<XXXX><YYYY> EPOS [ESC] W Description This command sets the horizontal and vertical entry position to anywhere on the page. It is only valid in page mode. If the value specified is beyond the page boundary, the command is ignored.
  • Page 124 Programming Codes Function Set Page Mode Entry Position ASCII [ESC] o <X ><X Hexadecimal 1BH 6FH <X ><X Decimal <27><111><X IPCL None EPOS [ESC] W Description This command sets the horizontal and vertical entry position to anywhere on the page. It is only valid in page mode. If the value specified is beyond the page boundary, the command is ignored.
  • Page 125: Graphic Mode

    ® iTherm 280 Programmer’s Guide Graphic Mode ® The iTherm 280 Printer conforms to the basic definition of IBM all-points-addressable (APA) graphic commands. It is not designed to print large quantities of graphical data. The printer only prints graphics that are 2.5 inches wide. At this time, there is not a graphics mode for Epson emulation.
  • Page 126 Programming Codes ASCII [ESC] Y <n > <n Hexadecimal 1BH 59H <n > <n Decimal <27> <89> <n IPCL none Description The [ESC] Y <n density graphics (120 dpi) at full speed with no consecutive dots. (The mode is generally used to print 120h by 144v dpi resolutions in two passes). [ESC] Z Print quad-density graphics (240h x 72v dpi) ASCII...
  • Page 127 ® iTherm 280 Programmer’s Guide Hexadecimal 1BH 3FH <m> <n> Decimal <27> <63> <m> <n> IPCL none Description The [ESC] ? <m> <n> command reassigns graphic mode <m> to resolution <n>. Possible values for <m> are K, L, Y, or Z. Resolutions, <n>, are zero to seven as follows: Where <m>...
  • Page 128 Programming Codes [ESC] U <0> Select bidirectional print ASCII [ESC] U <0> Hexadecimal 1BH 55H 00H Decimal <27> <85> <0> IPCL &%GB EPOS [ESC] U <0> Description The [ESC] U <0> command prints all data in bi-directional, logic-seeking print mode. Page 126 ®...
  • Page 129 ® iTherm 280 Programmer’s Guide Horizontal Graphics (Color Graphics) ® The iTherm 280 Printer supports graphics sent as horizontal scan lines. Individual scan lines of graphic data are sent to the printer one line at a time. Although the iTherm supports two colors, the horizontal graphic command interface gives full color support for printer graphics.
  • Page 130 Programming Codes <format> = byte specifying the format of the graphics data. 0 for raw data 1 for bit wise RLE compression 8 for byte wise RLE compression 254 for difference compression 255 for same as previous scan line data <data>...
  • Page 131: Graphics Compression

    ® iTherm 280 Programmer’s Guide Programming Codes Graphics Compression Although the printer compression algorithms are documented, it is recommended that our Windows’ printer driver be used to generate a graphic image. Our Windows’ printer driver selects the best compression method to use on a scan line by scan line basis. The print driver can be directed to print to file, creating a .prn file.
  • Page 132 Programming Codes can also be saved in user store. However, only one character definition and one macro can be active at any time. One macro and one user-defined character definition can be flagged to load and run at startup. If a flag is set, the printer will automatically process the macro and/or load the user-defined character set at initialization.
  • Page 133 ® iTherm 280 Programmer’s Guide Function Define user-defined characters ASCII [ESC] = <y> <c Second, save the definition in the nonvolatile flash memory with the appropriate command. Save the definition. Note the "Save user-defined characters" command saves all three character definitions. Function Save user-defined characters ASCII...
  • Page 134 Programming Codes Function Flush information from user store ASCII [ESC] [US] f ALL <0> Base User Store [ESC] [US] f EXT <0> Extended User Store. Description The [ESC] [US] f ALL <0> command clears all of the information to the user store and frees the data space.
  • Page 135 ® iTherm 280 Programmer’s Guide Function End named macro record ASCII [ESC] [US] e <Name..> <0> Hexadecimal 1BH 1FH 65H Decimal <27> <31> <101> IPCL &%UG <Name..> <0> EPOS none Description The [ESC] [US] e <Name..> <0> command ends the macro record operation and saves the macro to flash.
  • Page 136 Programming Codes Function Load item from user store ASCII [ESC] [US] l <Name..> <0> Hexadecimal 1BH 1FH 6CH Decimal <27> <31> <108> IPCL &%UL <Name..> <0> EPOS [GS] 0<Name..> <0> is from one to 15 characters and must be null terminated. Description The [ESC] [US] l <Name..>...
  • Page 137 ® iTherm 280 Programmer’s Guide IPCL &%UD <Name..> <0> EPOS [GS] 1 <Name..> <0> is from one to 15 characters and must be null terminated. Description The [ESC] [US] d <Name..> <0> command removes an item from user store and frees up space.
  • Page 138 Programming Codes Function Report on user store ASCII [ESC] [US] q <0> [ESC] [US] ? <0> Hexadecimal 1BH 1FH 71H Decimal <27> <31> <113> IPCL &%UQ <Name..> <0> EPOS [GS] 3 Description The [ESC] [US] q <Name..> <0> command prints a status report. The file name is ignored and may be omitted.
  • Page 139: User Macros

    ® iTherm 280 Programmer’s Guide User Macros The user macro feature works by inserting the macro data buffer into the printer data stream when the print user-store data command is encountered. Macros can be any data normally sent to the printer including graphics. (Note: user-store maintenance and inquire commands may not be included in the macro definitions.) The printer stores macro data in a RAM-based storage buffer as it is received and processed.
  • Page 140 Programming Codes [ESC] g <0> Process user macro ASCII [ESC] g <0> Hexadecimal 1BH 67H 00H Decimal <27> <103> <0> IPCL &%GP EPOS [ESC] g <0> Description The [ESC] g <0> command prints the user-store data buffer. [ESC] g <1> Start macro record ASCII [ESC] g <1>...
  • Page 141: Bar Codes

    ® iTherm 280 Programmer’s Guide Bar Codes ® The iTherm 280 Printer supports the ability to print bar codes. The printer offers a number of formats as defined below. The host does not need to form the graphic image for these bar codes.
  • Page 142 Programming Codes Note: You may print barcodes in page mode. If you rotate these barcodes 90 or 180 you can get significantly longer barcodes. Interleaved 2 of 5 Interleaved 2 of 5 is a high-density, self-checking, continuous, numeric bar code. It is mainly used where fixed-length numeric fields are required.
  • Page 143: Figure 14 Code 39 Full 128 Character Encoding

    ® iTherm 280 Programmer’s Guide Code 39 Code 39 is an alphanumeric bar code. It is a discrete, self-checking, variable-length code. The printer prints the complete data field. The number of characters that can be printed depends on the bar width scaling. If the bar code scale is set to 2, 17 characters may be printed per line. There are two modes of operation for the Code 39 barcodes.
  • Page 144 Programming Codes Code 128 Code 128 is an alphanumeric bar code. It is a high-density, variable-length, continuous code, which employs multiple element widths. Code 128 has three possible start codes. The start code defines the code set, Code A, B, or C that will be used to generate the barcode. The ®...
  • Page 145: Figure 15 Expanded Function Coding

    ® iTherm 280 Programmer’s Guide 128 Code Value in Decimal FNC3 FNC2 Not Valid FNC4 FNC1 Start A Start B Start C Figure 15 Expanded Function coding Note: In automatic mode, FNC4 is always specified as 133 regardless of what code stick is currently active. ®...
  • Page 146: Figure 16 Code 128 Encoding Values

    Programming Codes Code 128 Encoding Code Stick Code Code Code Code Value Space Space " " & & < < > > Figure 16 Code 128 encoding values Page 144 iTherm iTherm Manual Code 128 Encoding Encoding Decimal Code Stick Value Value Code...
  • Page 147 ® iTherm 280 Programmer’s Guide Programming Codes UPC A UPC A is a fixed-length, numeric, continuous code that employs four element widths. The printer supports Universal Product Code Version A, E, EAN-8, and EAN-13. Version A encodes 11 digits. Typically, the UPC A format starts with a number system digit, five- digit manufacturer’s code, five-digit product code, and a check digit.
  • Page 148 Programming Codes Note 1: A [CR] may also be used in place of the [ETX] to end the bar code data field. Note 2: Only information that is usable in a particular bar code will be printed. PDF 417 PDF 417 is a two dimensional barcode that will encode the full ASCII character set. As it encodes the full set including control characters, the length of the following data must be provided to the printer.
  • Page 149 ® iTherm 280 Programmer’s Guide The second way is to determine correction level based on the amount of data in the barcode. This is determined by calculating a correction ration based on the formula Cf = (v * 0.1 * Len) 4-10 11-20 21-45...
  • Page 150 Programming Codes Function Set bar code justification, human readable interpretation (HRI) character print mode, and print direction ASCII [ESC] [EM] J <n> Hexadecimal 1BH 19H 4AH <n> Decimal <27> <25> <74> <n> IPCL &%BJ <m > <m EPOS none The power on default is center justified with HRI characters not printed. Description The [ESC] [EM] J <n>...
  • Page 151: Electronic Journal

    ® iTherm 280 Programmer’s Guide Electronic Journal ® The iTherm 280 has the capability to store electronic journal There are two ways entries can be made into the electronic journal. The first is by selecting the journal station. The second is by requesting that print data be placed into the electronic journal.
  • Page 152 Programming Codes It is up to the end user of the iTherm is required. CAUTION: If you have initialized the electronic journal and don’t know the password, there is no way to erase the electronic journal without returning the printer for service. The warranty does not cover this. All iTherm are shipped with the electronic journal partitioned and erased but not initialized.
  • Page 153 ® iTherm 280 Programmer’s Guide Initializing the Electronic Journal Once the electronic journal is partitioned, it can be initialized. Initializing the electronic journal sets the password and formats the flash to accept journal entries. Each entry may be any length up to 8K. Entries greater than 8K are truncated. Entries will be added to the electronic journal until it is full.
  • Page 154 Programming Codes Function Print the Electronic Journal ASCII [ESC][GS]P< S Hexadecimal 1BH 1DH 50H < S Decimal <27> <29><80> < S IPCL &%EP <S> <L> (L and S are 4 digits ie. 00100020 for 20 records starting at 10) EPOS Description This command prints all or part of the electronic journal.
  • Page 155 ® iTherm 280 Programmer’s Guide Function Set the Electronic Journal Record Header ASCII [ESC][GS]F<String %d><0> Hexadecimal 1BH 1DH 46H Decimal <27> <29><70> IPCL None EPOS Description This command allows the record separator that is printed between records to be changed. The default format is: \r\nRecord %d\r\n Where: \r represents CR, \n represents LF, %d represents the position of the...
  • Page 156 Programming Codes Function Query the Electronic Journal ASCII [ENQ]<25> Hexadecimal 05H 19H Decimal <05> <25> IPCL None EPOS Description This is a real time status request that returns the current state of the electronic journal. Return Format: [NAK]<25><42><n [NAK] EJ is not active. It is either off, not initialized or full. If n is not zero, the EJ is available but not initialized and n available space in K (1024) bytes.
  • Page 157 ® iTherm 280 Programmer’s Guide Printing/Reporting and Resetting the Electronic Journal The electronic journal may be printed on the receipt or reported to the host. The printed report will print each journal entry with an entry separator defined by the user (or, if not defined, with a default).
  • Page 158 Programming Codes Journal Print Mode Options Initialize Journal If this option is offered, the journal has never been initialized. Selecting this option will initialize the journal with no password. Once initialized, the journal configuration can not be changed unless the journal is erased by command. Print Complete Journal.
  • Page 159 ® iTherm 280 Programmer’s Guide Electronic Journal Entries There are two ways to place information in the electronic journal. The first is by selecting journal mode. The second is by requesting that validation or receipt information is copied into the electronic journal. If you select journal mode, information sent to the printer is not printed, but stored in the flash memory.
  • Page 160 Programming Codes The resulting journal entry would then only contain: ---{Date:0} {Time:0:}-- ST# 2000 OP# 00067 TE# 021 0035 SUB TOTAL 8.68 SALES TAX 1.50 ------ TOTAL 10.18 CASH TEND 20.00 CHANGE DUE 9.82 In carbon copy mode any printer control commands in the record data will be added to the journal record.
  • Page 161 ® iTherm 280 Programmer’s Guide Journal mode Journal mode is a station select command. All data sent to the printer, following the journal mode select command, is stored in the EJ as a single record. Any control commands sent to the electronic journal will end the journal entry. An EOT, NUL or any printer command will end journal mode.
  • Page 162 Programming Codes Carbon Copy Journal Mode Carbon copy mode allows information sent to the receipt or validation station to be copied into the electronic journal. An electronic journal entry is started with a “Start Carbon Copy” mode command and continues until a station select command is received or a “Stop Carbon Copy”...
  • Page 163: Miscellaneous Control

    ® iTherm 280 Programmer’s Guide Miscellaneous Control [ESC] 8 Disable paper out sensor ASCII [ESC] 8 Hexadecimal 1BH 38H Decimal <27> <56> IPCL &%PF EPOS none Description The [ESC] 8 command temporally disables the paper out sensor. The printer does not stop printing or go off-line when it senses it is out of paper.
  • Page 164 Programming Codes [CAN] Clear print buffer ASCII [CAN] Hexadecimal 18H Decimal <24> IPCL &%RP EPOS [CAN] Description The [CAN] command clears the print buffer and any unprinted information in the printer received before it. If the input buffer is not being processed because the printer is out of paper or a form is not inserted, the [CAN] command will not be processed until after the error is cleared.
  • Page 165 ® iTherm 280 Programmer’s Guide [ESC] x Open cash drawer ASCII [ESC] x <n> Hexadecimal 1BH 78H <n> Decimal <27> <120> <n> IPCL &%D1 (Cash Drawer 1) &%D2 (Cash Drawer 2) EPOS [ESC] p Description The [ESC] x <n> command charges the cash drawer, <n>, for 150 ms. Where <n>...
  • Page 166 Programming Codes [BEL] Audio alert ASCII [BEL] Hexadecimal 07H Decimal <7> IPCL &%BL EPOS [BEL] Description When enabled, the [BEL] command starts the audio alert sequence. The default is a single sound, lasting the period of time defined by the audio alert setting.
  • Page 167 ® iTherm 280 Programmer’s Guide [ESC] p 4 Select paper sensor(s) to stop printing ASCII [ESC] p 4 <n> Hexadecimal 1BH 70H 34H <n> Decimal <27> <112> <52> <n> Range Description The [ESC] p 4 <n> command selects the sensors that tell the printer to stop printing.
  • Page 168: Table 15 Paper Sensor Commands

    Programming Codes On/Off Hexadecimal [ESC] < Enable print suppress and data pass through ASCII [ESC] < <n> Hexadecimal 1BH 3CH <n> Decimal <27> <60> <n> IPCL &%PT <n> EPOS [ESC] = <n> Description The [ESC] < <n> command provides print suppress and data pass through features.
  • Page 169 ® iTherm 280 Programmer’s Guide [ESC] y Set control feature commands ASCII [ESC] y <n> Hexadecimal 1BH 79H <n> Decimal <27> <121> <n> IPCL &%Y0-9 or &%YX <m EPOS [ESC] y <n> Where n Reinitializes the printer and forces Citizen mode Reinitializes the printer and forces Star mode Reinitializes the printer and forces iTherm®...
  • Page 170 Programming Codes Note 3: [ESC] y <6> and <7> enable and disable the inquire process. These commands are not processed as they are received, but are buffered then processed. The buffering process allows inquire commands sent after a disable to be answered. In addition, inquires sent after an enable may not be answered.
  • Page 171: Remote Power Control

    ® iTherm 280 Programmer’s Guide Remote Power Control ® The iTherm 280 Printer has a remote power control command that instructs it to enter OFF mode. When the command is issued, the printer performs print cartridge maintenance and enters OFF mode. Unlike pushing the * button, remote power mode leaves the communications active.
  • Page 172: Documented Extended Control Commands

    Programming Codes Documented Extended Control commands ® The iTherm 280 has a number of Extended Control commands designed to make operation and maintenance of the printer easier for the host application. For further details, refer to the ITherm® Extended Control discussion in Chapter 8. [SOH] Begin multi-drop control ASCII...
  • Page 173: Printer Status

    ® iTherm 280 Programmer’s Guide Printer Status Status Inquire ® The iTherm 280 Printer is designed for use as part of an automated system where the host computer makes every attempt to correct problems with the printer. In addition, the host application requires that it be able to obtain more information from the printer than is typical of normal computer printers.
  • Page 174: Inquire Commands

    Programming Codes IEEE 1284 Mode Inquire In parallel, IEEE 1284 mode, status information can be returned to the host through the IEEE 1284 reverse channel. After the host makes an inquire request, it activates IEEE 1284 mode 0 reverse channel and waits for a response from the printer. The response to the inquire is identical to serial mode in format.
  • Page 175 ® iTherm 280 Programmer’s Guide [ENQ] <4> Inquire receipt paper out status ASCII [ENQ] <4> Hexadecimal 05H 04H Decimal <5> <4> Function Receipt paper exhausted Response ACK <4> (06H 04H) Receipt paper is present NAK <4> (15H 04H) Receipt paper is exhausted [ENQ] <8>...
  • Page 176 Programming Codes When the printer receives a reset command, the printer goes off-line and/or busy until the reset completes. In serial mode, the printer may have information in its high-speed buffer that was received after the reset command but before the reset was processed. If the host application continues to send information to the printer after a reset command, some of that information may be processed before the reset is processed.
  • Page 177 ® iTherm 280 Programmer’s Guide [ENQ] <15> Inquire printer state ASCII [ENQ] <15> Hexadecimal 05H 11H Decimal <5> <15> Function The [ENQ] <15> command returns the current printer state Note [ENQ] <17> also returns the current printer state, but it should not be used as it conflicts with XON/XOFF flow control.
  • Page 178 Programming Codes [ENQ] <20> Inquire all printer status ASCII [ENQ] <20> Hexadecimal 05H 14H Decimal <5> <20> Function The [ENQ] <20> command returns all status flags Response [ACK] <20> <n> <r Where <20> is the echo of command ID. <n> is the number of return bytes + 40 (28H) (to prevent confusion with XON/XOFF).
  • Page 179 ® iTherm 280 Programmer’s Guide [ENQ] <21> Inquire printer ID ASCII [ENQ] <21> Hexadecimal 05H 15H Decimal <5> <21> Function The [ENQ] <21> command returns the printer IEEE 1284 ID string. Response [ACK] <21> <n> {ID string} Where <21> is the echo of the command ID and <n> is the number of return bytes in the ID string {ID string} is the IEEE ID return string, which follows: MFG:Ithaca-Periph.;...
  • Page 180 Programming Codes [ENQ] <22> Inquire Error status ASCII [ENQ] <22> Hexadecimal 05H 17H Decimal <5> <22> Function The [ENQ] <22> command reports on the error status. Response [ACK] <22> <n> <r> Where <22> is the echo of the command ID. <n>...
  • Page 181 ® iTherm 280 Programmer’s Guide [ENQ] <23> Inquire user-store status ASCII [ENQ] <23> Hexadecimal 05H 17H Decimal <5> <23> Function The [ENQ] <23> command reports on the user-store status. Response [ACK] <23> <Report> <0> Where <23> is the echo of command ID. The report is a null terminated string with the following format: 12345[CR][LF] (Free user store) 12345 Type Name…[CR][LF] (First entry) etc.
  • Page 182 Programming Codes not defined.) on a periodic bases. The value of n is the period in 100 MS intervals. This command is saved through power cycles. Once set it need not be set again, however you can set it the same value repeatedly as it is only saved if it is changed.
  • Page 183: Esc/Pos Tm Codes

    Codes The EPOS codes that are supported by the iTherm TransAct Technologies, Inc. has no control over how Epson extends or changes these control codes, and can make no guarantees as to the operation of our printer when it replaces an Epson printer. The TM-T90 and EPOS emulation’s are intended to make it as easy as possible to replace an Epson printer with an iTherm ®...
  • Page 184 ® Programming Codes iTherm 280 Programmer’s Guide compliant system, byte mode should be an extension and the default should be nibble mode. ® The iTherm 280 Printer supports the EPOS real-time status commands [DLE] [ENQ] and [DLE] [EOT] and are preprocessed by the printer. The printer supports all the response bit fields as defined by the TM-T88 and TM-T90 Printers.
  • Page 185: Supported Tm-T88 Commands

    ® iTherm 280 Programmer’s Guide Supported TM-T88 Commands Print and Feed Commands Command ESC d 1BH,64H ESC J 1BH,4AH Line Spacing Commands Command ESC 2 1BH,32H ESC 3 1BH,33H Character Commands Command ESC SP 1BH,20H ESC ! 1BH,21H ESC % 1BH,25H ESC &...
  • Page 186 Programming Codes Supported TM-T88 Commands Print Position Commands Command ESC $ 1BH,24H ESC D 1BH,44H ESC \ 1BH,5CH ESC a 1BH,61H GS L 1DH,4CH GS T 1DH,54H GS W 1DH,57H Bit-image Command Command ESC * 1BH,2AH GS v 0 1DH,76H,30 Status Commands Command DLE EOT...
  • Page 187 ® iTherm 280 Programmer’s Guide Supported TM-T88 Commands Miscellaneous Commands Command DLE DC4 <1> 10H,14H,01H DLE DC4 <2> 10H,14H,02H DLE DC4 <8> 10H,14H,08H ESC = 1BH,3DH ESC @ 1BH,40H ESC p 1BH,70H GS ( A 1DH,28H,41 GS I 1DH,49H GS P 1DH,50H GS b 1DH,62H...
  • Page 188: Undocumented Tm-T88 Commands

    Programming Codes Undocumented TM-T88 Commands Command Name ESC I Auto Cut ESC m Auto Cut ESC u Transmit Peripheral Device Status ESC v Transmit Paper status Table 17 Undocumented TM-T90 Commands Page 186 ® iTherm 280 Programmer’s Guide Rev C 28-07764...
  • Page 189: Supported Tm-T90 Commands

    ® iTherm 280 Programmer’s Guide Supported TM-T90 Commands Print and Feed Commands Command ESC d 1BH,64H ESC e 1BH,65H ESC J 1BH,4AH ESC K 1BH,4BH ESC j 1BH,6AH Line Spacing Command Command ESC 2 1BH,32H ESC 3 1BH,33H Character Commands Command ESC SP 1BH,20H...
  • Page 190: Table 14 Paper Sensor Commands

    Programming Codes Supported TM-T90 Commands Paper Sensor Commands Command ESC c 4 1BH,63H, 34H ESC c 3 1BH,63H, 33H ESC c 1 1BH, 63H, ESC c 0 1BH, 63H, Print Position Commands Command ESC $ 1BH,24H ESC < 1BH,3CH ESC D 1BH,44H ESC Q 1BH,51H...
  • Page 191 ® iTherm 280 Programmer’s Guide Supported TM-T90 Commands Bar Code Commands Command GS H 1DH,48H GS f 1DH,66H GS h 1DH,68H GS k 1DH,6BH GS w 1DH,77H Mechanism Control Commands Command GS V 1DH,56H ESC I 1BH,69H ESC m 1BH,69H ESC BEL 1BH,07H Miscellaneous Commands...
  • Page 192 Programming Codes Supported TM-T90 Commands User-defined Memory Commands Command GS - <Name> … 1DH,2DH, <Name> … GS 0 <Name> … 1DH,30H, <m> <Name> … GS 1 <Name> … 1DH,31H, <Name> … GS * 1DH,2AH GS / 1DH,2FH GS 3 1DH,33H GS 5 1DH,35H GS 6...
  • Page 193: Tm-T88 / Tm-T90 And Esc/Pos

    ® iTherm 280 Programmer’s Guide TM-T88 / TM-T90 and ESC/POS Descriptions The TM-T90 and EPOS emulation’s are grouped together. The TM-T90 emulation is a subset of the EPOS emulation. The EPOS-only commands are noted. Print and Feed Commands Function Print and Line Feed ASCII [LF] Hexadecimal 0AH...
  • Page 194 Programming Codes Function Print and Feed Paper ASCII [ESC] J <n> Hexadecimal 1BH 4AH <n> Decimal <27> <74> <n> Range Description The [ESC] J <n> command prints the data in the print buffer and feeds the paper [n x (1/144)] inches, which means that the printer can feed the paper in half-dot units.
  • Page 195: Line Spacing Commands

    ® iTherm 280 Programmer’s Guide Line Spacing Commands Function Select Default Line Spacing ASCII [ESC] 2 Hexadecimal 1BH 32H Decimal <27> <50> Description The [ESC] 2 command sets the line spacing to 1/6 inch, which is equivalent to 12 dots. Function Set Line Spacing ASCII...
  • Page 196: Table 19 Select Character Font Table

    Programming Codes Function Define User-Defined Characters ASCII [ESC] & <y> <c1> <c2> [x1 d1 … d(y x x1)] … [xk d1 … d(y x xk)] Hexadecimal 1BH 26H y c1 c2 [x1 d1 … d(y x x1)] … [xk d1 … d(y x xk)] Decimal <27>...
  • Page 197: Table 20 International Character Sets

    ® iTherm 280 Programmer’s Guide Function Select an International Character Set ASCII ESC R <n> Hexadecimal 1BH 52H <n> Decimal <27> <82> <n> Range Default <n> = 0 Description The ESC R <n> command selects an international character set, <n>, from the following table.
  • Page 198 Programming Codes Function Select Character Code Table ASCII ESC [ T <n > <n Hexadecimal 1BH 5BH 54H <n Decimal <27> <91> <84> <n Default <n > = 1 <n > = 181 (Code Page 437) Description The ESC [ T <n code table.
  • Page 199: Table 21 Character Code Pages

    ® iTherm 280 Programmer’s Guide Code Page Country Cyrillic II-866 Greek 869 Kamenicky (MJK) 1008 Greek 437 1009 Greek 928 1011 Greek 437 CYPRUS 1012 Turkey 1013 Cyrillic II-866 1014 Polska Mazovia 1015 ISO Latin 2 1016 Serbo Croatic I 1017 Serbo Croatic II 1018...
  • Page 200: Table 22 Character Code Table

    Programming Codes Function Print Control Character ASCII [ESC] ^ <n> Hexadecimal 1BH 5EH <n> Decimal <27> <94> <n> Range Description The [ESC] ^ <n> command allows characters from zero to 31 codes to be printed. During normal operation, characters from zero to 31 are control characters.
  • Page 201: Table 23 Print Modes

    ® iTherm 280 Programmer’s Guide Function Select Print Mode(s) ASCII [ESC] ! <n> Hexadecimal 1BH 21H <n> Decimal <27> <33> <n> Range Description The [ESC] ! <n> command selects print modes using <n> as follows. The default character font is 7 x 9. The defaults for the other print modes are set to <n> = 1. Off/On Hexadecimal Function...
  • Page 202: Table 24 Rotation Modes

    Programming Codes Function Turn ON/OFF Double-Strike Mode ASCII [ESC] G <n> Hexadecimal 1BH 47H <n> Decimal <27> <71> <n> Range Description The [ESC] G <n> command turns on or off double-strike mode. When the least significant bit (LSB) of <n> = 1, double-strike mode is turned on; when it is 0, double-strike mode is turned off.
  • Page 203 ® iTherm 280 Programmer’s Guide Function Set Character Size ASCII GS ! <n> Hexadecimal 1DH 21H <n> Decimal <29> <33> <n> Description The GS ! <n> command sets the horizontal and vertical scaling. The upper nibble is the horizontal scale, and the lower nibble is the vertical scale. The minimum size is x1, and the maximum size is x2.
  • Page 204: Panel Button Commands

    Programming Codes Panel Button Commands Function Enable/Disable Paper Feed ASCII [ESC] c 5 <n> Hexadecimal 1BH 63H 35H <n> Decimal <27> <99> <53> <n> Range Description The [ESC] c 5 <n> command enables or disables the FEED Button. When the least significant bit (LSB) of <n>...
  • Page 205: Paper Sensor Commands

    ® iTherm 280 Programmer’s Guide Paper Sensor Commands Function Select Paper Sensor(s) to Stop Printing ASCII [ESC] c 4 <n> Hexadecimal 1BH 63H 34H <n> Decimal <27> <99> <52> <n> Range Description ESC c 4 n selects whether to stop printing or not when the paper low is detected. There are three sensors in the TM-88 or TM-90 that are simulated in the iTherm 280: the paper roll low, paper roll end sensor, and validation sensor.
  • Page 206: Table 26 Paper Sensor Commands

    Programming Codes Function Select Paper Sensor(s) to Output Paper-End Signals ASCII [ESC] c 3 <n> Hexadecimal 1BH 63H 33H <n> Decimal <27> <99> <51> <n> Range Description ESC c 3 n selects whether to output paper-end signals or not to a parallel interface.
  • Page 207: Print Position Commands

    ® iTherm 280 Programmer’s Guide Print Position Commands Function Set Print Position to the beginning of print line ASCII [GS] T <n> Hexadecimal 1DH 54H <n > <n Decimal <29> <84> <n > <n Range Description The GS T <n> command sets the print position to the beginning of the print line. <n>...
  • Page 208 Programming Codes Function Select Justification ASCII [ESC] a <n> Hexadecimal 1BH 61H <n> Decimal <27> <97> <n> Range Description The [ESC] a <n> command aligns all the data in one line to a specified position. Left justification is selected when <n> = 0 or 48, centering is selected when <n> = 2 or 50.
  • Page 209 ® iTherm 280 Programmer’s Guide Function Set Horizontal Tab Positions ASCII [ESC] D <n > … <n Hexadecimal 1BH 44H <n > … <n Decimal <27> <68> <n Range Description The [ESC] D <n specifies the column number for setting a horizontal tab position. The command deletes any previously set, horizontal tab positions.
  • Page 210 Programming Codes Function Set Left Margin ASCII [ESC] l <n> Hexadecimal 1BH 6CH <n> Decimal <27> <108> <n> Range Description The [ESC] 1 <n> command sets the left margin using <n>. The left margin is set to <n> characters from the beginning of the line. Function Set Right Margin ASCII...
  • Page 211: Bit-Image Commands

    ® iTherm 280 Programmer’s Guide Bit-Image Commands Function Select Bit-Image Mode ASCII [ESC] * <m> <nl> <nh> <dl> … <dk> Hexadecimal 1BH 2AH <m> <nl> <nh> <dl> … <dk> Decimal <27> <42> <m> <nl> <nh> <dl> … <dk> Range <m> = 0, 1, 32, 33 k = nl + nh x 256 for <m>...
  • Page 212: Status Commands

    Programming Codes Status Commands Function Enable/Disable Automatic Status Back (ASB) ASCII [GS] a <n> Hexadecimal 1DH 61H <n> Decimal <29> <97> <n> Range Description The [GS] a <n> command selects a status for ASB transmission. ASB is enabled if any status item is selected. The printer automatically transmits a 4-byte status message whenever the status changes.
  • Page 213: Table 29 Automatic Status Back (Asb) First Byte (Printer Information)

    ® iTherm 280 Programmer’s Guide Off/On Table 29 Automatic Status Back (ASB) First Byte (Printer Information) Off/On Table 30 Automatic Status Back (ASB) Second Byte (Error Information) The iTherm® 280 can not recover from mechanical errors without flushing the input buffer. All print data will be lost if a mechanical error occurs.
  • Page 214: Table 31 Automatic Status Back (Asb) Third Byte (Paper Sensor Information)

    Programming Codes Off/On Table 31 Automatic Status Back (ASB) Third Byte (Paper Sensor Information) Off/On Table 32 Automatic Status Back (ASB) Fourth Byte (Paper Sensor Information) Function Transmit Status ASCII [GS] r <n> Hexadecimal 1DH 72H <n> Decimal <29> <114> <n> Range Description The [GS] r <n>...
  • Page 215: Table 34 Drawer Kick-Out Connector Status ( = 2, 50)

    ® iTherm 280 Programmer’s Guide Off/On Table 34 Drawer Kick-out Connector Status (<n> = 2, 50) Function Transmit Real-Time Status ASCII [DLE] [EOT] <n> Hexadecimal 10H 04H <n> Decimal <16> <4> <n> Range Description The [DLE] EOT <n> command transmits the specified status in real time. The command is executed if the printer is off line, the print buffer is full, or an error occurs.
  • Page 216: Table 37 Off Line Status ( = 2)

    Programming Codes Off/On Hexl Off/On Off/On (0CH) Function Transmit Peripheral Status ASCII [ESC] u <n> Hexadecimal 1BH 75H <n> Decimal <27> <117> <n> Range n = 0 Description The [ESC] r <n> command transmits peripheral status has been replaced by the [GS] r command.
  • Page 217: Table 40 Peripheral Status ( = 0, 48)

    ® iTherm 280 Programmer’s Guide (03H) 1 – 7 Function Transmit Paper Sensor Status ASCII [ESC] v Hexadecimal 1BH 76H Decimal <27> <118> Description The [ESC] v command has been replaced by the [GS] r command. The [ESC] v command transmits paper status has been replaced by the [GS] r command. ®...
  • Page 218: Printing Paper Command

    Programming Codes Printing Paper Command Function Select Paper Type for Printing ASCII [ESC] c 0 <n> Hexadecimal 1BH 63H 30H <n> Decimal <27> <99> <48> <n> Range n = 1, 1 3, 8 Description ESC c 0 n selects paper type(s) for printing. User’s have the option to select either Paper roll or validation paper.
  • Page 219: Page Mode

    ® iTherm 280 Programmer’s Guide Function Select Paper Type for Command Settings ASCII [ESC] c 1 <n> Hexadecimal 1BH 63H 31H <n> Decimal <27> <99> <49> <n> Range n = 1, 1 3, 8 Description ESC c 1 n selects paper type(s) for setting. Paper roll and validation paper are available.
  • Page 220 Programming Codes Function Select Page Mode ASCII [ESC] L Hexadecimal 1BH 4CH Decimal <27> <76> Description ESC L Switches from standard mode to page mode and starts the page mode definition. Function Set Printing Area in Page Mode ASCII [ESC] W xL xH yL yH dxL dxH dyL dyH Hexadecimal 1BH 57H xL xH yL yH dxL dxH dyL dyH Decimal <27>...
  • Page 221 ® iTherm 280 Programmer’s Guide Function Print and return to standard mode (in page mode0 ASCII [FF] Hexadecimal 0CH Decimal <12> Description [FF] In page mode, prints the data in the print buffer collectively and returns to standard mode. 28-07764 Receipt or Inserted Form Initial entry...
  • Page 222: Bar Code Commands

    Programming Codes Function Print data in page mode ASCII [ESC][FF] Hexadecimal 1BH,0CH Decimal <27><12> Description [ESC][FF] Prints the page as it is currently defined and reenters page mode without deleting the page definition. Function Set Absolute Vertical Print Position in Page Mode ASCII [GS]$ Hexadecimal 1DH,24H...
  • Page 223: Table 42 Bar Code System Based On

    ® iTherm 280 Programmer’s Guide Codabar UPC A UPC E JAN-13 (EAN-13) JAN-8 (EAN-8) Code 39 Codabar Code 93 Code 128 Table 42 Bar Code System Based on <m> [Description for <d> indicates the character code to be printed. A null (00 Hex) character ends the bar code definition.
  • Page 224: Table 43 Printing Position Of Hri Characters

    Programming Codes Decimal <29> <72> <n> Range 3, 48 Description The GS H <n> command selects the printing position of HRI (Human Readable Interpretation) characters when printing a bar code. <n> selects the printing position as follows. <n> Printing position 0, 48 Not printed 1, 49...
  • Page 225: Mechanism Control Commands

    ® iTherm 280 Programmer’s Guide Mechanism Control Commands Function Select cut mode and cut paper ASCII [GS] V <m> <n> Hexadecimal 1DH 56H <m> <n> Decimal <29> <86> <m> <n> Description When <m> = 1 or 49, <n> is not used and a partial cut is performed. When <m> = 66, [GS] V <m>...
  • Page 226: Miscellaneous Commands

    Programming Codes Miscellaneous Commands Function Set Horizontal and Vertical Motion Units ASCII [GS] P x y Hexadecimal 1DH 50H x y Decimal <29> <80> x y Range Default x = 180, y = 360 Description The GS P x y command sets the horizontal and vertical motion units to 1/x inches and 1/y inches, respectively.
  • Page 227 ® iTherm 280 Programmer’s Guide ASCII [ESC] p <m> <t Hexadecimal 1BH 70H <m> <t Decimal <27> <112> <m> <t Range <m> = 0, 1, 48, 49 Description The [ESC] p <m> <t the specified connector pin. When <m> = 1 or 48, the pulse is sent to drawer- kick-out connector pin 2.
  • Page 228: Table 48 Peripheral Device Bit Definitions

    Programming Codes Hexadecimal 10H 14H <8> d1…d7 Decimal <16> <20> <8> d1…d7 Range d1=1, d2=3, d3=20, d4=1, d5=6, d6=2, d7=8 Description The [DLE] [DC4] <8> command clears all data stored in the receive buffer and the print buffer. Transmits the following three bytes of data Header Flag Enters in standard mode...
  • Page 229 ® iTherm 280 Programmer’s Guide Function Real-Time Request to Printer ASCII [DLE] [ENQ] <n> Hexadecimal 10H 05H <n> Decimal <16> <5> <n> Range <n> = 0, 2 Description The [DLE] ENQ <n> command responds to a request from the host computer specified by <n>...
  • Page 230 Programming Codes Function Enter Test Mode ASCII [GS] ( A <2> <0> <n> <m> Hexadecimal 1DH 28H 41H <2> <0> <n> <m> Decimal <29> <40> <65> <2> <0> <n> <m> Description This command places the printer into test mode based on the parameters <n> and <m>.
  • Page 231 ® iTherm 280 Programmer’s Guide Function Transmit maintenance counter ASCII [GS] g 2 m nl nh: Hexadecimal 1DH 67H 32H Decimal <29> <103> <50> Description Transmits the value of the specified maintenance counter. • nl, nh specifies the maintenance counter number as (nl + nh x 256) Counter number Counter [Units] Decimal...
  • Page 232: Macro Function Commands

    Programming Codes Macro Function Commands Function Start/End Macro Definition ASCII [GS] : Hexadecimal 1DH 3AH Decimal <29> <58> Description The [GS] : command starts or ends macro definition. Macro definition starts when the command is received during normal operation and ends when it is received during the macro definition.
  • Page 233: User-Defined Images And Graphics Commands

    ® iTherm 280 Programmer’s Guide Function Delete Start-Up Macro Definition ASCII GS _ Hexadecimal 1DH 5FH Decimal <29> <95> Description The GS _ command deletes a start-up macro definition previously created by the GS ^ command. If a start-up macro was not previously defined, the command will be ignored.
  • Page 234 Programming Codes Column one PRINT #1, CHR$(29),CHR$(45), PRINT #1, ”MY IMAGE”,CHR$(0); PRINT #1, CHR$(1),CHR$(1); PRINT #1, CHR$(255),CHR$(255),CHR$(255),CHR$(255); PRINT #1, CHR$(255),CHR$(255),CHR$(255),CHR$(255) Page 232 ® iTherm d(x y 8) Rev C 280 Programmer’s Guide REM Enter the GS command REM Define the image name REM Image size (8 x 8 bits) REM Send 8 bytes of image REM data...
  • Page 235 ® iTherm 280 Programmer’s Guide Function Print User-Defined Bit Image ASCII GS 0 <Name..> <0><m> Hexadecimal 1DH 30H <Name..> 0H<m> Decimal <29> <48> <Name..> <0><m> Range <Name..> = a 15-byte maximum length name to identify the image. Description GS 0 prints a bit-image from storage in the nonvolatile memory pool. The name of the bit-image can be from one to 15 bytes long and contain any alphanumeric characters as well as spaces.
  • Page 236 Programming Codes Function Define Single User-Defined Bit-Image ASCII GS * x y d … d(x x y x 8) Hexadecimal 1DH 2AH x y d Decimal <29> <42> x y d Range Description The GS * x y d using the number of dots specified by x and y in the RAM buffer area (volatile memory).
  • Page 237: Table 50 User-Defined Bit-Image Resolutions

    ® iTherm 280 Programmer’s Guide Function Print single user-defined bit-image ASCII GS / <m> Hexadecimal 1DH 2FH <m> Decimal <29> <47> <m> Description The GS / <m> command prints a downloaded or stored bit-image using the mode specified by <m>. <m> selects a mode from the table below. Decimal Table 50 User-defined Bit-image Resolutions Function...
  • Page 238: Ithaca ® Specific Itherm ® 280 Commands

    Programming Codes ® Ithaca Specific iTherm The iTherm® 280 has a number of extended control commands designed to make operation and maintenance of the printer easier for the host application refer to the iTherm® 280 extended control discussion on page 170. Panel Button Commands Function Enable/Disable Paper Feed...
  • Page 239 ® iTherm 280 Programmer’s Guide Description The [ESC] c 5 <n> command enables or disables the FEED Button. When the least significant bit (LSB) of <n> = one, the FEED Button is disabled; when it is zero, the button is enabled. 28-07764 Programming Codes Rev C...
  • Page 240: Itherm ® Citizen Emulation

    Programming Codes ® iTherm Citizen Emulation The iTherm® 280 printer uses a subset of the Epson emulation for Citizen. ® iTherm Star Emulation The iTherm® 280 printer has Star emulation that will allow the iTherm to replace most Star printers with similar features to the iTherm. Star used a real time cash drawer command that uses features patented by Epson.
  • Page 241: 280 Color Graphics

    chapter ® iTherm 280 Color Graphics 28-07764 Rev C Page 239...
  • Page 242 This page intentionally left blank Page 240 Rev C 28-07764...
  • Page 243: Printing Graphics

    ® ITherm 280 Color Graphics Printing Graphics ® The iTherm 280 Printer has bit-image graphic capability and a full PC-compatible graphic character set. The bit image format is similar to that used on other personal computer printers. Three modes of operation are available. Single-density is the fastest mode.
  • Page 244: Figure 18 Example Commands For A Sample Receipt

    ® iTherm 280 Programmer’s Guide [ESC]: [ESC]3<27> [ESC]a<1> <201> <205><205><205><205><205><205><205><205><205> <205><205><205><205><205><205><205><205><205> <205><205><205><205> <187>[CR][LF] <186> ITHACA PRINTERS <186> <200> <205><205><205><205><205><205><205><205><205> <205><205><205><205><205><205><205><205><205> <205><205><205><205> <188>[CR][LF] [ESC]a<0> [ESC]0 [ESC][P<15> [CR][LF] ST# 2000 OP# 00067 TE# 021 0035[CR][LF] KLEENEX FAM D04 QTY 1 RITZ D01 QTY 1 CHIPS D01 QTY 1 STORAGE BAG...
  • Page 245: Figure 19 Sample Receipt

    ® ® ITherm 280 Color Graphics iTherm 280 Programmer’s Guide Figure 19 Sample Receipt When printing line graphics, the data path to the printer must be eight bits. Seven-bit serial protocols do not access the extended characters. The extended characters require that the form be reverse fed.
  • Page 246: Apa Graphics

    ® iTherm 280 Programmer’s Guide APA Graphics The printer is capable of all-points-addressable (APA) or horizontal graphics. Generating a graphic image by hand is time consuming and tedious. It is recommended that a graphic package be used to create a graphic image. The following procedure will help with the setup.
  • Page 247 ® ITherm 280 Color Graphics Color Graphics ® The iTherm 280 is a two-color printer as rather than a full color printer. A full color printer forms the various colors of an image by mixing inks of different colors on the paper.
  • Page 248 ® iTherm 280 Programmer’s Guide Procedure for color horizontal graphics: There are many ways to generate graphics for the iTherm use the PJColor program. (See the next section.) The other way is to use the Ithaca windows driver and capture the output to a file. To generate an image using the windows print driver: 1.
  • Page 249: Itherm ® 280 Universal Color Graphics

    ® ® ITherm 280 Color Graphics iTherm 280 Programmer’s Guide Figure 20 Receipt with graphics As with all graphics, the data path to the printer must be eight bits. Seven-bit protocols do not work. ® iTherm 280 Universal Color Graphics ®...
  • Page 250: Print File Graphics

    ® iTherm 280 Programmer’s Guide should be able to change the name printed on the top of a receipt. With the PJColor program you can store a named graphic into the printer an print it by changing the text name to match the stored graphic. For example, if your receipt has a name like "Joe's Market", you can save a graphic in the printer named "Joe's"...
  • Page 251: Store Graphics In The Printer

    ® ITherm 280 Color Graphics Store Graphics in the printer: PJColor can store a graphic in the iTherm graphic in the printer. To Store a graphic in the printer 1) Start PJColor 2) Under Settings, Select the iTherm will be setting the printer to. 3) Select the resolution you would like to have the printer use to print the graphics.
  • Page 252: How Universal Graphics Is Done

    ® iTherm 280 Programmer’s Guide How universal graphics is done The printer extends all the emulations to support two additional escape sequences and adds limited IPCL support. IPCL (Ithaca Printer Control Language) is an ASCII method of sending printer commands to the printer. In Ithaca PcOS emulation, IPCL command support is extensive.
  • Page 253: Cautions

    ® ITherm 280 Color Graphics Send the following text strings to the printer using whatever means is available to you. &%UBLogo& Begin defining macro "Logo" &%UGLogo& End the Definition of "Logo" &%UMLogo& Save Macro "Logo" to nonvolatile memory A graphic image named “Logo” should now be stored in the nonvolatile memory. To verify the image is present, use the “&%UQ&”...
  • Page 254: Universal Color Command Descriptions

    ® iTherm 280 Programmer’s Guide Universal Color Command Descriptions &%UB <Name..>& Begin named universal graphic record IPCL &%UB <Name..>& Description The &%UB <Name..>& command initializes the universal graphic buffer structure, and redirects the following data to the universal graphic buffer. It uses the <Name..>...
  • Page 255 ® ITherm 280 Color Graphics &%UQ& Report on user store IPCL &%UQ& Description The &%UQ& command prints a status report. command is to aid in universal graphic development. &%UT<n> Redefine User Store Termination Character IPCL &%UT<n> Description This command allows the terminator used to signal the end of the name field in User Store commands to be modified.
  • Page 256: Itherm ® 280 Coupon-Cut-Logo Feature

    ® iTherm 280 Programmer’s Guide ® iTherm 280 Coupon-Cut-Logo Feature ® The iTherm 280 printer has a feature that will allow a coupon and or logo graphic to printed as part of the existing auto cutter command. To activate this feature, it must first be configured. Configuration consists of specifying in what order the Coupon-Cut-Logo is processed and optionally, how much paper is to be feed after the new cut operation.
  • Page 257: Unicode And Fonts

    chapter Unicode and Fonts 28-07764 Rev C Page 255...
  • Page 258 This page intentionally left blank Page 256 Rev C 28-07764...
  • Page 259: Unicode And Fonts

    Moreover, such scaling and smoothing operations were often unsuitable for complex fonts such as Asian characters, where changes to pixel layout actually risk changing character meanings. To take full advantage of scalable fonts, the ITherm 280 supports additional commands and features, including: 1) Character size selection by points...
  • Page 260: Character Definition

    ITherm® 280 Unicode and Fonts Stroke-based characters With stroke based characters, the points stored are along the center line. Less than half the points are needed to render stroke based characters. This improves character-generation performance and uses less space. This type of character generation is fast and efficient, and is ideally suited for Asian fonts.
  • Page 261 10 to 14 CPI. The ITherm 280 always prints at 203 dots per inch (dpi) and always uses the scalable font to form characters. The resulting characters are not necessarily exactly the dot size indicated, but Characters are dot-like because they are not guaranteed to be exactly at an exact dot equivalent.
  • Page 262: Internal Fonts

    Selecting character size by points. In addition to the legacy or classic method of character size selection, the ITherm 280 allows selection by point size. Point sizes from 4 to 72 points may be selected for both the horizontal and vertical axes.
  • Page 263: Custom Fonts

    To provide this flexibility, the ITherm 280 has the ability to link up to 8 fonts together. When this is done, the first font in the link is searched first. If the character is not defined, the next font in the link is searched.
  • Page 264: Unicode

    TransAct Technologies provides a basic WGL4 font with the printer. This may be supplemented or replaced with a GB18030 Chinese font upon request. The printer will accept TrueType and compressed stroke fonts as defined by Monotype.
  • Page 265 UTF-8 encoded. They must be sent unmodified as 8-bit values. Note: Extended UTF encoding past 65534 is not supported in UTF-16 or UTF-8. Only Unicode addresses from 0 to 65534 are supported by the ITherm 280 Printer. Scalar Value...
  • Page 266 ITherm® 280 Unicode and Fonts Unicode Encoding Example 3 Byte output Example Hex Character Code: FA11 11111010 000100001 1111 1010 0100001 Section A Section B 4 digits 6 digits 1110 1111 <239> <168> Page 264 iTherm - Original Hex Code(s) - Converted to Binary - Underlined by section (ending of output byte) Section C...
  • Page 267: Bitmap Fonts

    280 Programmer’s Guide Bitmap Fonts It is possible to use bitmap fonts with the ITherm 280 Printer. Bitmap fonts are fixed pitch and are not scalable. They will only function as legacy fonts. The printer is optionally supplied with 4 legacy bitmap fonts. They are in a 10x24, 12x24 draft font format and a 16x24 near letter quality format.
  • Page 268 ITherm® 280 Unicode and Fonts ; N=0002 U=0021 EXCLAMINATION MARK ...00..00..00..00..00..00..00..00..00..00..00..00..00..00..0000..0000..0000... ; N=0003 U=0022 QUOTATION MARK .00..00..00..00... Page 266 ® iTherm 280 Programmer’s Guide Rev C 28-07764...
  • Page 269 ® iTherm 280 Programmer’s Guide .00..00..00..00..00..00... ; N=0004 U=0023 NUMBER SIGN ...00..00.00..00.00..00.00..00.0000..0000000.. 0000000... 0000.00..00.00..00.00..00.0000..0000000.. 0000000... 0000.00..00.00..00.00..00.00..00... The characters must be in sequential order and must be assigned Unicode character codes. N=0001 is a sequence number in hex and is not used in controlling character generation or order.
  • Page 270: File System And The Por.ini File

    ITherm® 280 Unicode and Fonts File system and the POR.INI file The ITherm 280 Printer supports a file system to support TransAct Technologies fonts and allow the user to load and link custom fonts. The POSFile tool provides a Windows interface to the printer and will allow fonts and configuration files to be loaded into the printer.
  • Page 271 Bitmap fonts are not scalable like true type fonts, only the normal 2X, 3X and so on scaling is available. TransAct Technologies can upon request and signing an NDA provide tools to allow the customer to develop there own bitmap fonts. These fonts must be in Unicode order but only need support the specific characters needed in the font.
  • Page 272 PcOS1 font. (Note that the font select and the Font ID are offset by one.) The font size is defined in 1/8 point units. This gives a lot of control of the size. Because the ITherm 280 printer prints discreet dots that are relative large (from a font point view), changes in character size will appear to jump.
  • Page 273 ® iTherm 280 Programmer’s Guide Function Select Font by name ASCII [ESC] + N <FileName> <0> Hexadecimal 1BH 2BH 31H Decimal <27> <43> <51> Description The [ESC] + N command selects the font for printing by file name. command is used to select a previously loaded font by its file name. If the selected font does not exist, the previous font will remain in effect.
  • Page 274 ITherm® 280 Unicode and Fonts ASCII [ESC] + M Hexadecimal 1BH 2BH 4DH Decimal <27> <43> <77> Description The [ESC] + M command will put the printer into UTF-8 character encoding mode of operation. Unicode encoding such as UTF-8. UTF-8 uses a Multiple Byte Character Sequence (MBCS) to identify the desired Unicode character.
  • Page 275: Font Size And Spacing

    ® iTherm 280 Programmer’s Guide Font Size and Spacing The font typically defines the character size and line spacing. The typical font is proportional spaced. That is the spacing between characters varies. This is not always the most desirable mode of operation. To give the programmer some additional control over character spacing and line height, the Accutherm Supreme provides a width and height override command.
  • Page 276: Font Size And Spacing Command Interactions

    ITherm® 280 Unicode and Fonts Font Size and Spacing command interactions There are interactions between some of the following commands and some of the legacy font selection commands. These interactions need to be considered when developing a application for this printer. This printer uses a font rendering engine that relies on the font to provide character size and spacing information.
  • Page 277 ® iTherm 280 Programmer’s Guide [ESC] + P, Width [ESC] + p Not Zero [ESC] + I, Value 0 [ESC] + i [ESC] + I, Value [ESC] + i Not zero [ESC] + J, Value 0 [ESC] + j [ESC] + J, Value [ESC] + j Not zero...
  • Page 278 ITherm® 280 Unicode and Fonts Function Set minimum character height and width in points. ASCII [ESC] + P <w><h> Hexadecimal 1BH 2BH 50H Decimal <27> <43> <80> Range w = 0, 4 – 72 h = 4 - 72 The [ESC] + P command will set the minimum character width or height based on “w” for the width and “h”...
  • Page 279 ® iTherm 280 Programmer’s Guide NOTE: If the current character size is too large for the selected spacing, the characters will overlap. Variable spacing is recommended. Function Set Character spacing in ¼ points. ASCII [ESC] + i <d> Hexadecimal 1BH 2BH 69H Decimal <27>...
  • Page 280 ITherm® 280 Unicode and Fonts Decimal <27> <43> <106> Range d = 0, 16 – 255 The [ESC] + j command will set the character spacing in points, where ¼ point is defined as 1/288 of an inch. This command will force mono-space printing. It will override any character spacing set by the set character height and width commands defined above.
  • Page 281: Table 51 Character Pitch

    Values from 6 to 200 represent 0.4 to 12% of the em-width of the font. The default for most fonts is about 3%. The ITherm 280 using the GB18030 font supplied by TransAct Technologies produces the best characters with a brush size of about 100.
  • Page 282: Legacy Printer Features That Have Changed

    ® ITherm® 280 Unicode and Fonts iTherm 280 Programmer’s Guide This command disables any right-side spacing set by the [ESC] V command. It enforces this spacing on the current font selection even if the character is too large for the spacing.
  • Page 283: File System

    chapter File System 28-07764 Rev C Page 281...
  • Page 284 This page intentionally left blank Page 282 Rev C 28-07764...
  • Page 285: File System Interface

    TransAct Technologies provides a Windows and provide a drag and drop interface to the file system. The file system in the ITherm 280 is partitioned into two sections, one for internal system use by the printer, and one for user information.
  • Page 286 ITherm® 280 File System 1= User .udf .mac .img .bgp .chr .cfg .ttf .ccc .btf .cpm .bmp .gph .ini .fcg .upd .sys .sy_ Note: All other file extensions will be placed in Partition 1 (user space) Function Return Free space for Open FIle. ASCII [ESC] [RS] S Hexadecimal 1BH 1EH 53H...
  • Page 287 ® iTherm 280 Programmer’s Guide Function Close File command. ASCII [ESC] [RS] C Hexadecimal 1BH 1EH 43H Decimal <27> <30> <67> Description The [ESC] [RS]C command will close the currently open file. Function Close All Files command. ASCII [ESC] [RS] K Hexadecimal 1BH 1EH 4BH Decimal <27>...
  • Page 288 ITherm® 280 File System ASCII [ESC] [RS] ? Hexadecimal 1BH 1EH 3FH Decimal <27> <30> <63> The [ESC][RS]? Command requests the file system to return the status of the last file operation. This command, returns an identifier byte, followed by 2 bytes indicating the status results of the last file command.
  • Page 289 ® iTherm 280 Programmer’s Guide Function Read File command. ASCII [ESC] [RS] R <L Hexadecimal 1BH 1EH 52H Decimal <27> <30> <82> Description The [ESC] [RS]R command requests that data be read from the file and returned to the host. The <LL><LH>...
  • Page 290 ITherm® 280 File System Function Verify files. ASCII [ESC] [RS] V Hexadecimal 1BH 1EH 56H Decimal <27> <30> <86> Description The [ESC] [RS]V opens and reads the VERIFY.CFG file. This file contains a list of all files that are to be validated in the printer and the expected CRC of the file. If all the files verify, this command will return VG followed by it’s 2 byte CRC.
  • Page 291: 280 Extended Printer Control

    chapter ® iTherm 280 Extended Printer Control 28-07764 Rev C Page 289...
  • Page 292 This page intentionally left blank Page 290 Rev C 28-07764...
  • Page 293 ® iTherm 280 Programmer’s Guide ® The iTherm 280 printer has a number of Extended Control commands that allow an application to better track and maintain the printer. These commands are in all emulations The printer maintains a log of printer activity. This activity may be returned to the host with the [ESC]~ T command.
  • Page 294 ITherm Extended Printer Control Power Up Resets Watchdog Resets Base Flash Erases Ext Flash Erases Auto Cutter Cycles Init Requests Error Vectors Auto Cutter Faults Power On Time (Min.) System Active Time (Min.) Over Temperature Cutter Re-Home Page 292 ® iTherm 280 Programmer’s Guide Rev C...
  • Page 295 ® iTherm 280 Programmer’s Guide Function: Set Secondary Paper Color ASCII: [ESC] ~ R<c> or [ESC] ~ L<c> Hex: 1BH 7EH 52H or 1BH 7EH 4CH Decimal: <27><126><82> or <27><126><76> Description: This command reconfigures the secondary paper colors. This command should only be use when the colors of the installed paper are changed.
  • Page 296 ITherm Extended Printer Control Function Print Current Configuration and Totals ASCII [ESC] y <9> or [ESC] ~ <9> Hexadecimal 1BH 79H 09H Decimal <27> <121> <9> Description This command forces the printer to print the current configuration. To function correctly it must be issued with the printer in the proper emulation mode.
  • Page 297 ® iTherm 280 Programmer’s Guide Notes: This command performs a configuration update, and should not be done on a regular basis. Notes: This command must be preceded with an ESC y <8> to enable it. 28-07764 ITherm Extended Printer Control Rev C Page 295...
  • Page 299: Communications

    chapter Communications 28-07764 Rev C Page 297...
  • Page 300 This page intentionally left blank Page 298 Rev C 28-07764...
  • Page 301: Protocol And Print Buffers

    ® iTherm 280 Programmer’s Guide Protocol and Print Buffers The following figure illustrates the communication flow from host computer to printer and from printer to cash drawer. Host computer Host to keypad Keypad For the host to printer communication link, the iTherm parallel communications.
  • Page 302: Figure 22 Host To Printer Link

    ® Communications iTherm 280 Programmer’s Guide Data to print er Printer Host computer Status and flow control back Figure 22 Host to Printer Link In most cases, the host computer is capable of sending information to the printer much faster than the printer can print it. To prevent information from being lost, a flow control mechanism is provided.
  • Page 303: Figure 23 Printer Communications Buffer Flow

    ® iTherm 280 Programmer’s Guide The following figure illustrates the four basic parts of printer flow control. Com m u n i c a t i o n s port Serial or parallel Data connection Data Status Status getting empty Figure 23 Printer Communications Buffer Flow The communication port is either serial or parallel and is controlled by a software communication driver.
  • Page 304: Usb

    ® Communications iTherm 280 Programmer’s Guide USB stands for Universal Serial Bus. It was originally conceived in the early 90’s and officially recognized by Compaq, Intel, Microsoft and NEC. The development of USB has been slow, however, with the release of Windows 95 SR2 development accelerated. Windows 2000 now fully supports USB as do Windows 98 SE, and Windows Me.
  • Page 305: Tcp/Ip

    ® iTherm 280 Programmer’s Guide TCP/IP A 10-BaseT Ethernet adapter is available for the Ithaca iTherm Ethernet Adapter provides a fast and easiest way to network and share printers in your system. Ethernet provides a consistent common connection between printers and computers using standard protocols supported by Windows as well as many other platforms.
  • Page 306: Parallel Port

    Communications Parallel Port Parallel Port Protocol ® The iTherm 280 parallel port behaves just as any printer connected to a personal computer. The parallel interface accepts 8-bits of data from the host. The strobe signal from the host is used to indicate that data is available. When the printer sees the strobe signal and accepts the data, it asserts a busy signal.
  • Page 307: Printer Buffer Size

    ® iTherm 280 Programmer’s Guide Some systems may wish to change the details of how the strobe, busy, and acknowledged signals interact. The parallel-port option features define how the strobe, busy, and acknowledged signals operate. In normal mode, the printer follows the standard (Centronics) parallel-port conventions.
  • Page 308 Mode 4 allows the printer to return identification information to the host system. The ® iTherm 280 printer returns: xx,yy length of following data, 2 bytes with MSB first MANUFACTURER TransAct Technologies COMMAND SET IPCL MODEL COMMENT Rev. x.xx ACTIVE COMMAND SET IPCL When a Mode 4 request is made, the IEEE 1284 buffer is cleared before the ID is sent.
  • Page 309: Parallel Port Plug And Play

    ® iTherm 280 Programmer’s Guide be activated. If the printer is placed back on-line while the reverse channel is active, the printer will not exit the reverse-channel mode. Inquire Responses In general, inquire commands place two-byte responses in the IEEE 1284 reverse- channel buffer.
  • Page 310 Communications where X is a model definition. X will be 3 if the printer is in the native iTherm emulation. 5 indicates that the printer is in some other emulation. Y and Z are bit fields that designate the options attached to the printer. Bit 0 Color Support active Bit 1...
  • Page 311: Serial Port

    ® iTherm 280 Programmer’s Guide Serial Port Serial Port Protocol The serial port supports two flow control standards, XON/XOFF and Ready/Busy (sometimes called Data Terminal Ready (DTR) or hardware handshake). When Ready/Busy flow control is selected, the printer can be configured to use DTR, Request to Send (RTS), or both for flow control.
  • Page 312: Figure 27 Xon/Xoff Serial Port Flow Control

    Communications Communications Port Serial Data In Data Data Inquire Serial Commands Data Out ENQ Response Send XOFF Send Send XON or XOFF (Not Used for Flow Control) RTS = Request to Send Figure 27 XON/XOFF Serial Port Flow Control Page 310 iTherm Data Print...
  • Page 313: Print Buffer Flow

    ® iTherm 280 Programmer’s Guide Print Buffer Flow Flow Chart 1 illustrates how the communications driver acquires data from the serial port and places it in the buffer using Ready/Busy or XON/XOFF flow control. Wait for data from the host. Place data in the print buffer.
  • Page 314 Communications Flow Chart 2 illustrates how the print control software takes data from the buffer and controls flow. At the top of the chart, the print control software asks for data. If there is no data in the buffer, a “no data flag” is returned. The print software must then wait for data.
  • Page 315: Printer Buffer Size

    ® iTherm 280 Programmer’s Guide Communications When the printer is on, the print controller looks for data. If there is data, it processes it. Flow control is done when the data is taken from the buffer and the amount of data in the buffer is less than a prescribed amount.
  • Page 316: Serial Device Identification

    Communications Serial Device Identification The serial device must report its identification to the system using an identification string at 1200 baud. The identification string consists of 18 fields that identify the device, class of the device, and other compatible devices. Only five of the fields are required by all serial devices;...
  • Page 317: Serial Port Inquire

    ® iTherm 280 Programmer’s Guide Serial Port Inquire The serial port inquire is more straightforward than parallel mode. The serial acknowledged (ACK) or not acknowledged (NAK) responses follow a uniform format, the ACK or NAK is always followed by the command ID that requested it. This makes the design of the host application easier because the response can be identified and always follows the same format.
  • Page 318: Display Pass Through

    Communications Display Pass Through The display pass through feature allows a pole display to be interconnected with the printer. The printer is connected to a host system with a special serial cable. The host sends serial data to the printer and the printer sends serial data to the pole display. The printer does not provide power to the display.
  • Page 319: Remote Printer Reset

    Communications Description Inquiry (ENQ) commands are accepted and answered in remote power down mode. The printer reactivates if the * button is pressed or a power up command is received. Note: If power is lost after the power down command is issued, the printer remembers it is in power down mode but does not reactivate the communications link.
  • Page 320: Miscellaneous Communication Features

    Communications Miscellaneous Communication Features Power-cycle Recovery Sometimes the host needs to know if the printer was power cycled. An example would be after the receipt tape was changed. It is not necessary to turn off the printer to change the receipt. However, if the operator does, any information sent to the printer before the power cycle will be lost.
  • Page 321: Off-Line Active

    ® Communications iTherm 280 Programmer’s Guide Off-line Active A configuration flag that prevents the printer from going off-line (in most cases) is available. Off-line mode allows the application to query the printer for status rather than assume a status from the control signals. The feature allows the host application to query the printer at all times except when there is no power;...
  • Page 322: Recovery From Mechanical Errors

    Communications Recovery from Mechanical Errors The Ithaca Inquire commands and the Epson [DLE][ENQ] and [DLE][EOT] commands allow most printer error status to be read and in some cases recovery attempted. Paper jams and auto-cutter faults can be recovered, however, any data not previously printed will be lost.
  • Page 323: Programmer's Notes

    ® Communications iTherm 280 Programmer’s Guide Programmer’s Notes When the serial port is used, it is important that the output lines from the printer not be shorted or back driven. If the signals are not to be used, they should be left open. Pins 3, 4, and 7 (of the 9 pin connector) are outputs from the printer.
  • Page 325: Appendix A: Internal Code Pages

    ® iTherm 280 Programmer’s Guide Appendix A: Internal Code Pages Code Country Code/Language Set Page USA (Slashed 0) USA (Unslashed 0) British German French Swedish I Danish Norwegian Dutch Italian French Canadian Spanish Swedish II Swedish III Swedish IV Turkish Swiss I Swiss II Greek...
  • Page 326: Appendix B - Ascii Code Table

    Appendix Appendix B - ASCII Code Table Decimal ASCII NULL Page 324 iTherm Decimal ASCII Decimal (SP) " & < > Rev C ® 280 Programmer’s Guide ASCII Decimal ASCII (sp) 28-07764...
  • Page 327: Appendix C: Unicode Character Addresses

    ® iTherm 280 Programmer’s Guide Appendix C: Unicode Character Addresses Note: This information is based on the Unicode 3.0 Standard. For specific character locations see the Unicode standard. Note: The Accutherm Supterme does not contain all possible Unicode characters. The default character sets are defined by the WGL4 and GB18030 standards.
  • Page 328 Appendix 0x2070 0x209F 0x20A0 0x20CF 0x20D0 0x20FF 0x2100 0x214F 0x2150 0x218F 0x2190 0x21FF 0x2200 0x22FF 0x2300 0x23FF 0x2400 0x243F 0x2440 0x245F 0x2460 0x24FF 0x2500 0x257F 0x2580 0x259F 0x25A0 0x25FF 0x2600 0x26FF 0x2700 0x27BF 0x27C0 0x27FF 0x2800 0x28FF 0x2900 0x2FFF 0x3000 0x303F 0x3040 0x309F...
  • Page 329: Appendix D: Wgl4.0 Character Addresses

    ® iTherm 280 Programmer’s Guide Appendix D: WGL4.0 Character Addresses There are 654 Characters in this set. Unicode Character 0020 space 0021 exclamation mark 0022 quotation mark 0023 number sign 0024 dollar sign 0025 percent sign 0026 ampersand 0027 apostrophe 0028 left parenthesis 0029...
  • Page 330 Appendix 00e2 Latin small letter a with circumflex accent 00e3 Latin small letter a with tilde 00e4 Latin small letter a with diaeresis 00e5 Latin small letter a with ring above 00e6 Latin small letter a with e 00e7 Latin small letter c with cedilla 00e8 Latin small letter e with grave accent 00e9...
  • Page 331 ® iTherm 280 Programmer’s Guide 0384 Greek tonos 0385 Greek dialytika tonos 0386 Greek capital letter alpha with tonos 0387 Greek ano teleia 0388 Greek capital letter epsilon with tonos 0389 Greek capital letter eta with tonos 038a Greek capital letter iota with tonos 038c Greek capital letter omicron with tonos 038e...
  • Page 332 Appendix 2013 en dash 2014 em dash 2015 horizontal bar 2017 double low line 2018 left single quotation mark 2019 right single quotation mark 201a single low-9 quotation mark 201b single high-reversed-9 quotation mark 201c left double quotation mark 201d right double quotation mark 201e double low-9 quotation mark...
  • Page 333: Appendix E: Gb18030 Character Addresses

    ® iTherm 280 Programmer’s Guide Appendix E: GB18030 Character Addresses There are 28575 Characters in this set. UNICODE CHARACTER 0020 SPACE 0021 EXCLAMATION MARK 0022 QUOTATION MARK 0023 NUMBER SIGN 0024 DOLLAR SIGN 0025 PERCENT SIGN 0026 AMPERSAND 0027 APOSTROPHE 0028 LEFT PARENTHESIS 0029...
  • Page 334 Appendix 03A0 GREEK CAPITAL LETTER PI 03A1 GREEK CAPITAL LETTER RHO 03A3 GREEK CAPITAL LETTER SIGMA 03A4 GREEK CAPITAL LETTER TAU 03A5 GREEK CAPITAL LETTER UPSILON 03A6 GREEK CAPITAL LETTER PHI 03A7 GREEK CAPITAL LETTER CHI 03A8 GREEK CAPITAL LETTER PSI 03A9 GREEK CAPITAL LETTER OMEGA 03B1...
  • Page 335 ® iTherm 280 Programmer’s Guide 224C ALL EQUAL TO 2252 APPROXIMATELY EQUAL TO OR THE IMAGE OF 2260 NOT EQUAL TO 2261 IDENTICAL TO 2264 LESS-THAN OR EQUAL TO 2265 GREATER-THAN OR EQUAL TO 2266 LESS-THAN OVER EQUAL TO 2267 GREATER-THAN OVER EQUAL TO 226E NOT LESS-THAN...
  • Page 336 Appendix 2554 BOX DRAWINGS DOUBLE DOWN AND RIGHT 2555 BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE 2556 BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE 2557 BOX DRAWINGS DOUBLE DOWN AND LEFT 2558 BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE 2559 BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE 255A BOX DRAWINGS DOUBLE UP AND RIGHT...
  • Page 337 ® iTherm 280 Programmer’s Guide 3062 HIRAGANA LETTER DI 3063 HIRAGANA LETTER SMALL TU 3064 HIRAGANA LETTER TU 3065 HIRAGANA LETTER DU 3066 HIRAGANA LETTER TE 3067 HIRAGANA LETTER DE 3068 HIRAGANA LETTER TO 3069 HIRAGANA LETTER DO 306A HIRAGANA LETTER NA 306B HIRAGANA LETTER NI 306C...
  • Page 338 Appendix 3124 BOPOMOFO LETTER ANG 3125 BOPOMOFO LETTER ENG 3126 BOPOMOFO LETTER ER 3127 BOPOMOFO LETTER I 3128 BOPOMOFO LETTER U 3129 BOPOMOFO LETTER IU 3220 PARENTHESIZED IDEOGRAPH ONE 3221 PARENTHESIZED IDEOGRAPH TWO 3222 PARENTHESIZED IDEOGRAPH THREE 3223 PARENTHESIZED IDEOGRAPH FOUR 3224 PARENTHESIZED IDEOGRAPH FIVE 3225...
  • Page 339 ® iTherm 280 Programmer’s Guide FF32 FULLWIDTH LATIN CAPITAL LETTER R FF33 FULLWIDTH LATIN CAPITAL LETTER S FF34 FULLWIDTH LATIN CAPITAL LETTER T FF35 FULLWIDTH LATIN CAPITAL LETTER U FF36 FULLWIDTH LATIN CAPITAL LETTER V FF37 FULLWIDTH LATIN CAPITAL LETTER W FF38 FULLWIDTH LATIN CAPITAL LETTER X FF39...
  • Page 340: Appendix F Windows 1252 Latin 1

    Appendix Appendix F Windows 1252 Latin 1 Windows 1252 Latin 1 to Unicode translation ASCII Unicode Character 0x00 0x0000 NULL 0x01 0x0001 START OF HEADING 0x02 0x0002 START OF TEXT 0x03 0x0003 END OF TEXT 0x04 0x0004 END OF TRANSMISSION 0x05 0x0005 ENQUIRY...
  • Page 341 ® iTherm 280 Programmer’s Guide 0x8B 0x2039 SINGLE LEFT-POINTING ANGLE QUOTATION MARK 0x8C 0x0152 LATIN CAPITAL LIGATURE OE 0x8D 0x0000 0x8E 0x017D LATIN CAPITAL LETTER Z WITH CARON 0x8F 0x0000 0x90 0x0000 0x91 0x2018 LEFT SINGLE QUOTATION MARK 0x92 0x2019 RIGHT SINGLE QUOTATION MARK 0x93 0x201C...
  • Page 343: Appendix G: Ordering Supplies

    ® iTherm 280 Programmer’s Guide Appendix G: Ordering Supplies ITherm® supplies can be ordered easily direct from the TransAct website tech.com) or our telephone number within the US toll free: (877) 7ithaca. (other inquires: (607) 257-8901). When calling by phone, please ask for the Sales Department. Receipt Paper Type Black Monochrome...
  • Page 345: Index

    ® iTherm 280 Programmer’s Guide Index [BEL] Audio alert, 163, 164 [BEL] Sound buzzer, 223 [BS] Insert back space, 83 [BS] Set back space, 206 [CAN] Clear print buffer, 162 [CR] Print and carriage return, 191 [CR] Set carriage return, 82 [DC2] Begin 10 cpi, 93 [DC4] End one-line double-wide print, 107 [DLE] [DC4] <1>...
  • Page 346 Index [ESC] a <n> Set justification, 84 [ESC] A <n> Set variable line spacing to n/72 inch, 86 [ESC] b <n> ... Print bar code, 139, 146, 179, 180 [ESC] B <n > <n > … <n > 0 Set vertical tab stops, [ESC] Begin 12 cpi, 93 [ESC] BEL Sound buzzer, 223 [ESC] C [NUL] <n>...
  • Page 347 ® iTherm 280 Programmer’s Guide Begin Italics, 112 Bi-directional Printing, Beginning, 126 Bit Image Mode, Selecting, 209 Bit-Image Command, 209 Boot Loader Mode, 61 Buffer, 306 Carriage Return, 82 Cash Drawer 1 Status, Inquire, 172 Cash drawer, Opening, 163 Change User Store Terminator, 136 Changing Interface Cards, 39 Character attributes, 107 Character Code Page, Setting, 101...
  • Page 348 Index Graphic Data, Processing, 127 Graphic Mode, Reassigning, 124 Graphic mode, Set Horizontal, 128 Graphic save, 129 Graphics all-points-addressable (APA), 244 Character, 241 color, 127 horizontal, 127 Horizontal, 244 printing, 241 GS - <Name..> <0> x y d …d(x x y x 8)Define user- defined bit image, 231 GS ! <n>...
  • Page 349 ® iTherm 280 Programmer’s Guide PcOS Quick Reference Chart, 76 Peripheral Devise Status, Selecting, 226 Plug and Play parallel, 307 Serial, 313 Power Control, Remote, 169, 316 Power Cycle Status, Inquire, 174 Power-cycle recovery, 318 Print and Carriage Return, 191 Print and Feed Lines, 191 Print and Feed Paper, 192 Print and Line Feed, 191...

Table of Contents