ACR122L – Communication Protocol
Version 1.03
www.acs.com.hk
Page 17 of 57
6.0. Pseudo-APDUs for contactless interface and
peripherals control
ACR122L comes with two primitive commands for this purpose <Class FFh>.
Note:
For all the pseudo-APDUs below (except sections 5.2 – Changing the communication speed
and 5.3 – Get firmware version), STX MUST BE EQUAL to 02h and ETX MUST BE EQUAL to 03h.
6.1. Direct Transmit
This command is used to send a pseudo-APDU (Tag Commands), and returns the length of the
Response Data.
Direct Transmit Command Format (Length of the Tag C 5 Bytes)
Command
Class
INS
P1
P2
Lc
Data In
Direct
Transmit
FFh
00h
00h
00h
Number of
bytes to send
Tag
Command
Data
Where:
Lc
Number of bytes to send (1 Byte).
Maximum 255 bytes.
Data In
Tag Command.
The data to be sent to the tag.
Direct Transmit Response Format (TAG Re Data + 2 Bytes)
Item
Command
Data
Meaning
1
D4 40
Tg
[DataOut[]]
Tag Exchange Data
2
D4 4A
MaxTg BrTy
[InitiatorData[]]
Tag Polling
Where:
Tg
A byte containing the logical number of the relevant target. This byte also
contains the
More Information
(MI) bit (bit 6). When the MI bit is set to 1, this
indicates that the host controller wants to send more data which is all the data
contained in the DataOUT[] array. This bit is only valid for a TPE target.
DataOut
An array of raw data (from 0 up to 262 bytes) to be sent to the target by the
contactless chip.
MaxTg
Maximum number of targets to be initialized by the contactless chip. The chip is
capable of handling 2 targets maximum at once, so this field should not exceed
02h.
Brty
Baud rate and the modulation type to be used during the initialization.
00h: 106 kbps type A (ISO/IEC14443 Type A),
01h: 212 kbps (FeliCa polling),
02h: 424 kbps (FeliCa polling),
03h: 106 kbps type B (ISO/IEC 14443-3B),
04h: 106 kbps Innovision Jewel tag.
InitiatorData[]
An array of data to be used during the initialization of the target(s). Depending on
the Baud Rate specified, the content of this field is different.