Appendix A. Error Codes returned by High Level APIs ..........47 Appendix B. Possible TAG Types ................. 49 Appendix C. USB ID and Drivers for ACR1281U-C8 ............. 50 Appendix D. Standard Program Flow ................51 Appendix E. Physical and Logical Block/Sector Calculation ........52 Page 2 of 52 ACR1281U-C8 –...
Page 3
Table 30 : PICC_RATS Command Description ..................43 Table 31 : FSDI to (Frame Size for Proximity Coupling Device) FSD Conversion ....... 43 Table 32 : Possible TAG Types ......................49 Page 3 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
1.0. Introduction The ACR1281U-C8 is the new version of ACS’s ACR120U Contactless Smart Card Reader. The ACR1281U-C8 USB Protocol defines the interface between the PC and the reader, as well as the ® communication channel between the PC and the supported contactless cards, including Mifare , ISO 14443 Type A and B compatible cards.
2.0. USB Interface The ACR1281U-C8 is connected to a computer through USB as specified in the USB Specification 2.0. The ACR1281U-C8 is working in full speed mode, i.e.12 Mbps. The USB interface is used for firmware upgrade purpose. Signal Function...
Response: From Reader to PC (5 bytes) << Success or Fail >> Response Code Response Status Response Data Length (1 byte) (2 bytes) (2 bytes) INT16 0000h Page 6 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Command: From PC to Reader (0 Bytes) <<No Frame will be sent to Reader>> Response: From Reader to PC (0 Bytes) <<No Frame will be sent to PC>> Page 7 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Response: From Reader to PC (5 Bytes) << Success or Fail >> Response Code Response Status Response Data Length (1 Byte) (2 bytes) (2 bytes) INT16 0000h Page 8 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
// 0xFF = No TAG is being processed. UINT8 FWI; // the current FWI value (time out value) UINT8 RFU; // to be defined UINT16 RFU; // to be defined } ReaderStatus; Page 9 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Page 10
Remark: 1. For UINT32 CardSupported, the LSB is transmitted first. e.g. Byte 0(LSB), Byte 1, Byte 2 & Byte 3(MSB) Page 10 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Response: From Reader to PC (6 bytes) << Success or Fail >> Response Code Response Status Response Data Length Response Data (1 byte) (2 bytes) (2 bytes) (1 byte) INT16 0001h pValue Page 11 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Response Status Response Data length Response Data (1 byte) (2 bytes) (2 bytes) (1 byte) INT16 0001h ValueStored Note: The Response Data (ValueStored) is used for comparison only. Page 12 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Response Data Length Response Data (1 byte) (2 bytes) (2 bytes) (K bytes) INT16 pResponseDataLength (K) pResponseData Note: ACR120_DirectSend() & ACR120_DirectReceive() must be used in a pair. Page 13 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Response Data Length Response Data (1 byte) (2 bytes) (2 bytes) (K bytes) INT16 PReceivedDataLength (K) pReceivedData Note: ACR120_DirectSend() & ACR120_DirectReceive() must be used in a pair. Page 14 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Command: From PC to Reader (0 Bytes) <<No Frame will be sent to Reader>> Response: From Reader to PC (0 Bytes) <<No Frame will be sent to PC>> Page 15 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Response: From Reader to PC (6 bytes) <<Success or Fail>> Response Code Response Status Response Data Length Response Data (1 byte) (2 bytes) (2 bytes) (1 byte) INT16 0001h pEEPROMData Page 16 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Note: The Response Data (EEPROMDataStored) is used for comparison only. Response: From Reader to PC (5 bytes) << Fail>> Response Code Response Status Response Data Length (1 byte) (2 bytes) (2 byes) INT16 (<0) 0000h Page 17 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Bit 0-1: Not Used Bit 2: Buzzer (0 = OFF; 1 = ON) Bit 3-5: Not Used Bit 6: LED (0 = OFF; 1 = ON) Bit 7: Not Used Page 18 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Bit 0-1: Not Used Bit 2: Buzzer (0 = OFF; 1 = ON) Bit 3-5: Not Used Bit 6: LED (0 = OFF; 1 = ON) Bit 7: Not Used Page 19 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Response Status Response Data Length Response Data (1 byte) (2 bytes) (2 bytes) (1 byte) INT16 0001h StateStored Note: The Response Data (StateStored) is used for comparison only. Page 20 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
The login key if keyType = pKey AC_MIFARE_LOGIN_KEYTYPE_A or AC_MIFARE_LOGIN_KEYTYPE_B. It’s AC_MIFARE_KEY_LEN(6) bytes long. Return Value INT16 Result code. 0 means success. Table 20: ACR120_Login Command Description Page 29 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Note: The Response Data (BlockDataStored) is used for comparison only. Response: From Reader to PC (5 bytes) << Fail>> Response Code Response Status Response Data Length (1 byte) (2 bytes) (2 byes) INT16 (<0) 0000h Page 34 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Note: The Response Data (ValueDataStored) is used for comparison only. Response: From Reader to PC (5 bytes) << Fail>> Respons Response Data Response Status e Code length (2 bytes) (1 byte) (2 byes) INT16 (<0) 0000h Page 35 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Note: The Response Data (KeyStored) is used for comparison only. Response: From Reader to PC (5 bytes) << Fail>> Response Code Response Status Response Data Length (1 byte) (2 bytes) (2 byes) INT16 (<0) 0000h Page 36 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Response: From Reader to PC (5 bytes) << Fail>> Respons Response Data Response Status e Code length (2 bytes) (1 byte) (2 byes) INT16 (<0) 0000h Page 39 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
2. In many cases, the status code SW1 and SW2 are the last 2 bytes of the received data. Example: INT16 rHandle; UINT8 SID; BOOT typeA; INT16 xLen, rLen; UINT rData[100]; Page 40 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Result code. 0 means success. Table 30: PICC_RATS Command Description FSDI FSD (in bytes) Otherwise Table 31: FSDI to (Frame Size for Proximity Coupling Device) FSD Conversion Page 43 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Page 44
For the detailed meaning of the error code, please refer to Appendix A.. For detailed meaning of the ATS, please refer to corresponding documents. Note: There is no need for calling this function in Type B cards. Page 44 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
0x01h – Enable RATS During Power On Command Response: From Reader to PC (5 bytes) Response Code Response Status Response Data Length (1 byte) (2 bytes) (2 byes) INT16 (<0) 0000h Page 45 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Operation failed. #Corresponding to the << Response Status ‘F’ >>. ERR_READER_UNKNOWN(-3040, or 0xF420) Reader unknown error. #Corresponding to the << Response Status ‘C’, ‘O’, ‘X’ & ‘?’ >>. Page 47 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Page 48
ERR_READER_VALUE_INVALID_BLOCK(-4033, 0xF03F) Block doesn’t contain value. #Corresponding to the << Response Status ‘F’ >>. ERR_READER_VALUE_ACCESS_FAILURE (-4034, 0xF03E) Value Access failure. #Corresponding to the << Response Status ‘U’ >>. Page 48 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Appendix C. USB ID and Drivers for ACR1281U-C8 • VID_0x072F & PID_0x8003 as the USB ID of ACR1281U-C8 • ACR120US.SYS will be used as the driver name for ACR1281U-C8 • ACR120UT.SYS will be used as the driver name for ACR1281U-C8 Page 50 of 52 ACR1281U-C8 –...
// Assume the Sector is authorized, then “Read data from Block 0x02 of Sector 0x00” ACR120_Read(hReader, 0x02, Data); Some operations. ACR120_Close(hReader); // Close the port and quit the program return; Page 51 of 52 ACR1281U-C8 – Application Programming Interface info@acs.com.hk www.acs.com.hk Version 1.00...
Need help?
Do you have a question about the ACR1281U-C8 and is the answer not in the manual?
Questions and answers