Mifare APDU

Download as pdf or txt
Download as pdf or txt
You are on page 1of 22

Features

Compact size module and ANT Card read/write frequency : 13.56Mhz5% Power consumption : 5[V]/300[] Reading distance : ~ 50mm Operating Temperature : -10 ~ 70 Storage Temperature : -25 ~ 80 Serial communication controlled (RS-232C/9600bps/8BIT/1STOP/NONE PARITY) ANTI-Collision procedure support. Based on ISO/IEC-14443A&B PCD and PICC Data transmit& Receive capacity is 256bytes(ISO-14443A&B) Available PICC (VICC) : Mifare standard, ISO-14443A&B

Total bit length

STX

Bit_Len_high

Bit_Len_low

Command

Data

BCC

ETX

Exclusive OR

HOST
Total bit length

STX

Bit_Len_high

Bit_Len_low

Status

Response

BCC

ETX

Exclusive OR

1-1. Response status list


Status 0X00 0X01 0X02 0X03 0X04 0X05 0X06 0X80 Result Command operating Success Type-A PICC Select error Type-A PICC Anti-collision error Type-A PICC Request error Type-A or B PICC (VICC) no response Type-A or B CRC error Type-A or B PICC Receive Frame error PCD Command not found Remark

0X81

Communication error

2. Communication
Set up each operating time according to ISO-14443. 2-1. RF Field Control Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X20 1 Status 1 Time 1 BCC 1 BCC 1 ETX 1 ETX 1

Response

RF FIELD
(RF Carrier Frequency)

RF FIELD
(RF Carrier Frequency)

Time []

In case of Time = 0X00 , RF field is OFF. 2-2. LED1 ON Host


STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X11 1 Status 1 BCC 1 BCC 1 ETX 1 ETX 1

Response

2-3. LED1 OFF Host


STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X12 1 Status 1 BCC 1 BCC 1 ETX 1 ETX 1

Response

2-4. LED2 ON Host


STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X13 1 Status 1 BCC 1 BCC 1 ETX 1 ETX 1

Response

2-5. LED2 OFF Host


STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X14 1 Status 1 BCC 1 BCC 1 ETX 1 ETX 1

Response

3. Mifare (Type-A)
3-1. Configuration Command Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X61 1 Status 1 BCC 1 BCC 1 ETX 1 ETX 1

Response

The operating is available after initializing of the circuit of RF driver/receiver in the reader/writer. 3-2. Request A & anti-collision/select (Ready state) Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X30 1 Status 1 BCC 1 ETX 1 UID 4 Status 1 SAK 1 BCC 1 BCC 1 ETX 1 ETX 1

Response
ATQA 2

Or

STX 1

Bit_Len_high 1

Bit_Len_low 1

Processing sequence between Reader and card


PCD REQA Anti-collision SELECT

PICC

ATQA 2bytes

UID 4Bytes

SAK 1Bytes

ISO-14443-3

Note) In case that the multiple PICCs are in the RF field, the PCD is settled according to the Anticollision sequence of ISO-14443.

3-3. Request A & anti-collision/select (Ready state) Host


STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X33 1 Status 1 BCC 1 ETX 1 UID 4 Status 1 SAK 1 BCC 1 BCC 1 ETX 1 ETX 1

Response
ATQA 2

Or

STX 1

Bit_Len_high 1

Bit_Len_low 1

Processing sequence between Reader and card


PCD WUPA Anti-collision SELECT

PICC

ATQA 2bytes

UID 4Bytes

SAK 1Bytes

ISO-14443-3

Note) In case that the multiple PICCs are in the RF field, the PCD is settled according to the Anticollision sequence of ISO-14443. 3-4. Halt Command Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X39 1 Status 1 BCC 1 BCC 1 ETX 1 ETX 1

Response

This command is to halt the function of the Card Among the multiple cards, it is to be used to halt the function of the Card that is under currently operating for the purpose of reading of another card. Also it is to be used in case that the operating of Card is completed. 3-5. Authentication1A Command (Key Type A) Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X62 1 Status 1 Block 1 BCC 1 KeyA0 KeyA5 6 ETX 1 BCC 1 ETX 1

Response

This command is for authentication of the Card and the Card is to be authenticated through the Key of 6 Byte. The Key inside of the card is composed of Key-A and Option Key-B and this command is for KEY-A Authentication. For more details, refer to Mifare Standard card in MF1 IC S50

3-6. Authentication1B Command (Key Type B) Host


STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X63 1 Status 1 Block 1 BCC 1 KeyB0 KeyB5 6 ETX 1 BCC 1 ETX 1

Response

This command is for authentication of the card and the card is to be authenticated through the Key of 6 Byte (Mifare standard).
The Key inside of the card is composed of Key-A and Option Key-B. It is for KEY-B Authentication. For more details, refer to Mifare Standard card in MF1 IC S50.

3-7. Authentication2 Command (Crypto1 Algorithm ON) Host


STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X64 1 Status 1 BCC 1 BCC 1 ETX 1 ETX 1

Response

This command is to start the cryptography between the card and reader and always can be operated after that the Authentication 1 Command is operated and authenticated only. For more details, refer to Mifare Standard card in MF1 IC S50 3-8. Read Block Command Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X65 1 Status 1 BLOCK 1 BCC 1 ETX 1 BCC 1 ETX 1

Response
Read Block Data 16

This command is to read the data on the Card. The length of Read Data is always Block unit and 1 Block is composed of 16 Byte. The Read/Write commands are available only in the Block of Sector that is defined at authentication 1 and Authentication 2 after that the operation of Authentication 1, Authentication 2 is completed. 3-9. Write Block Command Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X66 1 Status 1 BLOCK 1 BCC 1 Write Block Data 16 ETX 1 BCC 1 ETX 1

Response

This command is to write the data on the Card. The length of Write Data is always Block unit and 1 Block is composed of 16 Byte. The Read/Write commands are available only in the Block of Sector that is defined at

Authentication 1 and Authentication 2 after that the operation of Authentication 1, Authentication 2 is completed. 3-10. Write-E2 Command Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X67 1 Status 1 E2 Start Address 1 BCC 1 ETX 1 Data 6 BCC 1 ETX 1

Response

It is to write the Key or data on the EEPROM inside of the Card Reader. As the Key coming from outside could be flowed out, it prevent the Key from the out-flowing by means of writing the Key on the EEPROM inside of the Card Reader. The Block Address is to be written so as to be located with the Key of the Card on the basis of 6 Byte internally. 3-11. AuthenticationE2 Command Host
Bit_Len_high 1 Authentication Block 1 STX 1 Bit_Len_low 1 BCC ETX 1 1 0X68 1 Key Type 1 E2 Start Address 1

Response
STX 1 Bit_Len_high 1 Bit_Len_low 1 Status 1 BCC 1 ETX 1

Authentication E2 Command can operate the Authentication 1 without out-flowing of the data to outside using the internal EEPROM of the Card Reader. Using the EEPROM Key Buffer structure as mentioned above, it can be stored in production or before outgoing. Also if necessary, it can be modified to the goods under operation Key_Type (00H : Authentication1A, 01H : Authentication1B) Note : WriteE2 or AuthenticationE2 Command supports Mifare standard card key format 3-12. Increment & Transfer Command (based on Mifare standard card) Host
STX Bit_Len_high Bit_Len_low 1 1 1 Increment Value BCC ETX 4 1 1 0X69 1 Block 1 Transfer Address 1

Response
STX 1 Bit_Len_high 1 Bit_Len_low 1 Status 1 BCC 1 ETX 1

Mifare supports the function of Debit(Value) card and it enables us to do e-payment. It is used as the command for increment or decrement of fixed value with 4byte of value byte in case of Mifare. BLOCK structure
B0 B1 B2 VALUE B3 B4 B5 B6 ~VALUE B7 B8 B9 B10 VALUE B11 B12 ADR B13 ~ADR B14 ADR B15 ~ADR

Note) when using it as Debit(value) card, it is necessary to define the trailer access byte as value block in every sector. PICC Data maximum bytes: 32bytes Increment Value: 4byte value for increment Transfer_Address: transfer the value of card data register to the memory area of the card. 3-13. Decrement & Transfer Command (based on Mifare standard card) Host
STX Bit_Len_high Bit_Len_low 1 1 1 Decrement Value BCC ETX 4 1 1 0X6A 1 Block 1 Transfer Address 1

Response
STX 1 Bit_Len_high 1 Bit_Len_low 1 Status 1 BCC 1 ETX 1

Mifare supports the function of Debit(Value) card and it enables us to do e-payment. It is used as the command for increment or decrement of fixed value with 4byte of value byte in case of Mifare. BLOCK structure
B0 B1 B2 VALUE B3 B4 B5 B6 ~VALUE B7 B8 B9 B10 VALUE B11 B12 ADR B13 ~ADR B14 ADR B15 ~ADR

Note) when using it as Debit(value) card, it is necessary to define the trailer access byte as value block in every sector. PICC Data maximum bytes: 32bytes Increment Value: 4byte value for increment Transfer_Address: transfer the value of card data register to the memory area of the card. Decrement_Value: as the 4byte value, it is for the processing with the value of PICC value block. 3-14. Restore Command (based on Mifare standard card) Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X6B 1 Status 1 Block 1 BCC 1 BCC 1 ETX 1 ETX 1

Response

Read the contents of block into the communication port PICC Data maximum bytes: 32bytes Restore the processing result of PICC or the value of value block to the data register of PICC. Command Review Command Increment Decrement Transfer Description Increments the contents of a Block and stores the result in the Internal data register Decrements the contents of a Block and stores the result in the Internal data register Writes the contents of the internal Data register to a block

Restore 3-15. Read Sector Host


STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1

Read the contents of block into the internal data register

Bit_Len_low 1 Bit_Len_low 1

0X6C 1 Statu s 1

Sector 1

BCC 1

ETX 1 BCC 1 ETX 1

Response
Secter Read Data 64

Read the data of PICC as the unit of sector. Sector is based on the sector of Mifare. 1 sector is composed of 64byte. The sector that can be read by Read sector command means the sector that included the address of block defined when Authentication-1.

4. Reference
4-1. Card Reader (PCD) Operating Procedure(Mifare) CASE 1 1. Configuration Command send 2. RF Field Control Command send 3. Request A & Anti-Collision/Select Command send 4. In case Status and .ATQA , UID , SAK confirmation ERROR, retry from No. 2 5. In case Authentication1A , Authentication1B , AuthenticationE2 Command ERROR, retry from No. 2 6. In case Authentication2 Command Error, retry from No. 2 7. Read/Write/Increment & transfer /Decrement & transfer/Restore operation 8. In case Halt Command send, operate from No. 3, operation repeatedly 4-2. Mifare Standard Card Structure The capacity of Mifare Standard Card is 1 Kbytes and it is composed of Block structure. 1 Block is composed of 16 Byte. 4 Block is 1 Sector. The high-ranking Block 16 Byte in each Sector is composed of the Trailer consisting of the Sector characteristic. Each Trailer has the Key-A, Key-B(Option) & Access Byte and each Sector can be accessed by the authorized Key. The Block 0 in Sector 0 is read only block and stores the manufacturing data of the Card. Ex) Sector 0 is composed of Block 0, Block 1, Block2 & Block3 and Block 3 is Trailer Block. 4-3. EEPROM Key Buffer structure This structure is composed of the Block structure of 6 Byte and available for write only. The Address of EEPROM Key Buffer is optional to set by the User, but the data that would be written at EEPROM Key Buffer should be 6 Byte always. This structure is for easy data writing as the structure of Key-A and Key-B on the Card is composed of 6 Byte. Also, thats because the Key location should be setting by Users own right. The capacity of Key Buffer is 192 Byte and can store maximum 16th Key-A, Key-B considering the Key-A, Key-B with 6 Byte of the Key. It means that it can store all the Key of Mifare Standard Card. EEPADDR can be defined from 00H to 1FH 4-4. PICC INCREMENT/DECRMENT 4-4-1. VALUE BLOCK definition - Write the value of 16byte to the block that is willing to use as VALUE BLOCK according to the block format as described below. BLOCK structure
B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 B10 B11 B12 B13 B14 B15

VALUE

~VALUE

VALUE

ADR

~ADR

ADR

~ADR

The value is 4byte value with the amount of value stored to the VALUE BLOCK at the first time, it should be stored three(3) times by inversion or non-inversion. The ADR should be equal to BLOCK ADDRESS and it should be stored four(4) times with the inverted or non-inverted value. Transfer ADR indicates the BLOCK ADDRESS that result of the processing is to be moved, after completion of INC/DEC command.(Refer to 4-4-2.). - Write the trailer of sector that is included designated BLOCK by VALUE BLOCK. - In this moment, the value of SECTOR TRAILER refers to the specification of Mifare Standard Card in MF1 IC S50. Note) The Key-B of SECTOR TRAILER should be set not to be read when SECTOR TRAILER READ. - Operates INCREMENT/DECREMENT. 4-4-2. VALUE BLOCK structure

SECTOR2~15
SECTOR1 SECTOR1 SECTOR1 SECTOR1 SECTOR0 SECTOR0 SECTOR0 SECTOR0 BLOCK7 BLOCK6 BLOCK5 BLOCK4 BLOCK3 BLOCK2 BLOCK1 BLOCK0 SECTOR TRAILER VALUE BLOCK SECTOR TRAILER

VALUE 4BYTE

INC/DEC

PRODUCT BLOCK

INC/DEC TRANSFER RESTORE TEMP REGISTER

4-5. Abbreviation UID : Unique identification CT : Cascade Tag PCD : Proximity coupling device ATQ : Answer to request MFout: Mifare output REQB: Request type B

PICC SAK MFin REQA RFU BLK

: Proximity integrated chip card : Select acknowledged : Mifare input : Request type A : Reserved for future use : Block

5. Type A
5-1. Configuration Command Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X61 1 Status 1 BCC 1 BCC 1 ETX 1 ETX 1

Response

The operating is available after initializing of the circuit of RF driver/receiver in the reader/writer. 5-2. Request A & anti-collision/select (Ready state) Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X30 1 Status 1 BCC 1 ETX 1 UID 4 Status 1 SAK 1 BCC 1 BCC 1 ETX 1 ETX 1

Response
ATQA 2

Or

STX 1

Bit_Len_high 1

Bit_Len_low 1

Processing sequence between Reader and card


PCD REQA Anti-collision SELECT

PICC

ATQA 2bytes

UID 4Bytes

SAK 1Bytes

ISO-14443-3

Note) In case that the multiple PICCs are in the RF field, the PCD is settled according to the Anticollision sequence of ISO-14443. 5-3. Request A & anti-collision/select (Ready state) Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X33 1 Status 1 BCC 1 ETX 1 UID 4 Status 1 SAK 1 BCC 1 BCC 1 ETX 1 ETX 1

Response
ATQA 2

Or

STX 1

Bit_Len_high 1

Bit_Len_low 1

Processing sequence between Reader and card


PCD WUPA Anti-collision SELECT

PICC

ATQA 2bytes

UID 4Bytes

SAK 1Bytes

ISO-14443-3

Note) In case that the multiple PICCs are in the RF field, the PCD is settled according to the Anticollision sequence of ISO-14443. 5-4. Halt Command Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X39 1 Status 1 BCC 1 BCC 1 ETX 1 ETX 1

Response This command is to halt the function of the Card Among the multiple cards, it is to be used to halt the function of the Card that is under currently operating for the purpose of reading of another card. Also it is to be used in case that the operating of Card is completed. 5-5. Active PICC 5-5-1. Request for answer to select (RATS) command Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 Bit_Len_high 1 0X31 1 RATS (0XE0) 1 Parameter 1 BCC 1 ETX 1 ETX 1

Response
Status 1 ATS Ref. ISO-14443-4 Status 1 BCC 1 BCC 1 ETX 1

Or

STX 1

Bit_Len_low 1

RATS Command is composed of Start byte and Parameter byte and includes Error check code CRC-A. Start byte: 0XE0 Parameter: FSDI+CID
D8 D7 D6 D5 D4 D3 D2 D1

CID (Card identification) FSD I *ATS(Answer to select) : refer to the ISO-14443 standard.

5-5-2. Protocol and Parameter Selection Request Host


STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X31 1 Status
1

PPSS 1 PPSS
1

PPS0 1 BCC 1

PPS1 1 ETX 1

BCC 1

ETX 1

Response

Or
PPSS D8 1

STX 1 D7 1 D6 0

Bit_Len_high 1 D5 1 D4

Bit_Len_low 1 D3 D2

Status 1 D1

BCC 1

ETX 1

CID Shall be set to 1, 0 is RFU Shall be set to 0, 1 is RFU Shall be set to (11), all other values are RFU PPS0
D8 0 D7 0 D6 0 D5 D4 0 D3 0 D2 0 D1 1

Shall be set to 1, 0 is RFU Shall be set to (000), all other values are RFU PPS1 Transmitted, if bit is set to 1 Shall be set to (000), all other values are RFU PPS1
D8 0 D7 0 D6 0 D5 0 D4 D3 D2 D1

DRI DSI Shall be set to (0000), all other values are RFU

5-5-3. Active commands - Half duplex block transmission format PCB 1byte
Prologue field CID NAD 1byte 1byte Information field INF Epilogue field EDC 2byte

Error detect code FSD/FSC

Host
STX 1 STX 1
Bit_Len_high Bit_Len_low

1 Bit_Len_high 1

1 Bit_Len_low 1

0X31 1

PCB 1

CID 1

NAD 1 Data

INF
Ref. ISO-14443-4,5

BCC 1

ETX 1

Response
Status 1
Ref. ISO-14443-4,5

BCC 1

ETX 1

Or

STX 1

Bit_Len_high 1

Bit_Len_low 1

Status 1

BCC 1

ETX 1

Coding of I-block PCB


D8 0 D7 0 D6 0 D5 D4 D3 D2 D1

Block of number Shall be set to 1 NAD following, if bit is set to 1 CID following, if bit is set to 1 Chaining, if bit is set to 1 Shall be set to 0, 1 is RFU I-Block

Coding of R-block PCB


D8 1 D7 0 D6 1 D5 0 D4 D3 0 D2 1 D1

Block of number Shall be set to 1, 0 is RFU Shall be set to 0 CID following, if bit is set to 1 ACK if bit is set to 0 NAK, if bit is set to 1 Shall be set to 0, 1 is RFU R-Block Coding of S-block PCB
D8 1 D7 1 D6 D5 D4 D3 0 D2 1 D1 0

Shall be set to 0, 1 is RFU Shall be set to 1, 0 is RFU Shall be set to 0 CID following, if bit is set to 1 (00) DESELECT or (11) WTX S-Block

Coding of card identifier


D8 D7 D6 0 D5 0 D4 D3 D2 D1

CID Shall be set to (00), all other values are RFU Power level indication

CRC-A is transmitted to the Host in the Receive data frame CRC-A is transmitted together with the data when the calculated result inside Reader is equal to the received value. If it is not equal to the received value, CRC Error code is generated at Status byte and the data is not transmitted. CRC-A is not included in the Transmit data frame. Calculation of CRC-A is settled inside Reader and CRC-A is included in the data when transmitting to the PICC.

5-5-4. Type-A Dummy command Host


STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 Bit_Len_high 1 0X32 1 Status 1 Bit_Len_low 1 Data N Bytes Data N Bytes Status 1 BCC 1 ETX 1 ETX 1

Response
STX 1 BCC 1 BCC 1 ETX 1

Or

STX 1

No calculation of CRC or BCC related to PICC inside Reader. Calculation of CRC and BCC should be done separately with the information on the data field.

6. TYPE B
6-1. Type-B Setting Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0X22 1 Status 1 SOF_LOW 1 BCC 1 ETX 1 SOF_HIGH 1 EOF 1 EGT 1 BCC 1 ETX 1

Response

Type-B Setting command is set up by the transmission protocol stipulated to the ISO-14443-B. When the PCD is power ON, the PCD is as follows. SOF_ LOW: 11(0X0B) SOF_HIGH=3(0X03) EGT : 2(0X02) EOF=10(0X0A)
10ETU 9ETU MSB STOP

START LSB

10ETU,11ETU 2,3 ETU 11ETU 2ETU SOF_LOW SOF_HIGH SOF

10ETU 2ETU EGT

2ETU 11ETU EOF

10ETU,11ETU

1ETU=(1/fc)*128=9.438usec Note: 0X01SOF_LOW0X0F, 0X01SOF_HIGH0X0F, 0X01EOF0X0F, 0X01EGT0X0F 6-2. Type-B Active1 command 6-2-1. Request B Command Host
STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 Bit_Len_high 1 0x41 1 Apf 1 AFI 1 Parameter
1(Ref. ISO-14443-3)

BCC 1 ETX 1

ETX 1

Response
Status 1 ATQB
14(Ref. ISO-14443-3)

BCC 1 ETX 1

Or

STX 1

Bit_Len_low 1

Status 1

BCC 1

Request B command frame format

1 byte APf

st

nd

byte AFI

3 byte PARAM (Parameter)

rd

4 , 5 bytes CRC_B

th

th

In case of Type B PICC, PICC is set to Active State through Attrib command after PICC request. The procedure of Request command can be done by the transmission of the code of APf, AFI, Parameter, etc in the data frame to the Reader. Anti-collision prefix byte APf is 05H(0000 0101) b AFI Coding
AFI Most signification Half byte 0 X X 0 1 2 3 4 5 6 7 8 9-F AFI Least signification Half byte 0 0 Y Y 0.Y 0,Y 0,Y 0,Y 0,Y 0,Y 0,Y 0,Y 0,Y Meaning PICCs respond from All families and subfamilies All sub-families of families X Only the Yth sub-families Y only Proprietary sub-family Y only Transport Financial Identification Telecommunication Medical Multimedia Gaming Data storage RFU Examples/note

No application preselection Wide application preseletion

Mass transit, Bus, Airline IEP,Banking, retail Access control Public telephony, GSM Internet service.. Portable files

Note : X=1 to Y=1 to F Coding parameter


B8 B7 RFU B6 B5 B4 REQB/WUPB B3 B2 B1 N(Number of slots)

All RFU bits shall be set to 0 B4=0 defines REQB: PICCs in idle state or ready state shall process this command B4=1 defines WUPS: PICCs in idle state or ready state or HALT state shall process this command B1, B2 and B3 are used to code the number of slot N according to table
B3 0 0 0 0 1 1 1 B2 0 0 1 1 0 0 1 B1 0 1 0 1 0 1 X N 1=2^0 2=2^1 4=2^2 8=2^3 16=2^4 RFU RFU

ATQB Response is ATQB 12bytes + CRC-B 2bytes ATQB Response format


1 50H
st

2 ,3 ,4 ,5 Identifier 4bytes(PUPI)

nd

rd

th

th

6 ,7 ,8 ,9 Application data 4bytes

TH

TH

TH

TH

10 ,11 ,12 Protocol info

th

th

th

13 ,14 CRC_B 2bytes

th

th

6-2-2. Slot marker Command Host


STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 0x41 1 Status 1 Slot marker
1(Ref. ISO-14443-3)

BCC 1

ETX 1 ETX 1

Response
ATQB
14(Ref. ISO-14443-3)

BCC 1 ETX 1

Or
1
ST

STX 1
nd

Bit_Len_high 1
rd

Bit_Len_low 1

Status 1

BCC 1

byte APn

2 ,3 bytes CRC_B

Apn = (nnnn 0101)b nnnn+1= slot number ATQB Response is ATQB 12bytes + CRC-B 2bytes ATQB Response format
1 50H
st

2 ,3 ,4 ,5 Identifier 4bytes(PUPI)

nd

rd

th

th

6 ,7 ,8 ,9 Application data 4bytes

th

th

th

th

10 ,11 ,12 Protocol info

th

th

th

13 ,14 CRC_B 2bytes

th

th

6-2-3. Attrib PICC Host


STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 Bit_Len_high 1 0x41 1 ATTRIB
Ref. ISO-14443-3

BCC 1

ETX 1 BCC 1 ETX 1 ETX 1

Response
Status 1 ATTRIB Response
Ref. ISO-14443-3

Or

STX 1

Bit_Len_low 1

Status 1

BCC 1

Attrib PICC frame format


1st 1DH 2nd,3rd,4th,5th Identifier 4bytes 6th Param1 1byte 7th Param2 1byte 8th Param3 1byte 9th Param4 1byte 10th High layer INF CRC_B 2bytes

Identifier This identifier is the value if the PUPI sent by the PICC in the ATQB Param4
B8 B7 Minimum TR0 B3 0 1 B6 0 Param20 B8 1 0 1 B6 B5 Minimum TR1 B4 EOF B3 SOF B2 B1 RFU B4 0 1 EOF requires Yes No

SOF requires Yes B8 B7 No 0 0 B5 Minimum TR1 0 1 0 Default value 1 0 1 64/Fs B70 B6 B5 B4 B3 B1 16/Fs 1 B2 1 01 0 RFU 0 Maximum frame size(byte) 0 1 2 3 4 5

Minimum TR0 Default value 48/Fs 16/Fs

RFU
6 7 8 9~F

Maximum frame size code in ATTRIB

Maximum frame size(byte)


B6 0 0 1 1 B8 0 0 1 1 B5 0 1 0 1 B7 0 1 0 1

16

24

32

40

48

64

96

128

256

256

Meaning PCD to PICC, 1ETU=128/Fc, bit rate is 106kbps PCD to PICC, 1ETU=64/Fc, bit rate is 212kbps PCD to PICC, 1ETU=32/Fc, bit rate is 424kbps PCD to PICC, 1ETU=16/Fc, bit rate is 847kbps Meaning PICC to PCD, 1ETU=128/Fc, bit rate is 106kbps PICC to PCD, 1ETU=64/Fc, bit rate is 212kbps PICC to PCD, 1ETU=32/Fc, bit rate is 424kbps PICC to PICD, 1ETU=16/Fc, bit rate is 847kbps

Param3 B4=B3=B2=0, B1=1 then PICC compliant with ISO/IEC14443-4 B4=B3=B2=B1=0 then PICC not compliant with ISO/IEC14443-4 B8=B7=B6=B5=0 Param4
B8 0 B7 0 B6 0 B5 0 B4 B3 B2 B1 CID(Card identification)

B4=B3=B2=B1=1 then RFU Answer to attrib command


1 MBLI
st

CID

2 . bytes Higher layer response

nd

CRC-B

6-2-4. HLTB Command & answer Host


STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 Bit_Len_high 1 0x41 1 HLTB Cmd(0x50) 1 PUPI 4 BCC 1 ETX 1 ETX 1

Response
Status 1 HLTB Response 1 Status 1 BCC 1 BCC 1 ETX 1

Or HLTB Command
1 byte 50H
st

STX 1

Bit_Len_low 1

2 ,r3d,4 ,5 bytes Identifier (4bytes) PUPI 2 ,3 bytes CRC-B 2bytes


nd rd

nd

th

th

6 ,7 bytes CRC-B

th

th

Answer

1 byte 00

st

6-2-5. Active command Half duplex block transmission format PCB 1byte
Prologue field CID NAD 1byte 1byte Information field INF Epilogue field EDC 2byte

Error detect code FSD/FSC

6-2-5-1. Type-B Active command Host


STX 1 STX 1 Bit_Len_high 1 Bit_Len_high 1 Bit_Len_low 1 Bit_Len_low 1 Bit_Len_high 1 0X41 1 PCB 1 CID 1 NAD 1 INF
Ref. ISO-14443-4

BCC 1

ETX 1

Response
Status 1 Response
N (Ref. ISO-14443-4)

BCC 1 ETX 1

ETX 1

Or

STX 1

Bit_Len_low 1

Status 1

BCC 1

CRC-B is transmitted to the Host in the Receive data frame CRC-B is transmitted together with the data when the calculated result inside Reader is equal to the received value. If it is not equal to the received value, CRC Error code is generated at Status byte and the data is not transmitted. CRC-B is not included in the Transmit data frame. Calculation of CRC-B is settled inside Reader and CRC-A is included in the data when transmitting to the PICC. 6-2-5-2. Type-B Dummy Send command Host
STX 1 STX Bit_Len_high 1 Bit_Len_high Bit_Len_low 1 Bit_Len_low 0X42 Data Dummy data Data Response BCC 1 BCC ETX 1 ETX

Response 1 Or 1
STX 1

1
Bit_Len_high 1

Status 1

1
BCC 1

1
ETX 1

Bit_Len_low 1

Status 1

7. Dimension

7-1 7-1-1. Connection


Pin number 1 2 3 4 5 Description VCC GND TXD RXD GND Remark 5VDC

7-2.

7-2-1. Connector
Pin number Description Pin number Description

1 2 3 4 5 6 7 8 9 10

VCC (5~3VDC) GND RESET (OUTPUT) RF Clock 13.56(OUTPUT RFU RFU RFU TXD RXD NC

11 12 13 14 15 16 17 18 19 20

NC NC NC ANT-GND ANT-GND ANT-DRV GND NC NC NC

7-3.

7-3-1. Connector Description


Pin number 1 2 3 4 5 6 7 8 9 10 Description VCC(5~3VDC) GND RESET (OUTPUT) RF Clock 13.56(OUTPUT) RFU RFU RFU TXD RXD NC Pin number 11 12 13 14 15 16 17 18 19 20 Description NC NC NC ANT-GND ANT-GND ANT-DRV GND NC NC NC

8. Application circuit diagram (Based)


8-1. Application1

You might also like