Advanced Card ACR89U-A2 Reference Manual

Hide thumbs Also See for ACR89U-A2:
Table of Contents

Advertisement

Quick Links

ACR89U-A2
Handheld
Smart Card Reader
Reference Manual V1.01
Subject to change without prior notice
info@acs.com.hk
www.acs.com.hk

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the ACR89U-A2 and is the answer not in the manual?

Questions and answers

Summary of Contents for Advanced Card ACR89U-A2

  • Page 1 ACR89U-A2 Handheld Smart Card Reader Reference Manual V1.01 Subject to change without prior notice info@acs.com.hk www.acs.com.hk...
  • Page 2: Table Of Contents

    Appendix C. Access FeliCa Tags (ISO 18092) .............. 55 Appendix D. Access NFC Forum Type 1 Tags (ISO 18092) ......... 56 List of Figures Figure 1 : ACR89U-A2 Architecture ....................... 5 Figure 2 : CCID PC_to_RDR_Escape Message .................. 18 Figure 3 : PC_to_ACR89_DisplayGraphic – Bitmap Format ............... 21 Figure 4 : CCID RDR_to_PC_Escape Message ..................
  • Page 3 Table 11 : Direct Transmit Response Codes ..................39 Table 12 : MIFARE 1K Memory Map ....................43 Table 13 : MIFARE 4K Memory Map ....................43 Table 14 : MIFARE Ultralight Memory Map ..................44 Page 3 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 4: Introduction

    A and B, MIFARE®, FeliCa and ISO 18092 or NFC tags. It can operate in both office and field-based environments using it PC-linked and standalone modes, respectively. For PC-linked Mode, ACR89U-A2 acts as the intermediary device between the PC and the card. The reader, specifically to communicate with a contactless tag, MCU card, SAM card or device peripherals, will carry out a command issued from the PC.
  • Page 5: Hardware Design

    The ACR89U-A2 is connected to a computer through USB following the USB standard. 2.3. Communication Parameters The ACR89U-A2 is connected to a computer through USB as specified in the USB Specification 2.0., working in full speed mode, i.e. 12 Mbps.
  • Page 6: Endpoints

    The carrier frequency for ACR89U-A2 is 13.56 MHz. 2.6.2. Card Polling The ACR89U-A2 automatically polls the contactless tags that are within the field. ISO 14443-4 Type A, ISO 14443-4 Type B, MIFARE, FeliCa and NFC tags are supported. Page 6 of 57 ACR89U-A2 –...
  • Page 7: Acr89 Usb Communication Protocol

    Maximum supported ICC I/O data dwMaxDataRate 00032673h rate is 206,451 bps Does not support manual setting of bNumDataRatesSupported data rates Maximum IFSD supported by dwMaxIFSD 00000FEh ACR89 for protocol T=1 is 254 Page 7 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 8: Table 2: Acr89 Supported Ccid Features Class Descriptor

    ACR89 supports PIN Verification bPINSupport and PIN Modification Only 1 slot can be simultaneously bMaxCCIDBusySlots busy Table 2: ACR89 Supported CCID Features Class Descriptor Note: Standard CCID adopts little endian mode. Page 8 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 9: Ccid Class-Specific Requests

    Stop any current processing command and return to a state where ACR89 is ready to accept a new command: bmRequestType bRequest wValue wIndex wLength Data ABORT 00100001b bSeq, bSlot Interface 0000h None (01h) Page 9 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 10: Ccid Command Pipe Bulk-Out Message

    The response to this message is the RDR_to_PC_SlotStatus message. 3.3.1.3. PC_to_RDR_GetSlotStatus Gets the current status of the slot. Offset Field Size Value Description bMessageType dwLength 00000000h Size of extra bytes of this message Page 10 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 11 The response to this message is the RDR_to_PC_Parameters message. 3.3.1.6. PC_to_RDR_ResetParameters Resets the slot parameters to default value. Offset Field Size Value Description bMessageType dwLength 00000000h Size of extra bytes of this message Page 11 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 12 Extra Guardtime between two characters. bGuardTimeT0 Add 0 to 254 etu to the normal guardtime of 12etu. FFh is the same as 00h. bWaitingIntegerT0 WI for T=0 used to define WWT Page 12 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 13 Description bMessageType DwLength Size of abData field of this message Bslot Identifies the slot number for this command Bseq Sequence number for command AbRFU Reserved for future use Page 13 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 14: Table 3: Pc_To_Rdr_Escape Extended Response

    The CCID will timeout the block after BBWI “this number multiplied by the Block Waiting Time” has expired. This parameter is only used for character level exchanges. wLevelParameter 0000h RFU (TPDU exchange level) Page 14 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 15 Size of extra bytes of this message BSlot Identifies the slot number for this command BSeq Sequence number for command AbRFU 000000h The response to this message is the RDR_to_PC_SlotStatus message. Page 15 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 16: Ccid Command Pipe Bulk-In Message

    01h = Clock stopped in state L bClockStatus 02h = Clock stopped in state H 03h = Clock stopped in an unknown state All other values are RFU Page 16 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 17 Slot status and error register as defined in bError Section 3.7 bRFU Depending on its corresponding extended Byte abData command, the data responded by ACR89 array vary and are specified in Section 3.5.4. Page 17 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 18: Extended Command Pipe Message Compatible With Acr89

    In contrast to CCID/USB practice, big endian will be adopted in extended command portion. Extended Command Extended Command Extended Command CCID Header Header (5 bytes) Data (10 bytes) CCID PC_to_RDR_Escape Message Figure 2: CCID PC_to_RDR_Escape Message Page 18 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 19: Commands Detail

    This command sets the LCD position cursor to a new position. This command context is slot independent. Offset Field Name Type Size Value Description BcmdCode Size of command data (in wCmdLength 0002h big endian) Page 19 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 20 All other values are RFU Byte Character string of encoding format AbData Ascii stated in bCharCoding field array The response to this command is the ACR89_to_PC_DisplayStatus message. Page 20 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 21: Figure 3: Pc_To_Acr89_Displaygraphic - Bitmap Format

    The response to this command is the ACR89_to_PC_DisplayStatus message. 3.5.2.6. PC_to_ACR89_SetContrast This command sets the contracts level of the LCD. This command context is slot independent. Offset Field Name Type Size Value Description Page 21 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 22 The response to this command is the ACR89_to_PC_TimeStamp message. 3.5.2.9. PC_to_ACR89_SetRTC This command sets the real time clock value of the build-in real time clock to a specified value. This command context is slot independent. Page 22 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 23 ‘R’ – read EEPROM 00 – Slave EEPROM BDeviceNumber 01- Chinese Font EEPROM (Rfu) AbAddress Address of EEPROM (in big endian) Length of Data (Write/Read) (in big wDataLength Var… endian) Page 23 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 24 Not less than bStartBlockNum The response to this command is the ACR89_to_PC_ExMemStatus message. Note: The current size of one flash block is 64k bytes. Page 24 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 25 3.5.2.17. PC_to_ACR89_ AuthInfo This command reads RomID and RomData. Offset Field Name Type Size Value Description bCmdCode Command Code AbRFU 00…00h The response to this command is the ACR89_to_PC_AuthInfo message. Page 25 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 26: Extended Command Pipe Bulk-In Message

    In contrast to CCID/USB practice, big endian will be adopted in extended response portion. Extended Response Extended Response Extended Response CCID Header Header (5 bytes) Data (10 bytes) CCID RDR_to_PC_Escape Message Figure 4: CCID RDR_to_PC_Escape Message Page 26 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 27: Messages Detail

    MM, DD, HH, MI and SS 3.5.4.4. ACR89_to_PC_Echo This message is sent by ACR89 in response to PC_to_ACR89_Buzzer, PC_to_ACR89_SetLED and PC_to_ACR89_ExitScriptMode commands. Offset Field Size Value Description bRespType Page 27 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 28 Error code (please refer to later bErrorCode section) wInfoLength Size of bInfoData (in little endian) Firmware version information bInfoData (ASCII) Note: The wInfoLength is zero when there is no valid version information. Page 28 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 29 Error code (please refer to later bErrorCode section) AbRFU 0000h AbRomID Unique ID AbRFU Note: There will be no parts from offset 15 when command failed. Page 29 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 30: Extended Command Response Codes And Return States

    ADDRESS_ERROR Address parameter is not correct FRAME_ERROR Command frame format is not correct CHECKSUM_ERROR Check sum for data part is not correct Table 7: Extended Command Error Codes Page 30 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 31: Ccid Interrupt-In Message

    Bit 3 = Slot 1 changed status Bit 4 = Slot 2 current state Bit 5 = Slot 2 changed status Bit 6 = 0b Bit 7 = 0b Page 31 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 32: Ccid Error And Status Code

    Tried running a command that the current INVALID_MODE operation mode does not allow Reserved for future use (All the rest unmentioned values) Table 8: CCID Error and Status Code Page 32 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 33: Software Design

    ATR for MIFARE 1K = {3B 8F 80 01 80 4F 0C A0 00 00 03 06 00 01 00 00 00 00 6Ah} Initial Card Length Standard Header Name A0 00 00 00 00 03 00 00h Page 33 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 34 [00 03h] (MIFARE Ultralight) [00 26h] (MIFARE Mini) [F0 04h] Topaz and Jewel [F0 11h] FeliCa 212K [F0 12h] FeliCa 424K [FF 28h] JCOP 30 FF SAK undefined tags Page 34 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 35: Table 10: Iso 14443 Part 4 Atr Format

    = 3B 88 80 01 12 53 54 4E 33 81 C3 00 Application Data of ATQB 12 53 54 4Eh Protocol info of ATQB 33 81 C3h Page 35 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 36: Pseudo Apdus For Contactless Interface

    4.1.2. Pseudo APDUs for Contactless Interface 4.1.2.1. Direct Transmit with ACR89U-A2 Format To send a Pseudo APDU (Contactless Chip and Tag commands), and the Response Data will be returned. Direct Transmit Command Format (Length of the Contactless Chip and Tag Command + 5 Bytes)
  • Page 37 106 Kbps InnoVision Jewel tag This field is not used. Data Out Contactless Chip and Tag Response. Contactless Chip and Tag Response returned by the reader. Page 37 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 38 (optional) 1 byte 1 byte 1 byte 8 bytes 2 bytes bytes POL_RES (18 or 20 bytes) 106 Kbps Innovision Jewel tag SENS_RES JEWELID[] (2 bytes) (4 bytes) Page 38 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 39: Table 11: Direct Transmit Response Codes

    The TAG does not response. The checksum of the Response is Checksum Error 63 27h wrong. Parameter Error 63 7Fh The TAG Command is wrong. Table 11: Direct Transmit Response Codes Page 39 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 40 To get the serial number of the connected PICC: UINT8 GET_UID[5]={FFh, CAh, 00h, 00h, 00h} Example 2: To get the ATS of the connected ISO 14443 A PICC UINT8 GET_ATS[5]={FFh, CAh, 01h, 00h, 00h}; Page 40 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 41 Example: Load a key {FF FF FF FF FF FFh} into the key location 00h. APDU = {FF 82 00 00 06 FF FF FF FF FF FFh} Page 41 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 42 Response Data Out Result Load Authentication Keys Response Codes Results SW1 SW2 Meaning Success 90 00h The operation is completed successfully. Error 63 00h The operation has failed. Page 42 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 43: Table 12: Mifare 1K Memory Map

    Sector 32 80h ~ 8Eh Sector 33 90h ~ 9Eh Bytes Sector 38 E0h ~ EEh Sector 39 F0h ~ FEh Table 13: MIFARE 4K Memory Map Page 43 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 44: Table 14: Mifare Ultralight Memory Map

    Data32 Data33 Data34 Data35 Data read/write Data36 Data37 Data38 Data39 Data read/write Data40 Data41 Data42 Data43 Data read/write Data44 Data45 Data46 Data47 Table 14: MIFARE Ultralight Memory Map Page 44 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 45 APDU = {FF B0 00 Example 3: Read 16 bytes from binary Page (MIFARE Ultralight) (Pages 4, 5, 6 and 7 will be read) APDU = {FF B0 00 Page 45 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 46 10 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0Fh} Example 2: Update the binary block of MIFARE Ultralight with Data {00 01 02 03h} APDU = {FF D6 00 04 00 01 02 03h} Page 46 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 47 Response Data Out Result Value Block Operation Response Codes Results SW1 SW2 Meaning Success 90 00h The operation is completed successfully. Error 63 00h The operation has failed. Page 47 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 48 Example 2: Decimal 1 = {00h, 00h, 00h, 01h} Value Read Value Block Response Codes Results SW1 SW2 Meaning Success 90 00h The operation is completed successfully. Error 63 00h The operation has failed. Page 48 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 49 APDU = {FF D7 06h} Example 4: Increment the value block by “5” APDU = {FF D7 00 00 00 05h} Answer: 90 00h [$9000] Page 49 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 50 4.1.2.4. Access PC/SC Compliant Tags (ISO 14443-4) All ISO 14443-4 compliant cards (PICCs) would understand the ISO 7816-4 APDUs. The ACR89U-A2 Reader needs to communicate with the ISO 14443-4 compliant cards through exchanging ISO 7816-4 APDUs and Responses. ACR89U-A2 will handle the ISO 14443 Parts 1-4 Protocols internally.
  • Page 51 Class = 80h; INS = B2h; P1 = 80h; P2 = 00h; Lc = None; Data In = None; Le = 08h Answer: 00 01 02 03 04 05 06 07h [$9000] Page 51 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 52: Appendix A. Basic Program Flow For Contactless Applications

    Turn off the antenna power: FF 00 00 00 04 D4 32 01 00h • Turn on the antenna power: FF 00 00 00 04 D4 32 01 01h Page 52 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 53: Appendix B. Access Mifare Desfire Tags (Iso 14443-4)

    APDU = {0A 00h} Answer: AF 25 9C 65 0C 87 65 1D D7h [$1DD7] In which, the first byte “AFh” is the status code returned by the MIFARE DESFire Card. Page 53 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 54 1. If the response length is less than 2, the status code [90 00h] will be added in order to meet the requirement of PC/SC. The minimum response length is 2. Page 54 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk...
  • Page 55: Appendix C. Access Felica Tags (Iso 18092)

    Data Exchange Response. Note: The NFC ID can be obtained by using the APDU “FF CA 00 00 00h.” Please refer to the FeliCa specification for more detailed information. Page 55 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 56: Appendix D. Access Nfc Forum Type 1 Tags (Iso 18092)

    >> 11 48 18 26 .. 00h [90 00h] Step 3: Update the memory address (Block 1: Byte-0) with the data << 53 >> FFh [90 00h] In which, Response Data = FFh Page 56 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk Version 1.01...
  • Page 57: Figure 5: Topaz Memory Map

    Example 2: Memory Address 10h = 2 x 8 + 0 = Block 2: Byte-0 = Data8 MIFARE, MIFARE Classic, MIFARE DESFire and MIFARE Ultralight are trademarks of NXP B.V. Page 57 of 57 ACR89U-A2 – Reference Manual info@acs.com.hk www.acs.com.hk...

Table of Contents