The IBM 4610, also known as SureMark, is a thermal point-of-sale printer, originally developed and manufactured by IBM and currently offered by Toshiba Global Commerce Solutions, launched in 1996. It is used by major retailers such as Wal-Mart (in most countries, most notably United States and Mexico), Carrefour, Costco, Cencosud, Office Depot, Tesco, Best Buy, Chedraui, King Soopers (and Kroger affiliates), London Drugs and Soriana (Mainly formerly Gigante stores). It had replaced the famous IBM Printer Model 4. With the acquisition of IBM's Retail Store Solutions (RSS) business, the SureMark printers are now produced by Toshiba Global Commerce Solutions.

IBM SureMark printer

Toshiba started to replace 4610 family with 6145 family of receipt printers in 2018. First introduced were TCx Dual Station printers at the NRF Big Show in January 2018,[1] then a TCx Single Station printer at LEAD 2018 show in September 2018.[2] All 4610 models were withdrawn from sale by 2020.

All printers feature a thermal printing unit for printing receipts onto thermal paper. Some models also feature an Impact printer optionally equipped with a MICR-Reader for cheque processing. The printers closely integrate into the IBM SurePOS point-of-sale systems using their 4690 Operating System, both in software (via means of an API) and hardware (certain models fit into the point-of-sale system). The printers usually feature a connector to control one or two solenoids in cash register drawers.

Model overview

edit

Over the years, IBM released a set of different printers. Usually, the same model is available in two colors to match the color of the point-of-sale system they were released with, but can be operated independently. All TG-models are functionally equivalent to the TI-models with the same number and TF-models match TM-models. TG- and TF—models feature "iron gray" covers, while TI- and TM-models are "pearl white". No color distinction existed at model numbers in the second generation.

Features common to all models are:

  • 256 KB flash memory, used to store custom messages, logos, code pages and journal data.
  • Barcode generation
  • Ability to download custom fonts and codepages
  • Proportional and scalable fonts
  • Upside-down printing
  • Updatable microcode
  • 85mm paper roll (90mm roll for models TG6 / TM6)

Printers commonly use RS-232 and RS-485 interfaces, later models added a USB or Ethernet connection. Except for TF6 / TM6, the printers feature a replaceable interface card at the bottom. This card is used for both power and data and can be replaced to offer different interfaces. All second generation models have permanently integrated interface boards, so a customer needed to choose one of these interface options: USB (with power delivered from separate power supply) + PoweredUSB, RS-232 or RS-485.

Model Thermal printer Impact printer MICR-Reader Cheque flipper Document scanner Introduced Replaced by Other features
TI1 / TG1 Yes Yes No No No 1996 TI3 / TG3 No Euro symbol
TI2 / TG2 Yes Yes Yes Yes No TI4 / TG4 No Euro symbol
TI3 / TG3 Yes Yes No No No 2NR
TN3 Yes Yes No No No [3] Three-station model that includes integrated paper journaling
TN4 Yes Yes Yes Yes No Same as TN3 with additional checkque handling
TI4 / TG4 Yes Yes Yes Yes No
TI5 / TG5 Yes Yes No No No 1999 [4] Like TI3 / TG3 but for the Chinese market, featuring DBCS character support. Additional 16 MB flash for DBCS characters. Printing speed was slightly reduced (from 52 to 50 ips).[5]
TI8 / TG8 Yes Yes Yes Yes Yes TI9 / TG9 Powered flipper, freely manageable flash storage
TI9 / TG9 Yes Yes Yes Yes Yes 2CR Powered flipper, freely manageable flash storage, compliance with Check 21 legislation
TF6 / TM6 Yes No No No No 1NR / 1NA / 1ND [6] Audible alarm (Beeper), wall mountable, spill resistant, optional additional spill cover, optional external paper roll, power switch
TF7 / TM7 Yes No No No No 1NR [7] Like TF6 / TM6 but for the Chinese market, featuring DBCS character support. Additional 16 MB flash for DBCS characters. Printing speed was slightly reduced (from 52 to 50 ips).[8]
1NR / 1NA / 1ND Yes No No No No 2009 6145-1TN Second-generation IBM/Toshiba 4610, features new body design over previous generation. Printing speed was improved, from 52 lps in TF6/TM6 models[8] to 80 lps at 8 lpi[9] and from 39 lps to 60 lps at 6 lpi. All models have integrated both SBCS and DBCS character encodings.[10] 1NR model was available globally and is the most known version in this generation. 1NA version was offered only in the US and 1ND version was offered only in the UK, and so they are very rare; they were removed from offer under Toshiba and only 1NR version remained on sale.
2NR Yes Yes No No No 2008 6145-2TN Second-generation IBM/Toshiba 4610, features new body design over previous generation. Printing speed was improved, from 52 lps in TI3/TG3 models[5] to 80 lps at 8 lpi[11] and from 39 lps to 60 lps at 6 lpi. Both SBCS and DBCS character encodings are integrated.[12]
2CR Yes Yes Yes Yes No 2008 6145-2TC Second-generation IBM/Toshiba 4610, features new body design over previous generation. Printing speed was improved, from 52 lps in TI9/TG9 models[5] to 80 lps at 8 lpi[11] and from 39 lps to 60 lps at 6 lpi. Both SBCS and DBCS character encodings are integrated.[12] Document scanning feature was permanently removed.

Additionally, there are models with a D instead of a T. This denotes a different warranty service ("Depot repair" instead of "IOR 24x7"). This separation existed only in the first generation of 4610 printers.

Some models, especially those that IBM marks for "fiscal use" feature paper journaling in addition to electronic journaling (optionally with CompactFlash-cards) or an RS-232 auditing port.[13] These models include: KR3 / KD3, KR5 / KD5, KC4, KC5, FV5, GR3 / GB3 / GE3, GR5 / GB5. Some of these models have a power supply integrated. Not everywhere, where cash registers and receipt printers are hardware-fiscalized, IBM provided its own fiscal modules, so third-parties were required to do so, using "fiscal-ready" or non-fiscal versions of 4610 printers.

No three-station model was developed in the second generation of 4610 printers, as many countries, requiring hardware fiscalization of cash registers and receipt printers or paper journaling, already transitioned to electronic journaling.

Interface

edit

Printers attached using RS-485 are supplied with 35V from the data cable. When using RS-232 or USB (depending on model and interface card), a separate 24V connected is used, either using a PoweredUSB-connection cable plugged into the point-of-sale system or using an external power brick. Note that the PoweredUSB-Cable does not transmit data and is used for power only.

Interface speeds are as follows:

  • RS-232: 9600 and 19200 bit/s, 115200 bit/s for Tx8 and Tx9
  • RS-485: 185.5 kbit/s
  • USB: up to 12 Mbit/s

IBM provides extensive documentation[14] Users guide for a large range of 4610 printers including programming information (Retrieved: 2018-01-06 16:31+00)

for interfacing with the printer family programmatically. Generally, when connecting the printer via RS-232 or RS-485, the commands are sent in binary along with the text. It is therefor possible to use the printers in different applications.

Interface Examples

edit

The following examples assume a Linux-computer with the printer connected via a USB to serial adapter known to the system as /dev/ttyUSB0 with the port configured for the desired baud rate.

Printing text on the thermal printer is as easy as writing to the device:

$ echo "Hello World" > /dev/ttyUSB0

Commands are sent as binary. This will cause the paper in the thermal printer to be cut:

$ echo -e -n "\x0c" > /dev/ttyUSB0

Printer status

edit

The printer responds with a status message to certain commands. The status message consists of two bytes denoting the length of the message including these two bytes. All status messages consist of at least 8 bytes of general status and error information as well as microcode version. If, for example, bit 8 in byte e of the status message is set, the printer reports that its buffer has less than 1k characters left to make the controlling system aware that it should slow down or discard the buffer.

A set of bits is used to denote if the message is an answer to an inquiry command such as "Request printer ID". If that is the case the printer appends a command-specific amount of extra information to the end of the status message. The reported size of the message that is encoded in the first two bytes of the printers response is higher, accordingly. The following python-script requests the printer ID in order to identify the printer type and capabilities in use:

import serial
import struct

# select, configure and open the serial interface
with serial.Serial('/dev/ttyUSB0', 19200, timeout=5) as ser:
    # tell the printer to respond with its ID information
    ser.write(b'\x1d\x49\x01')

    # read the first two bytes of the response
    message_length_data = ser.read(2)
    # convert the data to an integer
    message_length = struct.unpack('>H', message_length_data)[0]

    print('Message length: {}'.format(message_length))

    # read the entire response. keep in mind that the first two bytes have already been read
    raw_data = ser.read(message_length - 2)

    # Because the two bytes denoting the length have been read earlier, the response is two bytes shorter
    # than the length of the message. The first byte of the actual status response is therefor is 1 and the highest is 13
    # The status bytes are being pushed into a python list [] object which start its indexing at 0 so 1 must be subtracted
    # from they byte number reference in the user guide and in the comments.
    # 
    # Check if the message is indeed a response to a printer ID request:
    if raw_data[4] & (1 << 0) != 0: 
        # byte 9 gives a rough indication of the printer type:
        if raw_data[8] == 0x30:
            print('Type: non-Tx8/Tx9 model, or Tx8/Tx9 in TI4 emulation mode')
        elif raw_data[8] == 0x31:
            print('Type: Tx8 or Tx9 model')

        # byte 10 indicates the model more closely and distinguishes between features regarding to memory options:
        if raw_data[9] == 0x00:
            print('Device ID: Models TI1 and TI2 (impact DI/thermal CR)')
        elif raw_data[9] == 0x01:
            print('Device ID: Models TI3, TI4, TI8, TI9, TG3, and TG4 (high speed; impact DI/thermal CR)')
        elif raw_data[9] == 0x02:
            print('Device ID: Models TI3, TI4, TG3, and TG4 with the 2MB option')
        elif raw_data[9] == 0x03:
            print('Device ID: Models TF6 and TM6 (512K; thermal CR)')
        elif raw_data[9] == 0x04:
            print('Device ID: Models TI3, TI4, TG3, and TG4 with the 8MB option')
        elif raw_data[9] == 0x05:
            print('Device ID: Models TF6 and TM6 with the 8MB option')
        elif raw_data[9] == 0x06:
            print('Reserved (0x06)')
        elif raw_data[9] == 0x07:
            print('Models TF6 and TM6 with the 2MB option')

        # bytes 11 and 12 indicate individual features like presence of MICR-reader, check flipper, emulation or two-color mode etc.

        # byte 13 contains the microcode level, which is always referred to in hexadecimal notation:
        print('Printer microcode level: {:02X}'.format(raw_data[12]))

For a TF6-model, the output looks like this:

 Message length: 15
 Type: non-Tx8/Tx9 model, or Tx8/Tx9 in TI4 emulation mode
 Device ID: Models TF6 and TM6 (512K; thermal CR)
 Printer microcode level: 44

References

edit
  1. ^ "Toshiba Unveils New Solutions Designed for Retail at NRF 2018 Big Show". Retrieved 2021-11-18.
  2. ^ "Toshiba Unveils New Solutions Empowering Retail at LEAD 2018". Retrieved 2021-11-18.
  3. ^ "IBM SureMark printers: Three-station models" (PDF). ibm.com. Retrieved 2018-01-06.
  4. ^ "4610 SureMark DBCS" (PDF). ibm.com. Retrieved 2018-01-06.
  5. ^ a b c "IBM SureMark Dual-Station Printers - Specifications (2008)". Archived from the original on 2008-06-08. Retrieved 2021-11-18.
  6. ^ "IBM SureMark Printers: Single-station models" (PDF). ibm.com. Retrieved 2018-01-06.
  7. ^ "IBM SureMark Printers" (PDF). ibm.com. Retrieved 2018-01-06.
  8. ^ a b "IBM SureMark single-station printers - Specifications (2008)". Archived from the original on 2008-12-05. Retrieved 2021-11-18.
  9. ^ "IBM SureMark single-station printers - Specifications (2009)". Archived from the original on 2009-09-13. Retrieved 2021-11-18.
  10. ^ "IBM SureMark single-station printers - Models". Archived from the original on 2009-09-13. Retrieved 2021-11-18.
  11. ^ a b "IBM SureMark Dual-Station Printers - Specifications (2009)". Archived from the original on 2009-05-31. Retrieved 2021-11-18.
  12. ^ a b "IBM SureMark Dual-Station Printers - Models". Archived from the original on 2009-06-01. Retrieved 2021-11-18.
  13. ^ "IBM SureMark Printers: Fiscal models" (PDF). ibm.com. Retrieved 2018-01-06.
  14. ^ "SureMark Printers User's Guide" (PDF). Datamax System Solutions. Retrieved 2018-01-06.