Epic 3000 Programmer’s Guide Federal Communications Commission Radio Frequency Interference Statement The EPIC 3000 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.
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.
Trademarks ........................5 Table of Contents ......................6 Figures .......................... 12 Tables ........................... 14 About the EPIC 3000 Printer ............15 Who Should Read This Guide? ..................15 What Is Included in This Guide? ..................15 Warranty Options ......................15 Technical and Sales support ..................
Page 7
Level 0 Diagnostics ....................27 Cold Power On ....................27 Boot Loader Maintenance Mode ................28 Configuring Your EPIC 3000 Printer ..........28 Configuration Mode Overview ..................28 How to Change Configuration Settings ................28 Entering into Configuration Mode ................28 Using Configuration Mode .....................
Page 8
Programming Codes Epic 3000 Programmer’s Guide Standard APA Graphics ..................74 Extended APA Graphics ..................75 Horizontal Graphics ....................77 Graphics Compression ..................78 Bitmap Graphics File Support ................80 User Store (Graphic Save) ..................82 Defining Macros ....................83 User-Store Commands ..................
Page 10
Procedure for APA graphics: ................189 Color Graphics ....................189 Procedure for color horizontal graphics: ............190 EPIC 3000 Universal Color Graphics ................192 Print File Graphics ....................192 To generate a print file..................192 Store Graphics in the printer: ................193 To Store a graphic in the printer ...............
Page 11
POR.INI file ......................... 231 File system Support..................... 234 EPIC 3000 Extended Printer Control ..........235 EPIC 3000 Internal Logs ..................... 235 EPIC 3000 Green and Sleep Power Control ..............238 Communications ................240 Protocol and Print Buffers ................... 240 USB ..........................243 USB Support .......................
Programming Codes About the EPIC 3000 Printer The Ithaca EPIC 3000 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: ...
Our web site at www.transact-tech.com is your on-line portal to obtaining technical assistance with your Ithaca printer. Click on Ithaca link and then the Technical Support link to find documentation for your EPIC 3000 printer, including a current copy of this Programmer’s Guide.
Epic 3000 Programmer’s Guide Programming Codes authorization. International customers should contact your distributor for services. TransAct offers the following service programs to meet your needs. Extended Warranty. Depot Repair. Maintenance Contract. Internet Support. Sales Support To order supplies, receive information about other Ithaca products, or obtain information about your warranty, contact our Sales Department at the contact telephone or fax numbers listed below.
Programming Codes Epic 3000 Programmer’s Guide EPIC 3000 Specifications and Requirements Standard Features The following features are common to the entire family of thermal printers: Print Speed for text is 11 inches per second (279 mm/sec) 12.0 inches per second paper feed speed ...
Page 19
Epic 3000 Programmer’s Guide Programming Codes Internal counters for hours on, cuts, print lines and errors 100 km print head life 60 million print line printer MCBF (excluding knife) Buzzer 100-14362 Rev A Page 19...
Electrical Characteristics Internal AC Powered The EPIC 3000 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.
A 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. Receipt Printing, Auto Cutter Position A receipt auto-cutter is a standard feature with all EPIC 3000 Printers. Cutter type Rotary Media width 3.19 +/- .02 inches (81.5 +/- .5 mm)
Setup Verifying the Configuration Before you install an EPIC 3000 Printer into your system, you should verify that the printer is configured as required by your system. There are four parts to this verification process.
If they are wrong, the printer may appear inoperative. If the configuration is not correct, refer to the section on changing the EPIC 3000 configuration. If there are a number of printers to be installed and you want the identical configuration in each, you can use the universal configuration program to record the configuration on one printer, and replicate it over a group.
Indicator Light Error Indication and Blink Patterns The EPIC 3000 printer will blink the LED indicator to indicate various modes or faults. The printer may be in normal operation, self test or in recovery modes. The multicolor Indicator LED will indicate which mode by a unique color and or blink pattern.
Power Saving Modes Sleep In Sleep mode, the EPIC 3000 printer enters a low power state where everything but the communications is disabled. In this mode, the printer may be reactivated by command or by pressing the Power Button. As the print head preheat is turned off, it may take a few seconds for the EPIC 3000 to warm up the print head in preparation for printing.
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 EPIC 3000 is currently configured. Use this printout to compare your printer’s settings to your system’s requirements.
Epic 3000 Programmer’s Guide Programming Codes Current User store status, and the current totals are printed. If any printer errors have occurred, a hardware and software error log may also be printed. At the end of the print out are instructions on how to use configuration mode. Please read these instructions carefully, as they are not the same as Self-Test.
Configuring Your EPIC 3000 Printer Configuration Mode Overview There are two ways to configure the EPIC 3000 printer: the first is to use the manual 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 reconfigure your EPIC 3000 printer.
The program is available from TransAct Technical Support or by downloading it from the Internet – consult the section On-line Technical Support for further details.
The ASCII Code Table in Appendix B (page 252) lists ASCII, hexadecimal, and decimal equivalents. Standard Emulation The standard control codes for the EPIC 3000 Printer are extensions and subsets of the ® PcOS IBM emulation provided on other Ithaca products.
PcOS products, and should be used when the printer is placed in a new application. One optional feature in the EPIC 3000 Printer is the ability to print color graphics. Due to the complexity of color graphics, TransAct provides several drivers to integrate into your ESC/POS is a registered trademark of the Seiko Epson Corporation.
TransAct has created several tools that can be used to generate and maintain graphic images and files for print on the EPIC 3000. Information about drivers and tools are available on the TransAct web site. For additional information, contact Technical Support.
Page 33
Epic 3000 Programmer’s Guide Programming Codes ASCII IPCL Page Description equivalent code [ESC] + p<w><h> 1BH 70H none Select Minimum character Height and Width in ¼ points [ESC] 5 <n> 1BH,35H &%CA {n=0} Begin auto line feed. (n=0, end n=1) &%MA {n=1}...
Several commands can be used to control the horizontal position of characters. Many applications use space control to position fields. However, the EPIC 3000 Printer has 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 38
Programming Codes T480 Programmer’s Guide [BS] Back space ASCII [BS] Hexadecimal 08H Decimal <8> IPCL &%BS EPOS [BS] Description The [BS] command moves the print buffer one character width to the left. The pointer position cannot be moved to the left of the left margin. [BS] does not cause the buffer to be printed;...
Epic 3000 Programmer’s Guide Programming Codes [ESC] a Set Justification ASCII [ESC] a <n> Hexadecimal 1BH 61H <n> Decimal <27> <97> <n> IPCL &%JL, &%JC, &%JR EPOS [ESC] a <n> Description The [ESC] a <n> command sets the horizontal justification.
Page 40
Programming Codes T480 Programmer’s Guide Immediately after APA graphics, the command is adjusted for the difference between 72 dpi graphics and 96 dpi print. [ESC] 3 Set variable line spacing to n/216 inch ASCII [ESC] 3 <n> Hexadecimal 1BH 33H <n> Decimal <27>...
Page 41
Epic 3000 Programmer’s Guide Programming Codes [ESC] A Set variable line spacing to n/72 inch ASCII [ESC] A <n> Hexadecimal 1BH 41H <n> Decimal <27> <65> <n> IPCL none EPOS none Description The [ESC] A <n> command sets the default line spacing to n/72. Set n = 1 to 85.
Page 42
Programming Codes T480 Programmer’s Guide Function Reverse feed <n> lines at the current spacing ASCII [ESC] e <n> Hexadecimal 1BH 65H <n> Decimal <27> <101> <n> IPCL &%FB <m1> <m2> EPOS [ESC] e Description The [ESC] e <n> command prints the contents of the buffer (if any) and performs <n>...
Page 43
Epic 3000 Programmer’s Guide 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 power up configuration.
Page 44
<27> <93> IPCL &%LR EPOS none Description The [ESC] ] command performs a reverse line feed at the current line spacing. Note: The EPIC 3000 Printer can tolerate no more than 1/2 inch of reverse feed. Page 44 Rev A 100-14362...
Epic 3000 Programmer’s Guide Programming Codes Feed to Black Dot An option for the EPIC 3000 is a black dot sensor. This command is supported by a feed to black dot command. Function Feed to Black Dot ASCII [ESC][VT]<n> Hexadecimal !BH,0BH,<n>...
Programming Codes T480 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 47
Epic 3000 Programmer’s Guide 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>.
Page 48
Programming Codes T480 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.
= 10 Enter Text right to left and Rotate 270 Character Sets and Code Pages The EPIC 3000 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.
Page 51
Epic 3000 Programmer’s Guide Programming Codes The file format is one character per line with the first value being the ASCII ID and the second value being the Unicode address. The file should be something like this: 0x00 0x0000 # NULL...
Double-Byte and Multi-Byte Code Page Description Files In ASCII mode the EPIC 3000 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 53
IBM and EPOS defined new commands to select code pages, and left the old commands in effect. The EPIC 3000 Printer supports international character sets as well as code pages. To allow the most flexibility for the application programmer, both methods are extended in the EPIC 3000 Printer.
Page 54
> command selects character code page <n > <n >. The EPIC 3000 Printer supports many code pages. The following code pages are supported. Refer to Appendix A for a list of supported code page. Note: The code page field is a 16-bit field that is a function of the code page numbers <n...
Page 55
Epic 3000 Programmer’s Guide Programming Codes 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>. For example, if the currently active character set is CP 850 (multi-lingual) and 0D5H character is to be the Euro character, "1BH 5BH 43H...
Page 56
The EPIC 3000 Printer allows the map for any code page to be redefined or replaced. The define character set command allows any character or group of characters to be replaced with any other printable character.
Epic 3000 Programmer’s Guide Programming Codes 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 60
Programming Codes T480 Programmer’s Guide [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. All subsequent text, leading spaces, and trailing spaces are over-scored.
Page 62
Programming Codes T480 Programmer’s Guide [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 63
Epic 3000 Programmer’s Guide Programming Codes [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 64
Programming Codes T480 Programmer’s Guide [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...
Epic 3000 Programmer’s Guide Programming Codes Page Mode The EPIC 3000i 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.
Programming Codes T480 Programmer’s Guide 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. Auto-cutter and page mode You may embed an auto-cutter command with in a page definition. The auto-cut command may be placed anywhere in the page definition, however, it will be processed after the page is printed.
Page 67
Epic 3000 Programmer’s Guide Programming Codes Receipt or Inserted Form Initial entry location A > > > > > Note 1: This command saves the current right and left margin and sets them to the maximum values for the orientation currently defined.
Page 68
Programming Codes T480 Programmer’s Guide excluding any blank information at the bottom of the page. Function Set Print Area in Page Mode Enhanced ASCII [ESC] [SUB] S <XO ><XO ><<YO ><YO ><W ><W >< H ><H > Hexadecimal 1BH 1AH 53H <XO ><XO ><<YO...
Programming Codes T480 Programmer’s Guide Function Set Printed Area in Page Mode Enhanced ASCII [ESC] [SUB] W <XO ><XO ><<YO ><YO ><W ><W >< H ><H > Hexadecimal 1BH 1AH 57H <XO ><XO ><<YO ><YO ><W ><W >< H ><H >...
Page 71
Epic 3000 Programmer’s Guide Programming Codes Function Set Print Area in Page Mode Legacy Support Command ASCII [ESC] u <O ><O ><W ><W >< H ><H > Hexadecimal 1BH 75H <O ><O ><W ><W >< H ><H > Decimal <27><117><O ><O...
Page 72
Programming Codes T480 Programmer’s Guide Function Set Page Mode Entry Position ASCII [ESC] [SUB] A <X ><X ><Y ><Y > Hexadecimal 1BH 1AH 41H<X ><X ><Y ><Y > Decimal <27><26><65><X ><X > <Y ><Y > IPCL &%PY<XXXX><YYYY> EPOS [ESC] W Description This command sets the horizontal and vertical entry position to anywhere on the page.
Page 73
Epic 3000 Programmer’s Guide Programming Codes Function Set Page Mode Entry Position Legacy Support ASCII [ESC] o <X ><X ><Y ><Y ><F> Hexadecimal 1BH 6FH <X ><X ><Y ><Y ><F> Decimal <27><111><X ><X > <Y ><Y ><F> IPCL None EPOS...
Epson emulation. The EPIC 3000 Printer always prints in one of the native resolutions of 104 x 96, 208 x 96, 104 x 192, or 208 x 192 dpi. To provide compatibility with the standard IBM APA resolutions, the printer internally modifies the graphics to print as expected.
Page 76
Programming Codes T480 Programmer’s Guide 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> 60 dpi Full speed 8-bit slices...
The EPIC 3000 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 EPIC 3000 Printer only supports two colors (black and white), the horizontal graphic command interface gives color or gray scale support for printer graphics.
Programming Codes T480 Programmer’s Guide 254 for difference compression 255 for same as previous scan line data <data> = the data bytes that define the graphics to be printed. [ESC] * Set horizontal graphic mode ASCII [ESC] * <m> <0> <0> Hexadecimal 1BH 2AH <m>...
Page 79
Epic 3000 Programmer’s Guide Programming Codes through six indicate how many bits are represented as a one or zero. A 34 Hex (34H) represents 34H bits set to zero. A 97H represents 17H bits set to one. [ESC] h <1> <5> <1> <34H> <97H> <8fH> <09H>...
[ESC][FS]p command or saved in the file system with and [ESC][FS]S command. Note: A Bitmap graphic file may also be written to the EPIC 3000’s file system using the file system commands. It can then be printed by the [ESC][FS]P command.
Page 81
3 = Twice the height and width. The intent of this command is to allow a bitmap file to be loaded into the EPIC 3000 and printed scaled up to 2 to 1. Use the [ESC] [FS] <Bitmap file data> command to load the bitmap image and the [ESC][FS] p to print it.
User Store (Graphic Save) The EPIC 3000 Printer maintains a 16K (16384 bytes) section of flash memory and up to 192K of extended flash memory to save user information. The information can be either macros or user-defined characters. These groups of data are indexed by name, and may be called up at any time after they are stored.
Epic 3000 Programmer’s Guide Programming Codes Defining Macros Macros can be defined two ways. The first is by using the begin and end named macro commands. These commands start the recording process and automatically save the macro when it is complete. The macro data is not processed, as it is sent to the printer.
Page 84
Programming Codes T480 Programmer’s Guide Function Load item from user store ASCII [ESC] [US] l <Name..> <0> If the item referenced is a user-defined character set, it is loaded into the current definition. If it is a macro, it is loaded into the macro buffer. It is not processed or printed.
Epic 3000 Programmer’s Guide Programming Codes User-Store Commands Function Begin named macro record ASCII [ESC] [US] b <Name..> <0> Hexadecimal 1BH 1FH 62H Decimal <27> <31> <98> IPCL &%UB <Name..> <0> EPOS none Description The [ESC] [US] b <Name..> <0> command erases the current macro, initializes the macro buffer structure, and redirects the following data to the macro buffer.
Page 86
Programming Codes T480 Programmer’s Guide IPCL &%UC <Name..><0> EPOS [GS] 6<Name..> <0> is from one to 15 characters and must be null terminated. Description The [ESC] [US] c <Name..> <0> command saves the current user- defined character structure in the flash user-save storage area. It uses the<Name..> field as a reference.
Page 87
Epic 3000 Programmer’s Guide Programming Codes Note: If a character definition is loaded at startup, it is automatically made active. The terminating <0> may be replaced with an & or redefined. See [ESC] [EM]T<n> or &%UT<n> on page88. Function Delete item from user store ASCII [ESC] [US] d <Name..>...
Programming Codes T480 Programmer’s Guide 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. The NUL must be present. The intention of the command is to aid in macro development.
Page 89
Epic 3000 Programmer’s Guide Programming Codes simply stops saving information when it is full. As the buffer fills, the input data is printed normally. The effect of the macro start command is to clear the buffer and to start to save the input data.
Page 90
Programming Codes T480 Programmer’s Guide [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>...
Programming Codes Bar Codes The EPIC 3000 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. The host need only send the printer the information to be bar coded and a graphic is generated by the printer.
Page 92
Programming Codes T480 Programmer’s Guide Where n = Interleaved 2 of 5 Numeric (0-9) only; must be even number of digits Code 39 26 uppercase letters (A-Z); 10 digits (0-9) Code 128 Three sets of 106 different characters UPC A Numeric (0-9) only;...
Epic 3000 Programmer’s Guide Programming Codes “ RSS Expanded “ RSS Stacked No HRI will be printed “ RSS Stacked Omni No HRI will be printed “ RSS Expanded Stacked No HRI will be printed Note1: You may print barcodes in page mode. If you rotate these barcodes 90...
Hexadecimal 1BH 62H <1> ... 03H Decimal <27> <98> <1> ... <3> [ESC] b <1> TransAct[NUL] Note: Case conversion to upper case. Figure 5 Code 39 Example Code 39 is an alphanumeric bar code. It is a discrete, self-checking, variable-length code.
The start code defines the code set, Code A, B, or C that will be used to generate the barcode. The EPIC 3000 allows the code set to be specified, or it can be select by the printer based on the information in the data field.
Page 97
Epic 3000 Programmer’s Guide Programming Codes Code 128 Encoding Accutherm Manual < < Encoding Code Stick Code Decimal > > Value Value Code A Code Code Value Space Spac " " & & 100-14362 Rev A Page 97...
Epic 3000 Programmer’s Guide Programming Codes Code 128 Auto Encoding To have the printer selected code set and automatically generate an optimal barcode, the value of Code should be the length. Function Code 128 Automatic Encoding ASCII [ESC] b <2> <Length>{information} Hexadecimal 1BH 62H <2>...
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. The data field must be an even number of characters. If an odd data field is sent to the EPIC 3000 Printer , it will be zero padded.
Epic 3000 Programmer’s Guide Programming Codes UPC E UPC E is a zero suppression version of UPC. To allow the use of UPC barcodes on smaller packages where a full 12-digit barcode may not fit, a 'zero-compressed' version of UPC was called UPC-E. This barcode differs from UPC-A in that it only a 6-digit code is used, it does not use middle guard bars, and the end bit pattern is altered.
Programming Codes T480 Programmer’s Guide EAN-13 EAN-13 is a fixed-length, numeric, continuous code that employs four element widths. The printer supports EAN-13, which is a superset of UPC that encodes 12 digits. Typically, the format starts with a number set digit, which defines how the next six digits are encoded.
Epic 3000 Programmer’s Guide Programming Codes EAN-8 EAN-8 is a fixed-length, numeric, continuous code that employs four element widths. The printer supports EAN-8, which is a superset of UPC that encodes seven digits. The printer prints an EAN-8 bar code with the seven digits sent to it and generates the check digit.
Figure 19 ITF-14 Example NOTE: ITF-14 is generally printed with a surrounding box, however it is not mandatory and the EPIC 3000 does not add it. EAN 2 and EAN 5 Addenda barcodes EAN2 and EAN 5 Addenda barcodes are used to add additional information to several barcodes.
Epic 3000 Programmer’s Guide Programming Codes Code 93 Code 93 is a variable-length, alphanumeric bar code. The complete data field is printed by the printer. Due to space limitations, only 10 or 11 characters can be printed. Function Code 93 ASCII [ESC] b <7>...
When specifying AI fields with check digits the check digit must be passed to the EPIC 3000 printer. In some cases it is used and in others it is removed and replaced by the reader. The EPIC 3000 will make some attempt to verify the format, however only critical data that would prevent encoding the data is actually checked by the printer.
Epic 3000 Programmer’s Guide Programming Codes GS1-Databar-14 (GS1-Databar-Omni-directional) RSS-14 (GS-1 DataBar Omni-directional) encodes the full 14 digit EAN.UCC item identification in a symbol that can be omni-directionally read. For example: Figure 23 RSS-14 symbol representing (01)20012345678909 Where the leading (01) is the implied application identifier and is not encoded in the symbol.
13 times the X dimension, however, the height of the barcodes can be set by the configuration commands. The GS1-Databar truncated version printed by the EPIC 3000 is simply ½ the height of the standard GS-1 DataBar symbol.
Epic 3000 Programmer’s Guide Programming Codes GS1-Databar-14 Stacked Omni-directional is spececfied to be printer with a greater height than the GS1-Databar-14 Stacked by a factor of 3. As the height of the symbol may be specified by command, the GS1-Databar-14 Stacked Omni-directional symbol will be printed 3 times the GS1-Databar-14 Stacked symbol.
Note: It is possible to define an RSS Expanded barcode that will not fit in the print zone of the EPIC 3000 printer. If this occurs, the printer will attempt to scale the barcode to fit. If the scaling fails, the barcode may be unreadable.
Function 1 Symbol Character (FNC1) in Code 128 Symbols in the first symbol character position following the Start Character has been reserved exclusively for the GS1 System. The EPIC 3000 printer provides a GS-1 coded input to the barcode and encodes all the EAN-128 requirements into the data. Function...
T480 Programmer’s Guide 2D Barcodes The EPIC 3000 supports a number of 2D and Stacked barcodes. The terms stacked barcode or multi-row barcode code are more accurately applied to those barcodes made up of a series of one-dimensional barcodes. The term Matrix code generally applies to 2-D codes that code the data based on the position of black spots within a matrix.
Epic 3000 Programmer’s Guide Programming Codes Code 16K The Code 16K bar code is a multiple-row bar code that can encode the full ASCII character set below ASCII 128. It uses existing UPC and Code 128 character set patterns. Up to 77 full ASCII characters or 154 numeric characters can be encoded.
PDF417 symbol. The PDF417 barcode is usually printed at an X to Y ratio of 1:2 to 1:5. The EPIC 3000 printer defaults to a 1:ratio. By lowering the ratio, a significant amount of space can be saved; however, some scanners cannot read X to Y ratios of less than 1:3.
Epic 3000 Programmer’s Guide Programming Codes Truncated PDF 417 Truncated PDF417 is two-dimensional (2D), multi-row barcode, derived from PDF417. A truncated PDF417 symbol uses less area than the normal PDF417 barcode as the right hand side of the symbol is removed or truncated. This option should be used where damage to the barcode is unlikely as it is not as easily read ad normal PDF417.
Hexadecimal 1BH 62H <34> {information}[NUL] Decimal <27> <98> <34>{information}[NUL] [ESC]b<32>TransAct Technologies Inc.[NUL] Figure 36 Micro PDF 417 Example Note: Micro PDF 417 shares a control table with PDF417. PDF417 allows the columns to be set from 1 to 30, however Micro PDF417 only allows 1- 4.
2 or more different encoding sequences. The ISO standard is followed by the EPIC 3000 however it is possible that other generators will generate different barcode patterns that are equivalent.
There are Data Matrix control commands that will allow some control over how the barcode is printed. [ESC] b <28>TransAct Technologies Inc. 20 Bomax Drive, Ithaca New York[NUL] Figure 37 Data Matrix Example Testing Data Matrix barcodes There is a special reference symbol that is useful for control testing.
In Auto Mode Modes 2,3 or 4 are used. Mode 1 – is obsolete and not supported by the EPIC 3000 Mode 2 - Formatted data containing a structured carrier message with a 10 digit numeric postal code and 3 digit country and service code.
> … <d Decimal <27> <98> <15><nL><nH><d > [ESC] b <16>[GS]148501200[GS]231[GS]3[GS]TransAct Technologies Inc. 20 Bomax Drive, Ithaca New York[NUL] Figure 40 Data Maxicode Example Note: The normal Select barcode Width and Select Barcode height commands do not affect Maxicode barcodes. The rules governing how the barcode is printed do not allow variations in the aspect ratios.
Page 121
Where GS (ASCII 29) is used to separate fields in a message; RS (ASCII 30) is used to separate format types and EOT (ASCII 4) is the end of transmission characters. Note: The EPIC 3000 only enforces the format through the GS after the class of service field. The remainder of the message is not validated and is simply encoded by the printer.
Binary (8 bits) Max. 2,953 bytes Kanji/Kana Max. 1,817 characters NOTE: At this time Kanji and Katakana are not supported by the EPIC 3000 QR codes use the Reed–Solomon error correction and the error correction capacity may be adjusted. Error correction Level L 7% of code words can be restored.
> … <d Decimal <27> <98> <25><nL><nH><d > [ESC] b <26>TransAct Technologies Inc. 20 Bomax Drive, Ithaca New York[NUL] Figure 43 Data QRCode Example Note: The normal Select barcode Width and Select Barcode height commands do not affect QRCode barcodes. The rules governing how the barcode is printed do not allow variations in the aspect ratios.
Note: Lower case alpha is processed as binary data. URL information works best in upper case. Note: At this time Kanji and Katakana are not supported by the EPIC 3000 Micro QRCode is controlled by the same commands as QR code. Error correction level H is not available as the number of correction characters would exceed the input length.
The full core supports sizes up to 151x151, which can encode 3832 digits, 3067 letters, or 1914 bytes of data. The level of Reed–Solomon error correction is used for Aztec and the EPIC 3000 is configurable, to 10%, 23%, 36% or 50% of the data region. The recommended level is 23%.
> … <d Decimal <27> <98> <29><nL><nH><d > [ESC] b <30>TransAct Technologies Inc. 20 Bomax Drive, Ithaca New York[NUL] Figure 46 Data Aztec Example Note: The normal Select barcode Width and Select Barcode height commands do not affect Aztec barcodes. The rules governing how the barcode is printed do not allow variations in the aspect ratios.
Epic 3000 Programmer’s Guide Programming Codes Code One Code One was invented in 1992 and is the earliest public domain matrix barcode. It uses a finder pattern of horizontal and vertical bars crossing the middle of the symbol. The symbol can encode ASCII data, error correction data, function characters, and binary encoded data.
Programming Codes T480 Programmer’s Guide Composite Barcodes GS1 Composite barcode consists of a linear component, that encodes the item's primary data and an adjacent 2D composite component, that encodes supplementary data. The linear component will be EAN GS1-128, EAN-8, EAN-13, UPC-A, UPC-E or any barcode in the Databar group.
Epic 3000 Programmer’s Guide Programming Codes Composite data Composite data generally follows the GS-1 standards, however, the GS-1 field processing and data compaction may be controlled by the setting the GS-1 options for Composite barcodes. Function Composite data ASCII [ESC] b @ {information} [NUL]...
Programming Codes T480 Programmer’s Guide UPC E Composite UPC E Composite uses a standard zero suppressed 11 digit UPC E code with composite data and optional Addenda data. Function UPC E Composite ASCII [ESC] b B {information} [NUL] Hexadecimal 1BH 62H 42H {information} [NUL] Decimal <27>...
Epic 3000 Programmer’s Guide Programming Codes EAN GS1-128 Composite GS1-128 will process a GS1-128 barcode With an CC-C composite component. Function GS1-128 Composite ASCII [ESC] b D {information} [NUL] Hexadecimal 1BH 62H 44H {information} [NUL] Decimal <27> <98> <68>{information} [NUL] [ESC] b @ [01]12345678901234[11]100909[30]123456[NUL] [ESC] b <68>...
Programming Codes T480 Programmer’s Guide GS1-Databar-Truncated Composite GS1- Databar truncated composite will process a GS1- Databar truncated barcode With an CC-A, or CC-B composite component. Function GS1-Databar Truncated 14 Composite ASCII [ESC] b F {information} [NUL] Hexadecimal 1BH 62H 46H {information} [NUL] Decimal <27>...
Epic 3000 Programmer’s Guide Programming Codes GS1-Databar-Expanded Composite GS1- Databar Expanded composite will process a GS1- Databar Expanded barcode With an CC-A, or CC-B composite component. Function GS1-Databar Expanded Composite ASCII [ESC] b H {information} [NUL] Hexadecimal 1BH 62H 48H {information} [NUL] Decimal <27>...
Programming Codes T480 Programmer’s Guide GS1-Databar-Stacked Omni Composite GS1- Databar Stacked Omni composite will process a GS1- Databar Stacked barcode With an CC-A, or CC-B composite component. Function GS1-Databar Stacked Omni Composite ASCII [ESC] b J {information} [NUL] Hexadecimal 1BH 62H 4AH {information} [NUL] Decimal <27>...
For example (401)6773 can be read as "Consignment Number 6773" where the AI (401) signifies that the data is a consignment number. Note that for the EPIC 3000 AI data is entered using [square] brackets . This allows rounded brackets to be included in the data which as allowed by the specification.
Programming Codes T480 Programmer’s Guide Note: The printer will encode the Value and insert latch sequences based on the ASCII Input. Refer to the ISO/IEC 24724 specification for more information. Table 7 RSS Characteristics Summary GS-1 AI definitions Note: This is not a complete list and is not intended to replace the GS1 General Specification.
Page 137
Epic 3000 Programmer’s Guide Programming Codes DISASSEMBLY COUNTRY – FULL Country Covering full Process Chain n3+n3 (FNC1) PROCESS 310n Net weight, kilograms (Variable Measure n4+n6 NET WEIGHT (kg) Trade Item) 311n Length of first dimension, meters n4+n6 LENGTH (m) (Variable Measure Trade Item)
Page 138
Programming Codes T480 Programmer’s Guide 348n Depth, thickness, height, or third n4+n6 HEIGHT (f), log dimension 349n Depth, thickness, height, or third n4+n6 HEIGHT (y), log dimension 350n Area, square inches (Variable Measure n4+n6 AREA (i Trade Item) 351n Area, square feet (Variable Measure n4+n6 AREA (f Trade Item)
Page 139
Note: It is beyond the scope of this document to define all the AI fields, there meaning, requirements and restrictions. The EPIC 3000 will do minimal validation of the AI fields to assure that the barcode can be generated. It will not assure that the barcode meets the GS-1 standard.
Programming Codes T480 Programmer’s Guide Mandatory AI Associations Some AI fields must be associated with other fields. For example a date field must be associated with some item so cannot be used alone. Definition 01 or 02 Identification of a 30, 3nnn1 Mandatory association with variable measure with N1 = 9...
Page 141
Note: It is beyond the scope of this document to define all the AI fields, there meaning, requirements and restrictions. The EPIC 3000 will do minimal validation of the AI fields to assure that the barcode can be generated. It will not assure that the barcode meets the GS-1 standard.
Note: It is beyond the scope of this document to define all the AI fields, there meaning, requirements and restrictions. The EPIC 3000 will do minimal validation of the AI fields to assure that the barcode can be generated. It will not assure that the barcode meets the GS-1 standard.
Epic 3000 Programmer’s Guide Programming Codes GS-1 AI fields with a Check Digit Refer to the GS-1 General specification for the method used to calculate the check digit. In some cases the check digit is not encoded into the barcode. However, the check digit is always shown in the human readable interpretation and transmitted by the decoder even though it is not explicitly encoded in RSS-14 and RSS Limited symbols.
Programming Codes T480 Programmer’s Guide Controlling Barcodes Unified Commands To making control of linear and two dimensional barcode more consistent, all barcode control commands will follow a similar format. The Function Control bar code ASCII [ESC] [EM] <b> <f> <v> Hexadecimal 1BH 19H <b>...
Page 145
The check digit in AI fields (00), (01), (02), (253), (402), (410) trough (415), (8003) and (8018) may be replaced with a ‘*’ and the EPIC 3000 will replace the ‘*’ with a check digit for that field calculated as defined in the GS1 general specification.
Programming Codes T480 Programmer’s Guide Barcode Control Summery Chart Barcode Type Format Parameter <b> <f> Barcode K X Y C R E Q S M Interleaved 2 of 5 Code 39 Code 128 UPC A UPC E EAN-13 EAN-8 Code 93 Code 93 Codabar Data Bar...
Epic 3000 Programmer’s Guide Programming Codes PDF417 Print Options Function PDF 417 bar code control ASCII [ESC] [EM] E <f> <v> Hexadecimal 1BH 19H 45H <f> <v> Decimal <27> <25> <69><f> <v> IPCL None Description This command alters the way PDF 417 barcodes are generated and printed.
Page 148
Programming Codes T480 Programmer’s Guide Error correcting levels are selected using one of two methods. The first is a fixed level. Level Code Word Level 0 Level 1 Level 2 Level 3 Level 4 Level 5 Level 6 Level 7 Level 8 The second way is to determine correction level based on a percent of the encoded data in the barcode where the value v is a percent between...
Page 149
Epic 3000 Programmer’s Guide Programming Codes f = 0 Medium, f=1 Larger, f- 2 Smaller (Note: Fonts may be redefined by using the change legacy font command.) 100-14362 Rev A Page 149...
Programming Codes T480 Programmer’s Guide Data Matrix Print Options Function Data Matrix bar code control ASCII [ESC] [EM] d <f> <v> Hexadecimal 1BH 19H 64H <f> <v> Decimal <27> <25> <100><f> <v> IPCL None Description This command alters the way Data Matrix barcodes are generated and printed.
Programming Codes T480 Programmer’s Guide Code One Print Options Function Code One code control ASCII [ESC] [EM] 1 <f> <v> Hexadecimal 1BH 19H 31H <f> <v> Decimal <27> <25> <49><f> <v> IPCL None Description This command alters the way Aztec barcodes are generated and printed. Where f = Feature to control and v = the value of the feature.
Epic 3000 Programmer’s Guide Programming Codes Legacy Commands Function Set bar code height ASCII [ESC] [EM] B <n> Hexadecimal 1BH 19H 42H <n> Decimal <27> <25> <66> <n> IPCL &%BH <m> Description The [ESC] [EM] B <n> command sets the bar code height where <n>*24 are the number dots.
Page 160
Programming Codes T480 Programmer’s Guide ------01 Center ------10 Right --xx---- HRI characters --00---- Not printed --01---- Printed above the bar code --10---- Printed below the bar code --11---- Printed above and below the bar code -x------ Vertical print mode. (Page mode may work better) -0------ Bar code printed in horizontal...
Epic 3000 Programmer’s Guide Programming Codes Identifying Barcode Processing Errors Barcodes that are not entered correctly in most cases will not print. It can be difficult at times to identify why. To help identify the problem there is a command that will return the last barcode error in the form of a 16 bit error ID.
Page 162
Programming Codes T480 Programmer’s Guide Data does not start with an AI Malformed AI in input data (brackets don't match) Found nested brackets in input data Invalid AI in input data (AI too long) Invalid AI in input data (AI too short) Invalid AI in input data (non-numeric characters in AI) Invalid data length for AI Invalid AI value...
Epic 3000 Programmer’s Guide Programming Codes Miscellaneous Printer 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 T480 Programmer’s Guide [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
Epic 3000 Programmer’s Guide Programming Codes [ESC] v Perform Auto Cut ASCII [ESC] v Hexadecimal 1BH 76H <n> Decimal <27><118> IPCL &%FC &%PC EPOS [ESC] i or [ESC] m Description The [ESC] v command operated the auto cutter. Note: The auto cutter is optional. If the auto cutter is not installed this command will be ignored.
Page 166
Programming Codes T480 Programmer’s Guide [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. If the audio alert is off, it does not function.
Page 167
Epic 3000 Programmer’s Guide Programming Codes [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> 0 n 255 Range Description The [ESC] p 4 <n> command selects the sensors that tell the printer to stop printing.
Page 168
Paper roll end sensor disabled <8> Paper roll end sensor enabled Undefined Table 14 Paper Sensor Commands NOTE: Paper low is not supported by the EPIC 3000 [ESC] y Set control feature commands ASCII [ESC] y <n> Hexadecimal 1BH 79H <n>...
Page 169
Epic 3000 Programmer’s Guide Programming Codes Description The [ESC] y <n> command enables and disables command set features. It is possible that the IPCL commands will interfere with print data. If this occurs, the IPCL can be disabled with an [ESC] y <4> command.
Printer Status Status Inquire The EPIC 3000 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.
Epic 3000 Programmer’s Guide Programming Codes The printer always accepts IEEE 1284 reverse-channel requests but does not accept inquire commands when off-line. It is possible to obtain status when off-line by placing the printer in dynamic response mode before the printer goes off-line. The IEEE 1284 reverse channel responds to status changes even when the printer is off-line.
Page 172
Programming Codes T480 Programmer’s Guide Response ACK <9> (06H 09H) The buffer is empty. NAK <9> (15H 09H) The buffer is not empty. [ENQ] <10> Request printer reset ASCII [ENQ] <10> Hexadecimal 05H 0AH Decimal <5> <10> Function Reset printer Response Serial Parallel...
Page 173
Epic 3000 Programmer’s Guide Programming Codes NAK <5> (15H 0BH) Printer has not power cycled since the last [ENQ] <11> Description The first time after a reset, the command returns [ACK] <11>, after that the command returns [NAK] <11>. The command allows the application to determine if the printer has been power cycled and needs to be reinitialized.
Page 174
Programming Codes T480 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 175
Epic 3000 Programmer’s Guide 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 > <r Where <20> is the echo of command ID.
Page 176
[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:TransAct.; CMD:M9100CL,IPCL; CLS:PRINTER; MDL:M9000 PcOS;...
Page 177
Epic 3000 Programmer’s Guide 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.
Page 178
Programming Codes T480 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 179
Epic 3000 Programmer’s Guide Programming Codes Where <25> is the echo of command ID. <n> is the number of return bytes + 40 (28H) (to prevent confusion with XON/XOFF). <r >: MSB of size in K bytes. <r >: LSB of size in K bytes.
Page 180
Programming Codes T480 Programmer’s Guide [ENQ] <29> Inquire Jam Status ASCII [ENQ] <29> Hexadecimal 05H 1DH Decimal <5> <29> Function The [ENQ] <29> command reports Jam and Transport status. Response [ACK] <29> <41><n> Where <29> Is the echo of command <n>...
Page 181
Epic 3000 Programmer’s Guide Programming Codes [ENQ] <33> Inquire Paper Size. ASCII [ENQ] <33> Hexadecimal 05H 21H Decimal <5> <33> Function The [ENQ] <33> command Paper Size Status. Response [ACK] <33> <41> <n> Where <33> Is the echo of command <41>...
Page 182
Programming Codes T480 Programmer’s Guide [ENQ] <35> Inquire USB Watch Dog Resets. ASCII [ENQ] <35> Hexadecimal 05H 23H Decimal <5> <35> Function The [ENQ] <35> command returns the number of USB Watch dog resets and then resets the count to zero. Response [ACK] <35>...
Page 183
Epic 3000 Programmer’s Guide Programming Codes [ENQ] <38> Inquire currently loaded firmware file name ASCII [ENQ] <38> Hexadecimal 05H 26H Decimal <5> <38> Function The [ENQ] <38> command returns the file name of the currently loaded firmware. Response ACK <38> <Len+40> Firmware Id String<0>...
Page 184
Programming Codes T480 Programmer’s Guide [ENQ] <40> Inquire Current Firmware CRC ASCII [ENQ] <40> Hexadecimal 05H 28H Decimal <5> <40> Function The [ENQ] <40> command returns current firmware CRC. Response [NAK] <31> <CRC > <CRC > Not calculated yet [ACK] <31> <CRC >...
Page 185
Epic 3000 Programmer’s Guide Programming Codes 0x08 Not yet done [ESC] [EM]P<n> Activate Periodic Status Back ASCII [ESC] [EM] P<n> Hexadecimal 1BH 19H 50H <n> Decimal <27> <25> <80><n> IPCL None EPOS None Description This command activates the periodic status back feature. It will automatically return an [ENQ]<20>...
T90. The following is a summary of key differences. Page Mode The page mode in the EPIC 3000 operates in the same way as the TM-T88 and the TM- T90, however, the page size can be larger if the ESC/POS emulation is selected.
EPIC 3000 Graphics Printing Graphics The EPIC 3000 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. It makes a single unidirectional 60 dpi print pass.
3. Print the graphic to a file using a generic, IBM, graphic, 9-pin driver. The standard IBM resolutions are 240 x 216 dpi, 120 x 72 dpi, and 60 x 72 dpi. The EPIC 3000 Printer supports all three resolutions. For good resolution with reasonable speed, use 120 x 72 dpi.
If the EPIC 3000 printer is configured with a black color and a highlight color, there is no point in the printers mixing the highlight color with black. If however, the EPIC 3000 printer is configured with two colors other than black, the printer attempts to mix the colors to generate black.
T480 Programmer’s Guide T480 Unicode and Fonts ® Optionally, process the color image with the Ithaca color image processor in the PJColor program. The program can print the image or generate a printable file. Figure 64 Receipt with graphics As with all graphics, the data path to the printer must be eight bits. Seven-bit protocols do not work.
You can then use this file to setup any number of printers with the same graphic. If you are using a windows print driver (other than the Transact EPIC 3000 driver) to support your printer, you will not be able to send color graphics to the printer through the print driver.
8) This file can be sent to the printer and the graphic will be printed. Store Graphics in the printer: PJColor can store a graphic in the EPIC 3000 Printer or generate a file that will store a graphic in the printer.
Page 194
T480 Unicode and Fonts T480 Programmer’s Guide 3) This file contains an "erase any previous graphic with the same name" command, "a save new graphic with this name" command and the graphics information. 4) This file can then be sent to the printer and the graphic will be saved in the printer. Note: If the target printer does not have enough room for the graphic information to be stored, the graphic will not be stored.
T480 Programmer’s Guide T480 Unicode and Fonts 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.
T480 Unicode and Fonts T480 Programmer’s Guide 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 ...
Page 197
Delete item from user store IPCL &%UD <Name..>& Description The &%UD <Name..>&command removes an item from user store and frees up space. If the item does not exist, the EPIC 3000 ignores the command. &%UFALL& Flush information from user store IPCL &%UFALL&...
Page 198
T480 Unicode and Fonts T480 Programmer’s Guide &%UQ& Report on user store IPCL &%UQ& Description The &%UQ& command prints a status report. The intention of the command is to aid in universal graphic development. &%UT<n> Redefine User Store Termination Character IPCL &%UT<n>...
Asian characters, where changes to pixel layout actually risk changing character meanings. To take full advantage of scalable fonts, the EPIC 3000 supports additional commands and features, including: 1) Character size selection by points...
T480 Unicode and Fonts T480 Programmer’s Guide Character Definition True Type and Stroke fonts are designed as a complete font with character cell size and character position in the cell based on the overall font design. Typical the characters are defined as vectors and stored as coordinates on a character cell grid.
14 to 16 CPI. The largest font is 14 x 24 dot-like font and is typically printed at pitches from 10 to 14 CPI. The EPIC 3000 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 Characters are dot-like because they are not guaranteed to be exactly at an exact dot equivalent.
Selecting character size by points. In addition to the legacy or classic method of character size selection, the EPIC 3000 allows selection by point size. Point sizes from 4 to 72 points may be selected for both the horizontal and vertical axes.
The EPIC 3000 printer does not handle multiple diacritical marks on the same character. The printer will not shift the second diacritical mark to prevent it from interfering with the previous.
T480 Unicode and Fonts T480 Programmer’s Guide To provide this flexibility, the EPIC 3000 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.
As another alternative, the printer may be ordered with a variable- pitch font, which will allow variable-pitch printing. Font Storage The EPIC 3000 supports a Flash file system used to store fonts, custom graphic and custom macros. A file system interface is provided for this system, where the host 100-14362...
Page 206
3000 printer as a standard font file. These files are typically not visible to the user, however; TransAct Technologies provides a support tool that will allow the user to load their own font directly from Windows and change the way fonts are printed. It is also possible for the host application to load fonts into the printer.
T480 Programmer’s Guide T480 Unicode and Fonts Font Control Commands Function Select Font ASCII [ESC] + 3 <ID> Hexadecimal 1BH 2BH 31H Decimal <27> <43> <51> Description The [ESC] + 3 command selects the font for printing. This command is used to select a previously loaded font based on its alias.
Page 208
T480 Unicode and Fonts T480 Programmer’s Guide 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. The following table converts dots to CPI (Characters Per Inch) points and ¼ points and is useful in calculating point size settings.
T480 Programmer’s Guide T480 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 210
T480 Unicode and Fonts T480 Programmer’s Guide The following table lists the commands and how they interact. Command Zero Character Character Cell Width Pseudo Fixed width height pitch flag [ESC] + P, Width 0 Same as From From Font No effect [ESC] + p Height command...
Page 211
T480 Programmer’s Guide T480 Unicode and Fonts Function Set minimum character height and width in ¼ points. ASCII [ESC] + p <w><h> Hexadecimal 1BH 2BH 70H Decimal <27> <43> <112> w = 0, 16 – 255 Range h = 16 - 255 The [ESC] + p command will set the minimum character width or height based on “w”...
Page 212
T480 Unicode and Fonts T480 Programmer’s Guide Function Set Character spacing in ¼ points. ASCII [ESC] + i <d> Hexadecimal 1BH 2BH 69H Decimal <27> <43> <105> d = 0, 16 – 255 Range The [ESC] + i command will set the character spacing in points, where ¼ point is defined as 1/288 of an inch.
Page 213
T480 Programmer’s Guide T480 Unicode and Fonts Function Set Character spacing in points with adjustment. ASCII [ESC] + j <d> Hexadecimal 1BH 2BH 6AH Decimal <27> <43> <106> d = 0, 16 – 255 Range The [ESC] + j command will set the character spacing in points, where ¼ point is defined as 1/288 of an inch.
Page 214
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 EPIC 3000 using the GB18030 font supplied by TransAct Technologies produces the best characters with a brush size of about 100.
Page 215
T480 Programmer’s Guide T480 Unicode and Fonts Function Redefine Legacy Font definitions. ASCII [ESC] + r < ID > < FontID ><Horz><Vert><Spacing> Hexadecimal 1BH 2BH 74H Decimal <27> <43> <116> Description The [ESC] + r command will allow the legacy fonts defined in the POR.INI file to be dynamically redefined.
Page 216
T480 Unicode and Fonts T480 Programmer’s Guide [ESC] [ P Set character pitch (Legacy mode command) PcOS 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>...
Version 5.0 of the Unicode standard was published and generally accepted. The EPIC 3000 follows this standard for character placement and encoding and Unicode addresses from 0 to 1114111 (0x00 to 0x010FFFF) are supported by the EPIC 3000 Printer. Note: If a custom font is used that is not in Unicode order, the order of the font will be used as if it were in Unicode order.
Extended Printer Control T480 Programmer’s Guide T480 UTF-16 UTF-16 is the most straightforward way to access characters above 255. UTF-16 essentially sends two 8-bit bytes that form a 16-bit address to access the desired character. Basic UTF-16 does not define the byte order. If you wish to use UTF-16 and allow the printer to determine the byte order, you must send the byte order mark (0xFEFF) before you send any characters.
8-bit values. UTF-8TXT is probably the easiest mode to use. It allows normal 8 bit commands and graphics while still supporting the full Unicode character encoding range. Typically EPIC 3000 Printers are shipped set to this mode. Scalar Value...
Extended Printer Control T480 Programmer’s Guide T480 1111 1010 0100001 - Sections 1110 1111 101000 010001 - 3 (8bit) Binary numbers 0xEF 0xA8 0x91 - 3 Hex Bytes to Output Unicode Encoding Control Commands Function Initiate Unicode UTF-32BE Encoding ASCII [ESC] + h Hexadecimal 1BH 2BH 68H Decimal...
Page 221
T480 Programmer’s Guide T480 Extended Printer Control Description The [ESC] + H command will put the printer into UTF-16BE character encoding mode of operation. If you wish to access characters above 255, you must select a Unicode encoding such as UTF-16BE. UTF-16 is the most straightforward way to access characters above 255, sending two 8-bit bytes that form a 16-bit address to access the desired character.
Page 223
T480 Programmer’s Guide T480 Extended Printer Control Function Initiate Unicode UTF-8 Text only Encoding (MBCS) ASCII [ESC] + T Hexadecimal 1BH 2BH 54H Decimal <27> <43> <84> Description The [ESC] + T command will put the printer into UTF-8 Text only character encoding mode of operation.
Legacy Printer Features that Have Changed Because this product employs outline and stroke font character generation, support for several legacy features are changed from standard EPIC 3000 version. Dynamic code page definition Dynamic code page definition is still supported when in ASCII mode, however Unicode is now used for the source character locations.
EPIC 3000 and provide a drag and drop interface to the file system. The file system in the EPIC 3000 is partitioned into two sections, one for internal system use by the printer, and one for user information.
Page 226
Extended Printer Control T480 Programmer’s Guide T480 File Extensions are any three characters. The following are predefined and reserved for internal use. Extension Partition Definition 0= System 1= User .udf Undefined macro type .mac Command Macro .img Graphic image. (Internal format) .bgp Bitmapped internal graphic .chr...
Page 227
T480 Programmer’s Guide T480 Extended Printer Control S <B ><B ><B ><B > 15-8 23-16 31-24 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.
Page 228
Extended Printer Control T480 Programmer’s Guide T480 Function Return the last file command status. 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.
Page 229
T480 Programmer’s Guide T480 Extended Printer Control Function Query File Status. ASCII [ESC] [RS] q Hexadecimal 1BH 1EH 71H Decimal <27> <30> <113> Description The [ESC] [RS]q command will return the CRC and length of the currently open file. Return File open File not open Length High...
Page 230
Extended Printer Control T480 Programmer’s Guide T480 Note: The system partition cannot be erased using this command. The system partition can only be erased in Maintenance mode. Function De-fragment the file system. ASCII [ESC] [RS] F Hexadecimal 1BH 1EH 46H Decimal <27>...
T480 Programmer’s Guide T480 Extended Printer Control returns a fail to verify status. Note: if the Verify.cfg file is not present, the verify command will return VB and a 0 CRC. POR.INI file The POR.INI file is used to control how fonts are encoded, named, identified and linked, as well as allowing how the font to be printed is controlled.
Page 232
Extended Printer Control T480 Programmer’s Guide T480 LinkFont4 = TactGB18030.ccc ;From 1 to 99 fonts may be defined Font1 = TactMOD.ttf Font2 = TactWGL_M.ttf Font3 = TactGB18030.ccc Font4 = TactOCR.ttf Font5 = TactWGL_V.ttf ;The brush size effects only stroke fonts. Brush = 100 [legacy] ;EmulationMode = Font,Horizontal,Vertical,Width.
Page 233
This gives a lot of control of the size. Because the EPIC 3000 printer prints discreet dots that are relatively large (from a font point of view), changes in character size will appear to jump. That is small changes in size will...
The POSFile tool provides a Windows interface to the printer and will allow fonts and configuration files to be loaded into the printer. This tool can read and write the POR.INI file, however the TransAct supplied fonts can not be read or deleted from the printer. TrueType and Compressed Stroke Fonts are supported by the EPIC 3000 Printer.
T480 Programmer’s Guide T480 Extended Printer Control EPIC 3000 Extended Printer Control The EPIC 3000 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 EPIC 3000 Internal Logs The printer maintains a log of printer activity.
Page 236
Extended Printer Control T480 Programmer’s Guide T480 Function Read and Return Totals ASCII [ESC] ~ T <n> Hexadecimal 1BH 7EH 54H <n> Decimal <27> <126> <84> <n> Description This command returns the current statistics for parameter n. The value returned will be ~T<n> with the next 4 bytes being an unsigned integer. For example: [ESC]~T<1>...
Page 237
Communications T480 Programmer’s Guide 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. It is ®...
T480 Programmer’s Guide EPIC 3000 Green and Sleep Power Control The EPIC 3000 Printer has a remote power control command that instructs it to enter sleep mode. When the command is issued, the printer enters sleep and consumes less power. Unlike pushing the Power button, remote sleep mode leaves the communications active.
Page 239
Communications T480 Programmer’s Guide [ESC] ~ G USB Green ASCII [ESC] ~ G <n> Hexadecimal 1BH 7EH 47H <n> Decimal <27> <126><71><n> IPCL None EPOS None Where n sets the Mode. 0 = Disable. Non zero, enables greem mode after n seconds.
Keypad Figure 65 Typical POS System For the host to printer communication link, the EPIC 3000 printer supports serial or parallel, USB and Ethernet communications. The serial, parallel, USB and Ethernet ports all follow standards developed for the personal computer environment.
The mechanism is called the flow control protocol. The goal of the flow control protocol is to exchange as much information as possible as fast as possible without losing any data. The EPIC 3000 printer supports three flow control protocols, two in serial mode and one in parallel.
(if it was stopped) and allows more information to be placed in the buffer. The EPIC 3000 printer has a configurable input buffer. The printer can be configured to allow from 40 to 8196 bytes of input buffer. Consequently, up to 8196 characters (or control codes) can be sent to the printer before they are interpreted and printed.
USB Support The EPIC 3000 printer supports a standard USB Printer class interface. (See Appendix B). This interface standard is supported by most operating system including Windows and Linux. In Windows this interface is supported by the USB Printing Support Driver (usbprint.sys) and will present the printer as USB001-USB999.
Communications T480 Programmer’s Guide Remote Printer Reset It is possible to generate a software printer reset in serial mode. The [ENQ] <10> command requests that the printer reset. (This is not a hardware reset). The reset completely initializes the hardware and software, but the printer does not recover from a loss of software control.
The EPIC 3000 Printer has a flag that is set after a reset. The flag stays set until the host requests a reset. The [ENQ] <11> command reads the flag. If the command returns power-cycled status, the power has been reset or power cycled since the last request.
The printer maintains an error log, this log contains additional information about the fault and is printed during manual configuration. The information in this log should be reported to Transact to identify the exact cause of the fault.
Communications FST 9000 Programmer’s Guide Programmer’s Notes The best time to configure the printer by the host with remote configuration is during system setup or software update. 100-14362 Rev A Page 247...
The USB interface conforms to USB Printer class standard published by the USB standards organization Version 1.1 dated January 2000. The EPIC 3000 Printer will appear to the host system as a USB class 7 device. There are 3 class specific requests that may be made to the printer after enumeration.
Page 250
SOFT_RESET was 00100011B. EPIC 3000 USB Interface The EPIC 3000 USB interface supports all three interfaces. The Get Device ID interface is configurable and may be disabled to prevent the host operating system from attempting to automatically install a Print Driver Note: The Print Driver is not the USB printer driver.
Note: This information is based on the Unicode 3.0 Standard. For specific character locations see the Unicode standard. Note: The EPIC 3000 does not contain all possible Unicode characters. The default character sets are defined by the WGL4 and GB18030 standards...
Page 254
Appendix T480 Programmer’s Guide 0x2070 0x209F Superscripts and Subscripts 0x20A0 0x20CF Currency Symbols 0x20D0 0x20FF Combining Diacritical Marks for Symbols 0x2100 0x214F Letter like Symbols 0x2150 0x218F Number Forms 0x2190 0x21FF Arrows 0x2200 0x22FF Mathematical Operators 0x2300 0x23FF Miscellaneous Technical 0x2400 0x243F Control Pictures...
T480 Programmer’s Guide Appendix Appendix F: WGL4.0 Character Addresses There are 654 Characters in this set and does not use address greater than 0xFFFF Unicode Character 0070 Latin small letter p 0020 space 0071 Latin small letter q 0021 exclamation mark 0072 Latin small letter r 0022...
Page 256
Appendix T480 Programmer’s Guide 00e2 Latin small letter a with circumflex accent 0139 Latin capital letter l with acute accent 00e3 Latin small letter a with tilde 013a Latin small letter l with acute accent 00e4 Latin small letter a with diaeresis 013b Latin capital letter l with cedilla 00e5...
Page 257
T480 Programmer’s Guide Appendix 0384 Greek tonos 0411 Cyrillic capital letter be 0385 Greek dialytika tonos 0412 Cyrillic capital letter ve 0386 Greek capital letter alpha with tonos 0413 Cyrillic capital letter ghe 0387 Greek ano teleia 0414 Cyrillic capital letter de 0388 Greek capital letter epsilon with tonos 0415...
Page 258
Appendix T480 Programmer’s Guide 2013 en dash 2524 box drawings light vertical and left 2014 em dash 252c box drawings light down and horizontal 2015 horizontal bar 2534 box drawings light up and horizontal 2017 double low line 253c box drawings light vertical and horizontal 2018 left single quotation mark 2550...
T480 Programmer’s Guide Appendix Appendix G: GB18030 Character Addresses There are 28575 Characters in this set and does not use address greater than 0xFFFF UNICODE CHARACTER 0070 LATIN SMALL LETTER P 0020 SPACE 0071 LATIN SMALL LETTER Q 0021 EXCLAMATION MARK 0072 LATIN SMALL LETTER R 0022...
Page 260
Appendix T480 Programmer’s Guide 03A0 GREEK CAPITAL LETTER PI 0445 CYRILLIC SMALL LETTER HA 03A1 GREEK CAPITAL LETTER RHO 0446 CYRILLIC SMALL LETTER TSE 03A3 GREEK CAPITAL LETTER SIGMA 0447 CYRILLIC SMALL LETTER CHE 03A4 GREEK CAPITAL LETTER TAU 0448 CYRILLIC SMALL LETTER SHA 03A5 GREEK CAPITAL LETTER UPSILON...
Page 261
T480 Programmer’s Guide Appendix 224C ALL EQUAL TO 2510 BOX DRAWINGS LIGHT DOWN AND LEFT 2252 APPROXIMATELY EQUAL TO OR THE IMAGE OF 2511 BOX DRAWINGS DOWN LIGHT AND LEFT HEAVY 2260 NOT EQUAL TO 2512 BOX DRAWINGS DOWN HEAVY AND LEFT LIGHT 2261 IDENTICAL TO 2513...
Page 262
Appendix T480 Programmer’s Guide BOX DRAWINGS RIGHT DOWN HEAVY AND LEFT 25BD WHITE DOWN-POINTING TRIANGLE 2546 UP LIGHT 25C6 BLACK DIAMOND BOX DRAWINGS DOWN LIGHT AND UP 25C7 WHITE DIAMOND 2547 HORIZONTAL HEAVY 25CB WHITE CIRCLE BOX DRAWINGS UP LIGHT AND DOWN 25CE BULLSEYE 2548...
Page 263
T480 Programmer’s Guide Appendix 304F HIRAGANA LETTER KU 30AE KATAKANA LETTER GI 3050 HIRAGANA LETTER GU 30AF KATAKANA LETTER KU 3051 HIRAGANA LETTER KE 30B0 KATAKANA LETTER GU 3052 HIRAGANA LETTER GE 30B1 KATAKANA LETTER KE 3053 HIRAGANA LETTER KO 30B2 KATAKANA LETTER GE 3054...
Page 264
Appendix T480 Programmer’s Guide 310F BOPOMOFO LETTER H PRESENTATION FORM FOR VERTICAL LEFT FE37 CURLY BRACKET 3110 BOPOMOFO LETTER J PRESENTATION FORM FOR VERTICAL RIGHT 3111 BOPOMOFO LETTER Q FE38 CURLY BRACKET 3112 BOPOMOFO LETTER X PRESENTATION FORM FOR VERTICAL LEFT 3113 BOPOMOFO LETTER ZH FE39...
Page 265
T480 Programmer’s Guide Appendix FF1D FULLWIDTH EQUALS SIGN FF1E FULLWIDTH GREATER-THAN SIGN FF1F FULLWIDTH QUESTION MARK FF20 FULLWIDTH COMMERCIAL AT FF21 FULLWIDTH LATIN CAPITAL LETTER A FF22 FULLWIDTH LATIN CAPITAL LETTER B FF23 FULLWIDTH LATIN CAPITAL LETTER C FF24 FULLWIDTH LATIN CAPITAL LETTER D FF25 FULLWIDTH LATIN CAPITAL LETTER E FF26...
T480 Programmer’s Guide Appendix Appendix H Windows 1252 Latin 1 Windows 1252 Latin 1 to Unicode translation ASCII Unicode Character 0x45 0x0045 LATIN CAPITAL LETTER E 0x00 0x0000 NULL 0x46 0x0046 LATIN CAPITAL LETTER F 0x01 0x0001 START OF HEADING 0x47 0x0047 LATIN CAPITAL LETTER G...
Page 268
Appendix C: Ordering Supplies FST 9000 Programmer’s Guide 0x8B 0x2039 SINGLE LEFT-POINTING ANGLE 0xCD 0x00CD LATIN CAPITAL LETTER I WITH ACUTE QUOTATION MARK 0xCE 0x00CE LATIN CAPITAL LETTER I WITH 0x8C 0x0152 LATIN CAPITAL LIGATURE OE CIRCUMFLEX 0x8D 0x0000 0xCF 0x00CF LATIN CAPITAL LETTER I WITH DIAERESIS 0x8E...
T480 Programmer’s Guide Index Index [BEL] Audio alert, 164, 165 [ESC] [US] m <Name..> <0> Save macro data, 84 [BS] Insert back space, 37 [ESC] [US] m <Name..> Save macro data, 82 [CAN] Clear print buffer, 163 [ESC] [US] q <Name..> <0> Query user store, 86 [CR] Set carriage return, 36 [ESC] [US] r <Name>...
Page 270
Index T480 Programmer’s Guide [ESC] p 4 <n> Select paper sensor(s) to stop printing, Connecting Communication Cables, 21 Control Character, Printing, 56 [ESC] p 5 <n> Enable/disable paper feed, 165 Control Codes [ESC] q <n> Query marker, 163 Overview, 29 [ESC] R Reset horizontal and vertical tab stops, 37, 42 Control Codes and Commands, 30 [ESC] S <0>...
Page 271
T480 Programmer’s Guide Index Line Spacing, Set-n/216 inch, 39 Process User Macro, 89 Programmer’s Notes, 245 Line Spacing-Variable, Setting, 40 Machanical Error Status, Inquire, 172 Programming Considerations, 87 Macro Data, Run from user Store, 85 Quad Density Graphics, Printing, 74 Macro Data, Saving, 82 Query marker, 163 Macro Data, Saving in user Store, 84...
Need help?
Do you have a question about the Epic 3000 and is the answer not in the manual?
Questions and answers