Uniform Industrial UIC680 Programmer's Manual

Contactless smart card reader module, rs232 & usb interface
Table of Contents

Advertisement

Quick Links

UIC680
Contactless Smart Card Reader Module
RS232 & USB Interface
Programmer's Manual
Document #: PM090-C2
Revision 2.3
July 10, 2012

Advertisement

Table of Contents
loading

Summary of Contents for Uniform Industrial UIC680

  • Page 1 UIC680 Contactless Smart Card Reader Module RS232 & USB Interface Programmer’s Manual Document #: PM090-C2 Revision 2.3 July 10, 2012...
  • Page 2 This warranty applies to the products only under the normal use of the original purchasers, and in no circumstances covers incidental or consequential damages through consumers’ misuse or modification of the product. Copyright © 2012, Uniform Industrial Corp. All Rights Reserved...
  • Page 3 For ease of installation and programming use, we have addressed everything from its attractive features to its various configurations. When designing the UIC680, we selected what we feel are the most useful features and functions. If in some cases you find that your specific needs differ from our existing products, we welcome your comments and suggestions.
  • Page 4: Table Of Contents

      Host Poll Mode ........................4-4   Card Data Output for Different Types of Card and Reader Configurations......4-4   Card Data Output in Self-Arm and Host-Polled modes ............4-4   Copyright © 2012, Uniform Industrial Corp. All Rights Reserved...
  • Page 5 (6FH) – Antenna power OFF ................... 5-13   b (62H) – Request ......................5-14   c (63H) – Anticollision(type A)/Slot-MARKER(type B) ............5-14   f (66H) – Select(type A)/Attrib(type B) ................5-15   Copyright © 2012, Uniform Industrial Corp. All Rights Reserved...
  • Page 6 ! (21H) Invalid Command or bad parameter................. 6-1   : (3AH) Power On report....................... 6-1   ~ (7EH) Unavailable. Hardware is not available to complete this request......6-1   Section 7 : General Application Example .............7-1 Copyright © 2012, Uniform Industrial Corp. All Rights Reserved...
  • Page 7: Section 1: General Description

    2-SAM or 4-SAM board (optional) 1.2 Application The contactless smart card reader module UIC680 is mainly to support the contactless payment systems. The small footprint size of the module makes it easy to integrate to the current transaction system such as Point-of-Sale terminal, kiosk, and vending machine station.
  • Page 8: Section 2: Configurations

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 Section 2: Configurations This section shows the dimensions and accessories of the UIC680. 2.1 Dimensions of UIC680 PCBA...
  • Page 9: Section 3: Technical Specifications

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 Section 3: Technical Specifications 3.1 Functional Specifications Basic functions • Contactless communication at 13.56MHz • 4 LED indications for vertical or horizontal mount • Programmable audio buzzer • Real time clock /w 5 years battery life Standards •...
  • Page 10: Mechanical Specifications

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 3.2 Mechanical Specifications • Dimension Without antenna board Length: 50 mm Width: 40 mm 3.3 Electrical Specifications • Power Required 5VDC ± 5% • Power Consumption 330mA in idle mode; 430mA in operating mode •...
  • Page 11: Pin Assignment

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 3.5 Pin Assignment Interface J5 Pin Assignment Pin7 Pin 1 PCB-J5 Direction Signal Serial data to host TXD_Out Serial data from host RXD_In USB data or Serial Pass-thru (optional) USB D- or TXD2 (optional)
  • Page 12: Communication

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 3.6 Communication • RS232 Interface Data Output Synchronization The interface receives and transmits serial asynchronous data at voltage levels compatible with the RS232 specification. Baud Rate 9600 BPS default (optional: 1200/2400/4800/9600/19200/38400/56000/115.2K BPS) • RS232 Interface Pass Through (Optional) Baud Rate 9600 BPS default (optional: 1200/2400/4800/9600/19200/38400/56000/115.2K BPS)
  • Page 13: Section 4: Operation

    After power up the device, the first right vertical LED is turned on with one beep sound indicating that the reader is ready to operate. As factory default setting, UIC680 is set to Self-Arm mode enabled. Under this mode, the reader will read and transmit payment card data automatically.
  • Page 14: Reader Configurations

    Upon reset, the reader will send out the default power-on character “:”, or any character specified by the configuration setting. Important: When the UIC680 is working in the USB interface, we need to add the header byte C2h and the 2-byte data length before the command. Protocol 0 In Protocol 0, all characters are transmitted and received using exactly the characters listed in Section 4.
  • Page 15 UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 Example of Protocol 1, USB Interface Host Command Reader Response Comment Ready to read <C2h><00h><04h><02h>P<03h><51h> Reader ACK <C2h><00h><04h><02h>^<03h><5Fh> Protocol 2 In Protocol 2, all messages are preceded by the ASCII character <SOH>, followed by a one byte reader address, two bytes character count and terminated with a one byte <BCC>.
  • Page 16: Self - Arm Mode

    Under the Self-Arm mode, the card data output will not include the protocol envelope code. The user can insert the envelope code by utilizing the configuration commands-SE and Please refer to UIC680 Configuration Guide for the detail information. Please refer to UIC680 Configuration Guide for the detail information.
  • Page 17 Envelope code The preamble/postamble is only available in the card data output format under Self-Arm mode. The UIC680 can be configured to become a secure reader which will output encrypted card data. The data format is as follows: Encrypted Card data output format...
  • Page 18: Details Of The Payment Card Tracks Data

    Some transactions may request extra information outside track 1 & track 2. The UIC680 has introduced a way to reduce the communication time between the host and the reader where the particular information can be stored in track 3 or even track 4.
  • Page 19 UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 Table of Tag Length Value and Its Description Data Object Format (Bytes), Data/Tag Description Output in ASCII (Bytes) Start Sentinel Card Type* – M/Chip Transaction Result** - Online Field Separator 9F26 Application Cryptogram b8, 16...
  • Page 20 UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 Data Object Format (Bytes), Data/Tag Description Output in ASCII (Bytes) 9F27 Cryptogram Information Data b1, 2 9F34 Cardholder Verification Method Results b3, 3 9F53 Transaction Category Code b1,2 cn0~10 var. , 0~20 var.
  • Page 21 UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 Value of Card Type Value Card Type* MChip RFU(MagStripe V3.3) Visa(qVSDC, MSD) Contactless VSDC Value of Transaction Result Value Transaction Result** Offline Approved Offline Declined Online Terminate...
  • Page 22 UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 Example: Paypass –Mchip in track 3 Card Transaction =[CVM]=[9F26]=[9F10]=[9F37]=[9F36]=[95]=[9B]=[9A] Type Result =[9C]=[9F02]=[5F2A]=[82]=[9F1A]=[9F03]=[9F33] (1-byte) (2-byte) =[9F35]=[84]=[9F09]=[9F1E]=[9F16]=[9F41]=[9F27] =[9F34]=[9F53]=[5A]=[5F24]=[57]=[9F6E]=[50]=[9F12] =[9F11]=[5F34] Visa (qVSDC, MSD) in track 3 Card Transaction =[9F26]=[9F10]=[9F37]=[9F36]=[9F66]=[95]=[9B]=[9A] Type Result =[9F02]=[5F2A]=[82]=[9F1A]=[9F03]=[9F33]=[9F35] (1-byte) (2-byte) =[9F09]=[9F1E]=[9F16]=[5F34]=[9F40]=[9F6E]=[9F7C] =[57]=[5A]=[5F20]=[5F24]=[9C]=[9F5D]=[9F68]=[9F6C]...
  • Page 23: Track 4 Data Format

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 Value Description 9B, Transaction Status Information 010101 9A, Transaction Date 9C, Transaction Type 000000000000 9F02, Amount, Authorized (Numeric) 0000 5F2A, Transaction Currency Code 5880 82, Application Interchange Profile 0000 9F1A, Terminal Country Code...
  • Page 24: Section 5: Commands And Responses

    This command is sent if the user wants to know the version, model and copyright of the currently loaded UIC680 firmware. The response is an ASCII string giving the firmware date (yymmdd), reader type and the firmware version number, followed by the firmware copyright statement.
  • Page 25: (3Fh) - Select Verbose Responses Command

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 Send this command when users want to know the version of the module in UIC680 firmware currently loaded. The response is a 6-byte ASCII string, reader type and the module version number. 7A[Module, 1 byte]...
  • Page 26: (23H) - Configuration Request

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 Second Status Byte Value: 0 Value: 1 First LED OFF First LED ON LED not Flash LED Flash No RFID Read RFID Read EXCEPTION If there is any LED flashes, the bit 0 status will be ignored. (i.e., in this case, bit 0 always = ‘0’)
  • Page 27: Can> (18H) - Clear Data Buffer

    RS232 pass through function. It is only valid in RS232 model. NOTE Once the pass through mode is enabled, UIC680 passes all data between COM1 and COM2 and do nothing. Power cycling (if the default of PT is disable) or send the string ‘<DC2>P<DC2>a<DC2>s<DC2>S’ brings UIC680 back to normal operation.
  • Page 28: P (50H) - Arm To Read

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 • P (50H) – Arm to Read COMMENT 1. Clears data buffers. 2. Transmits command acknowledgement (‘^’ 5EH) if successful. 3. Waiting for and detect approaching card. 4. The LED1 will light on and then turn off after a successful reading or a MIFARE card being detected.
  • Page 29: U (55H) - Transmit Track 4 Data

    The payment card is decoded successfully and the UIC680 is waiting for the card to be removed from the reading zone. The payment card is failed to decode and the UIC680 is waiting for the card to be removed from the reading zone.
  • Page 30: Set Rtc Time

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 • 5 (35H) – Set RTC Time COMMENT This command is used to set and read device’s RTC Time. 5[CMD, 1 byte][Date or Time, 5 bytes] [CMD, 1byte] [CMD, 1 byte] (ASCII – Hex value)
  • Page 31 UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 = Second 37 08h 91h = Milliseconds 891 Command: 4, 34h [Set Date, 5 bytes Hex] Format <Year, 2 bytes><Month, 1 byte ><Day, 1 byte ><Week, 1 byte > Note Hex value format valid input: YYYY: 14h 00h –...
  • Page 32: B (42H) - Buzzer Beep Control

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 Command <35><35><0E><1A><1E><00><0A> Response ‘^’ – Acknowledgement ‘*’ – Cannot execute (e.g. out of range) ‘!’ – Bad parameter (e.g. incorrect length) • B (42H) – Buzzer Beep control COMMENT Used to let Buzzer beep under user’s control.
  • Page 33: I (49H) - Load Rsa Key

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 • I (49H) – Load RSA Key COMMENT This command is used to load RSA Key and query Key Index for PayPass MCHIP and VISA qVSDC applications. I[Command, 1 or 3 bytes][Data, optional] [Command] Command Format (ASCII –...
  • Page 34: T (54H) - Transaction Command

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 EXAMPLE Value 0000000001 CA Index 14C312D488A70988A4F219D5D67E798FDCA0A70D906663133A70981E6126F92B28 Modulus 8BED98D69782CCA8C594B0CF2AB2ECE7399808574688A1B84BBCD20D37E92D1C 689A5BBD845A9988510C9A96EE445D4C1DA357AD3D142D5E8BC5D644549212317 E7A3552278BF8C67B5FBF650FFDAF577EF2297B336FEF6BA6536ADE3BA109 010001 Exponent DD3E2B6CCD38CF59998879F058BF86C827E09E91 Sha_1 Value Command Form: I1<01><00><A2><05><00><00><00><00><01><01><03><03><01><00><01><80><14><C3><12><D4> <88><A7><09><88><A4><F2><19><D5><D6>~y<8F><DC><A0><A7><0D><90>fc<13>:p<98><1E>a& <F9>+(<8B><ED><98><D6><97><82><CC><A8><C5><94><B0><CF>*<B2><EC><E7>9<98><08>WF <88><A1><B8>K<BC><D2><0D>7<E9>-<1C>h<9A>[<BD><84>Z<99><88>Q<0C><9A><96><EE>D]L< 1D><A3>W<AD>=<14>-^<8B><C5><D6>DT<92><12>1~z5R’<8B><F8><C6>{_<BF>e<0F><FD><AF> W~<F2>}{3o<EF>k<A6>Sj<DE>;<A1><09><14><DD>>+l<CD>8<CF>Y<99><88>y<F0>X<BF><86><C8 >’<E0><9E><91> Note: These values are used for testing purposes. • T (54H) – Transaction Command COMMENT This command is used to view and manipulate transaction activities.
  • Page 35: W (77H) - Exception File

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 6 bytes in numeric format, use once only. T1<Amount> 2 bytes in binary format, decide which record to read; range from 0001h to T2<Record> 0186h. NOTE Record data of ‘T2’ command includes Transaction Date and Tracks data.
  • Page 36: Contactless Card Operation Command Description

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 For ‘w4’ - return primary account number; else, return 00h. EXAMPLE: 2 Bytes Len (1 Byte) PAN (Max: 19 Bytes) “123456789” 5.2 Contactless Card Operation Command Description • G (47H) – ISO 14443 Type Protocol Select COMMENT Selects which manual command operated, ISO 14443 Type A or B.
  • Page 37: B (62H) - Request

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 ‘*’ - Failed, the reader is in Self-Arm mode. The antenna power cannot be turned off. • b (62H) – Request COMMENT Request command. b[Req command, 1 byte] - If reader is set to ISO 14443 type A [Req command](optional) The request command code is ISO 14443 type A.
  • Page 38: F (66H) - Select(Type A)/Attrib(Type B)

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 [APn] Anticollision Prefix byte, please refer to ISO 14443-3 for detailed information. NOTE Slot-MARKER is not a mandatory command for type B card. Response PICC serial number for type A(Binary Hex) or PICC send ATQB(12 bytes, Binary Hex) for type B if command executed successfully ‘*’...
  • Page 39: H (68H) - Mifare Classic Card Read Block(Supports Mifare Ultralight)

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 0 to 4(30h to 34h, ASCII Hex) [Key] 0 to 9 or A to F(30h to 39h or 41h to 46h, ASCII Hex) [Key type] A or B(41h or 42h) Response ‘^’ - Acknowledgement ‘*’...
  • Page 40: T (74H) - Mifare Classic Card Value Operation

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 B<00><00> to B<00><FF>(42h00h00h to 42h00hFFh, ASCII Hex) - General MIFARE block <00><00> to U<00><FF>(55h00h00h to 55h00hFFh, ASCII Hex) - MIFARE Ultralight [Block data] For MIFARE Ultralight, the block data should be 4 bytes; others using 16 bytes block data.
  • Page 41: W (57H) - Iso 14443A Detection

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 [transfer block] For option 3 only, the data format is the same as [Block number]. If [transfer block] is not given, reader will regard it as normal Decrement command. Response ‘^’ - Acknowledgement ‘*’...
  • Page 42: Mifare Classic Card Write Sector

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 [Sector number] There are two types of sector number: 000 to 255(30h30h30h to 32h35h35h, ASCII Hex) B<00><00> to B<00><FF>(42h00h00h to 42h00hFFh, ASCII Hex) NOTE For MIFARE Classic 4K, sectors 0~31 contains 4 blocks each and sectors 32~39 contains 16 blocks each.
  • Page 43: J (4Ah) - Activate Picc Cpu Card

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 • J (4AH) – Activate PICC cpu card COMMENT PICC cpu card activation command. The Antenna POWER ON command has to be sent first. Response ATS (type A) or PUPI (type B) if command executed successfully ‘*’...
  • Page 44: Y (79H) - Send Deselect Command

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 9 (39H) – JCOP31 0 (30H) - Not MIFARE card or Not supported card ’*’ - No card response or No power on the antenna NOTE This command is only available after users successfully activate the MIFARE cards (after the ‘f’...
  • Page 45 UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 [CRC mode] 0 (30h, ASCII Hex) - Block data contain 2 bytes CRC and enable CRC transmission. 1 (31h, ASCII Hex) - No CRC in block data and disable CRC transmission. [Wait time] 0000 to 9999(30h30h30h30h to 39h39h39h39h, ASCII Hex) in milliseconds.
  • Page 46: Section 6: Response To The Host

    UIC680 Programmer’s Manual UDN PM090-C2 Rev. 2.3 Section 6: Response to the Host • ^ (5EH) Acknowledge. Acknowledges correct completion of most recent command. • * (2AH) Command was received correctly but could not be completed. • + (2BH) No Magnetic Stripe Card Data. Command was received correctly.
  • Page 47: Section 7: General Application Example

    ‘P’ (50h) prepared for the next transaction. Since the Self-Arm disable command won’t change the EEPROM setting, the UIC680 will turn back to the Self-Arm mode in the next power cycling. Besides, the Self-Arm enable command, ‘H1’, can also bring the UIC680 back to the Self-Arm mode.
  • Page 48 UDN PM090-C2 Rev. 2.3 Host Polled Application Example A. UIC680 setting changed In this example, we assume that the UIC680 is in factory default setting and the user would like to change the setting to protocol USI2 and Self-Arm disable mode. Initial State 1.
  • Page 49 Card data processing For next transaction After the host issues the Arm-to-Read command, the UIC680 will check if any payment card is detected in the reading zone or any magnetic stripe card is swiped (the magnetic stripe reader is optional device). No matter the card is decoded successfully or not, it will return the ‘^’ to indicate that the card has been read.

Table of Contents