The CR95HF is an integrated transceiver IC for contactless applications.
The CR95HF manages frame coding and decoding in Reader mode for standard
applications such as near field communication (NFC), proximity and vicinity standards.
The CR95HF embeds an Analog Front End to provide the 13.56 MHz Air Interface.
The CR95HF supports ISO/IEC 14443 Type A and B, ISO/IEC 15693 (single or double
subcarrier) and ISO/IEC 18092 protocols.
The CR95HF also supports the detection, reading and writing of NFC Forum Type 1, 2, 3
and 4 tags.
Figure 1.CR95HF application overview
1.1 Block diagram
Figure 2.CR95HF block diagram
4/63Doc ID 018669 Rev 8
CR95HFDescription
1.2 List of terms
Table 1.List of terms
TermMeaning
DACDigital analog converter
GNDGround
HFOHigh frequency oscillator
LFOLow frequency oscillator
MCUMicrocontroller unit
NFCNear Field Communication
RFIDRadio Frequency Identification
RFUReserved for future use
SPISerial peripheral interface
t
L
t
REF
UARTUniversal asynchronous receiver-transmitter
WFEWait For Event
Low frequency period
Reference time
Doc ID 018669 Rev 85/63
Pin and signal descriptionsCR95HF
1
17
25
9
VPS_TX
GND_TX
XOUT
XIN
NC
NC
NC
GND
ST_R1
SSI_1
SPI_MISO
SPI_SS
UART_RX / IRQ_IN
VPS
TX1
TX2
NC
NC
RX1
Shaded area represents the dissipation pad.
(Must be connected to ground.)
RX2
NC
GND_RX
NC
NC
NC
SSI_0
SPI_SCK
SPI_MOSI
NC
NC
ST_R0
UART_TX / IRQ_OUT
2 Pin and signal descriptions
Figure 3.Pinout description
Table 2.Pin descriptions
PinPin nameType
(1)
1TX1ODriver output 1
2TX2ODriver output 2
3NCNot connected
4NCNot connected
5RX1IReceiver input 2
6RX2IReceiver input 1
6/63Doc ID 018669 Rev 8
7NCNot connected
8GND_RXPGround (analog)
9ST_R0OST Reserved
10NCNot connected
11NCNot connected
12UART_RX / IRQ_IN
13VPSPMain power supply
14UART_TX / IRQ_OUT
(3)
I
UART receive pin
O UART transmit pinInterrupt output
Main functionAlternate function
(2)
(4)
Interrupt input
CR95HFPin and signal descriptions
Table 2.Pin descriptions (continued)
PinPin nameType
15SPI_SS
16SPI_MISOO SPI Data, Slave Output
17SPI_MOSII SPI Data, Slave Input
18SPI_SCKI
19SSI_0I
20SSI_1I
21ST_R1I
22GNDPGround (digital)
23NCNot connected
24NCNot connected
25NCNot connected
26NCNot connected
27NCNot connected
28NCNot connected
29XINCrystal oscillator input
30XOUTCrystal oscillator output
31GND_TXPGround (RF drivers)
32VPS_TXPPower supply (RF drivers)
1. I: Input, O: Output, and P: Power
2. Must add a capacitor to ground (~1 nF).
3. Pad internally connected to a Very Weak Pull-up to VPS.
4. We recommend connecting this pin to the V
5. Pad internally connected to a Weak Pull-up to VPS.
6. Must not be left floating.
7. Pad internally connected to a Weak Pull-down to GND.
8. Pad input in High Impedance. Must be connected to VPS.
(1)
(5)
I
SPI Slave Select (active low)
(7)
SPI serial clock
Main functionAlternate function
Select serial communication
interface
Select serial communication
interface
(8)
ST Reserved
pin using a 3.3 kOhm pull-up resistor.
PS
(6)
Doc ID 018669 Rev 87/63
Power management and operating modesCR95HF
3 Power management and operating modes
3.1 Operating modes
The CR95HF has 2 operating modes: Wait for Event (WFE) and Active. In Active mode, the
CR95HF communicates actively with a tag or an external host (an MCU, for example). WFE
mode includes four low consumption states: Power-up, Hibernate, Sleep and Tag Detector.
The CR95HF can switch from one mode to another.
Table 3.CR95HF operating modes and states
ModeStateDescription
This mode is accessible directly after POR.
Wait For
Event
(WFE)
Active
Power-up
Hibernate
Sleep
Tag De te cto r
Ready
Reader
Low level on IRQ_IN
source. LFO (low-frequency oscillator) is running in this state.
Lowest power consumption state. The CR95HF has to be woken-up
in order to communicate. Low level on IRQ_IN pin (longer than 10 µs)
is the only wakeup source.
Low power consumption state. Wakeup source is configurable:
–Timer
–IRQ_IN
– SPI_SS pin
LFO (low-frequency oscillator) is running in this state.
Low power consumption state with tag detection. Wakeup source is
configurable:
–Timer
–IRQ_IN
– SPI_SS
– Tag detector
LFO (low-frequency oscillator) is running in this state.
In this mode, the RF is OFF and the CR95HF waits for a command
(P
interface (UART or SPI).
The CR95HF can communicate with a tag using the selected
protocol or with an external host using the selected serial interface
(UART or SPI).
pin
pin
pin
ROTOCOLSELECT, ...) from the external host via the selected serial
pin (longer than 10 µs) is the only wakeup
Hibernate, Sleep and Tag Detector states can only be activated by a command from the
external host. As soon as any of these three states are activated, the CR95HF can no
longer communicate with the external host. It can only be woken up.
The behavior of the CR95HF in 'Tag Detector' state is defined by the Idle command.
8/63Doc ID 018669 Rev 8
CR95HFPower management and operating modes
Supply off
Power-up
POR
Ready
Reader
Tag Detector
(& Calibration )
Sleep
IRQ_IN
Protocol Select
POR sequenceWake-up event
Hibernate
TimeOut
Tag Detection
Idle command
IRQ_IN
Activ e
WFE
IRQ_IN
Protocol Select
Serial I/F
selection
SPI
Reset
Figure 4.CR95HF initialization and operating state change
3.2 Startup sequence
After the power supply is established at power-on, the CR95HF waits for a low pulse on the
pin IRQ_IN
entering Ready state after a delay (t
The host sends commands to the CR95HF and waits for replies. Polling for readiness is not
necessary. The default baud rate is 57600 baud. The maximum allowed baud rate is
2 Mbps.
Figure 6.UART communication
When sending commands, no data must be sent if the LEN field is zero.
When receiving data from the CR95HF, no data will be received if the LEN field is zero.
The formats of send and receive packets are identical.
If an E
CHO command is sent, only one byte (0x55) is sent by the host.
Figure 7 shows an example of an E
Figure 7.ECHO command and response example
CHO command.
Caution:UART communication is LSB first. Stop bit duration is two Elementary Time Units
(ETUs).
Note:1When CR95HF leaves WFE mode (from Power-up, Hibernate, Sleep or Tag Detector)
following an |RQ_IN
character.
2If the user loses UART synchronization, it can be recovered by sending an E
until a valid E
CR95HF will reply with an error code meaning its input buffer is full. The user can now
restart a UART exchange.
/RX low level pulse, this pulse is NOT interpreted as the UART start bit
CHO command
CHO reply is received. Otherwise, after a maximum of 255 ECHO commands,
Doc ID 018669 Rev 811/63
Communication protocolsCR95HF
MOSI
0 0 0 0 0 0 0 0CMDLENDATADATA
Control Byte
MISO
X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X
Several data bytes
MOSI
0 0 0 0 0 0 1 1X X X X X X 1 1X X X X X X 1 1 X X X X X X 1 1
Control Byte
MISO
X X X X X X X X
FlagFlag
Flags are polled until data is ready (Bit 3 is set when data is ready)
0 0 0 0 0 X X X0 0 0 0 0 X X X0 0 0 0 1 X X X
4.2 Serial peripheral interface (SPI)
4.2.1 Polling mode
In order to send commands and receive replies, the application software has to perform 3
steps.
1.Send the command to the CR95HF.
2. Poll the CR95HF until it is ready to transmit the response.
3. Read the response.
The application software should never read data from the CR95HF without being sure that
the CR95HF is ready to send the response.
The maximum allowed SPI communication speed is f
SCK
.
A Control byte is used to specify a communication type and direction:
●0x00: Send command to the CR95HF
●0x03: Poll the CR95HF
●0x02: Read data from the CR95HF
●0x01: Reset the CR95HF
The SPI_SS
line is used to select a device on the common SPI bus. The SPI_SS pin is
active low.
When the SPI_SS
line is inactive, all data sent by the Master device is ignored and the
MISO line remains in High Impedance state.
Figure 8.Sending command to CR95HF
Figure 9.Polling the CR95HF until it is ready
Table 5.Interpretation of flags
BitMeaning (Application point of view)
[7:4]Not significant
3Data can be read from the CR95HF when set.
2Data can be sent to the CR95HF when set.
[1:0]Not significant
12/63Doc ID 018669 Rev 8
CR95HFCommunication protocols
MOSI
0 0 0 0 0 0 1 0 X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X
Control Byte
MISO
X X X X X X X XResp CodeLENDATADATA
Several data bytes
MOSI
0 0 0 0 0 0 0 1
Control Byte 01
MISO
X X X X X X X X
Figure 10. Reading data from CR95HF
Data must be sampled at the rising edge of the SCK signal.
‘Sending’, ‘Polling’ and ‘Reading’ commands must be separated by a high level of the
SPI_SS
asserts the SPI_SS
line. For example, when the application needs to wait for data from the CR95HF, it
line low and issues a ‘Polling’ command. Keeping the SPI_SS line low,
the Host can read the Flags Waiting bit which indicates that the CR95HF can be read. Then,
the application has to assert the SPI_SS
asserts the SPI_SS
line low and issues a ‘Reading’ command to read data. When all data is
read, the application asserts the SPI_SS
line high to finish the polling command. The Host
line high.
The application is not obliged to keep reading Flags using the Polling command until the
CR95HF is ready in one command. It can issue as many 'Polling' commands as necessary.
For example, the application asserts SPI_SS
Flags. If the CR95HF is not ready, the application can assert SPI_SS
low, issues 'Polling' commands and reads
high and continue its
algorithm (measuring temperature, communication with something else). Then, the
application can assert SPI_SS
low again and again issue 'Polling' commands, and so on, as
many times as necessary, until the CR95HF is ready.
Note that at the beginning of communication, the application does not need to check flags to
start transmission. The CR95HF is assumed to be ready to receive a command from the
application.
Figure 11. Reset the CR95HF
To reset the CR95HF using the SPI, the application sends the SPI Reset command (Control
Byte 01, see Figure 11) which starts the internal controller reset process and puts the
CR95HF into Power-up state. The CR95HF will wake up when pin IRQ_IN
CR95HF reset process only starts when the SPI_SS
Caution:SPI communication is MSB first.
4.2.2 Interrupt mode
When the CR95HF is configure to use the SPI serial interface, pin IRQ_OUT is used to give
additional information to user. When the CR95HF is ready to send back a reply, it sends an
Interrupt Request by setting a low level on pin IRQ_OUT
reads the data.
goes low. The
pin returns to high level.
, which remains low until the host
The application can use the Interrupt mode to skip the polling stage.
Caution:SPI communication is MSB first.
Doc ID 018669 Rev 813/63
CommandsCR95HF
5 Commands
5.1 Command format
●The frame from the Host to the CR95HF has the following format:
<CMD><Len><Data>
●The frame from the CR95HF to Host has the following format:
<RespCode><Len><Data>
These two formats are available either in both UART and SPI modes.
Fields <Cmd>, <RespCode> and <Len> are always 1 byte long. <Data> can be from 0 to
255 bytes.
Note:The E
CHO command is an exception as it has only one byte (0x55).
The following symbols correspond to:
>>> Frame sent by the Host to CR95HF
<<< Frame sent by the CR95HF to the Host
5.2 List of commands
Ta bl e 6 summarizes the available commands.
Table 6.List of CR95HF commands
CodeCommandDescription
0x01IDNRequests short information about the CR95HF and its revision.
0x02P
0x04SENDRECV
0x07I
0x08R
0x09W
ROTOCOLSELECT
DLE
DREG
RREG
Selects the RF communication protocol and specifies certain
protocol-related parameters.
Sends data using the previously selected protocol and receives the
tag response.
Switches the CR95HF into a low consumption Wait for Event (WFE)
mode (Power-up, Hibernate, Sleep or Tag detection), specifies the
authorized wake-up sources and waits for an event to exit to Ready
state.
Reads Wake-up event register or the Analog Register Configuration
(ARC_B) register.
Writes Analog Register Configuration (ARC_B) register or writes
index of ARC_B register address.
Writes the Timer Window (TimerW) value dedicated to ISO/IEC
14443 Type A tags.
Writes the AutoDetect Filter enable register dedicated to ISO/IEC
18092 tags.
0x0AB
0x55E
14/63Doc ID 018669 Rev 8
AUDRATESets the UART baud rate.
CHOCR95HF returns an ECHO response (0x55).
Other codesST Reserved
CR95HFCommands
5.3 IDN command (0x01) description
The IDN command (0x01) gives brief information about the CR95HF and its revision.
Table 7.IDN command description
DirectionDataCommentsExample
Host to
CR95HF
CR95HF to
Host
It takes approximately 6 ms to calculate the CRC for the entire ROM. The application must
allow sufficient time for waiting for a response for this command.
0x01Command code
0x00Length of data
0x00Result code<<<0x000F4E4643204653324A41535
<Len>Length of data
<Device ID> Data in ASCII format
<ROM CRC>
CRC calculated for ROM
content
>>>0x0100
4320075D2
In this example,
<<<0x4E4643204653324A415354320
0: ‘NFC FS2JAST2’, #2 (Last Character
of NFC FS2JAST2 means ROM code
revision 2.)
0x75D2: CRC of ROM (real CRC may
differ from this example)
5.4 Protocol Select command (0x02) description
This command selects the RF communication protocol and prepares the CR95HF for
communication with a contactless tag.
Table 8.PROTOCOLSELECT command description
DirectionDataCommentsExample
0x02Command code
<Len>Length of data
Protocol codes
00: Field OFF
See Table 9: List of <Parameters>
values for the ProtocolSelect command
for different protocols on page 16 for a
Note that there is no ‘Field ON’ command. When the application selects an RF
communication protocol, the field automatically switches ON.
When the application selects a protocol, the CR95HF performs all necessary settings: it will
choose the appropriate reception and transmission chains, switch ON or OFF the RF field
and connect the antenna accordingly.
Different protocols have different sets of parameters. Values for the <Parameters> field
are listed in Ta bl e 9 .
Table 9.List of <Parameters> values for the PROTOCOLSELECT command for
different protocols
Parameters
Protocol Code
ByteBitFunction
Field OFF0x00 07:0RFU>>>0x02020000
7:6RFU
00: 26 Kbps (H)
01: 52 Kbps
5:4
10: 6 Kbps (L)
11: RFU
0: Respect 312-µs delay
ISO/IEC 156930x01 0
3
1: Wait for SOF
0: 100% modulation (100)
2
1: 10% modulation (10)
(1)
Examples of commands
H 100 S: >>>0x02 02 01 01
H 100 D: >>>0x02 02 01 03
H 10 S: >>>0x02 02 01 05
H 10 D: >>>0x02 02 01 07
L 100 S: >>>0x02 02 01 21
L 100 D: >>>0x02 02 01 23
L 10 S: >>>0x02 02 01 25
L 10 D: >>>0x02 02 01 27
0: Single subcarrier (S)
1
1: Dual subcarrier (D)
Append CRC if set to ‘1’.
0
(1)
16/63Doc ID 018669 Rev 8
In these examples, the CRC is
automatically appended.
CR95HFCommands
Table 9.List of <Parameters> values for the PROTOCOLSELECT command for
different protocols (continued)
Parameters
Protocol Code
ByteBitFunction
Examples of commands
ISO/IEC 14443
Ty p e A
NFC Forum Tag
Ty p e 1
(Topaz)
NFC Forum Tag
Ty p e 2
NFC Forum Tag
Type 4A
ISO/IEC 14443
Ty p e B
NFC Forum Tag
Type 4B
0x02
0x03
0
1, 2
0
Transmission data rate
00: 106 Kbps
7:6
01: 212 Kbps
10: RFU
11: RFU
Reception data rate
00: 106 Kbps
5:4
01: 212 Kbps
10: RFU
11: RFU
3RFU
2:0RFU
AFDT (Optional) 2 bytes
0xPP 0xMM
Set the maximum CR95HF
listening time so that it fits
the maximum ISO FWT:
0xPP ≤ 0x0E,
0x01 ≤ 0xMM ≤ 0xFE
Transmission data rate
00: 106 Kbps
7:6
01: RFU
10: RFU
11: RFU
Reception data rate
00: 106 Kbps
5:4
01: RFU
10: RFU
11: RFU
3:1RFU
Append CRC if set to ‘1’.
0
(1)
(2)
(2)
>>>0x02020200: ISO/IEC
14443 Type A tag, 106 Kbps
transmission and reception
rates, Time interval 86/90
Note that REQA, WUPA,
Select20 and Select70
commands use a fixed interval
of 86/90 µs between a request
and its reply. Other commands
use a variable interval with fixed
granularity.
Refer to the ISO/IEC 14443
standard for more details.
Frame Waiting Time (FWT) =
PP
) *(MM+1) * 4096/13.56 µs
(2
If AFDT is not specified,
the default FWT is ~ 86 µs
>>>0x02020301:
ISO/IEC 14443 Type B tag with
CRC appended
AFDT (Optional) 2 bytes
1, 2
0xPP 0xMM
Set the maximum CR95HF
listening time so that it fits
the maximum ISO FWT:
0xPP ≤ 0x0E,
Frame Waiting Time (FWT) =
PP
) *(MM+1) * 4096/13.56 µs
(2
If AFDT is not specified,
the default FWT is ~ 4.8 ms
0x01 ≤ 0xMM ≤ 0xFE
Doc ID 018669 Rev 817/63
(3)
CommandsCR95HF
Table 9.List of <Parameters> values for the PROTOCOLSELECT command for
different protocols (continued)
Parameters
Protocol Code
ISO/IEC 18092
NFC Forum Tag
Ty p e 3
0x04
ByteBitFunction
Transmission data rate
00: RFU
7:6
01: 212 Kbps
10: 424 Kbps
11: RFU
Reception data rate
0
5:4
00: RFU
01: 212 Kbps
10: 424 Kbps
11: RFU
3:1RFU
Append CRC if set to ‘1’.
0
(1)
7:5RFU
Disregard slot counter
4
0: Respect slot counter
1: Search for the reply
1
Slot counter
0: 1 slot
3:0
1: 2 slots
…
F: 16 slots
Examples of commands
>>>0x02020451:
ISO/IEC18092 tag, 212 Kbps
transmission and reception
rates with CRC appended.
Parameter ‘Slot counter’ is not
mandatory. If it is not present, it
is assumed that SlotCounter =
0x00 (1 slot)
For device detection
commands, byte 1 bit 4 must be
set to ‘0’. In this case, the FWT
is 2.4 ms for the 1st slot and
1.2 ms more for each following
slot, if slot counter is specified.
If slot counter = 0x10, the
CR95HF does not respect reply
timings, but polls incoming data
and searches a valid response
during ~8.4 ms.
AFDT (Optional) 2 bytes
0xPP 0xMM
Set the maximum CR95HF
2,3
listening time so that it fits
the maximum ISO FWT:
0xPP ≤ 0x0E,
0x01 ≤ 0xMM ≤ 0xFE
1. It is recommended to set this bit to ‘1’.
2. Not characterized.
3. Max TR1 (Synchronization Time as defined in ISO/IEC 14443-2, Type B) supported by the CR95HF is 170
µs. This value will be increased to 302 µs in the next CR95HF revision.
18/63Doc ID 018669 Rev 8
Frame Waiting Time (FWT) =
PP
) *(MM+1) * 4096/13.56 µs
(2
If AFDT is not specified,
the default FWT is ~ 302 µs
This command sends data to a contactless tag and receives its reply.
Before sending this command, the Host must first send the P
ROTOCOLSELECT command to
select an RF communication protocol.
If the tag response was received and decoded correctly, the <Data> field can contain
additional information which is protocol-specific. This is explained in Tab l e 1 1.
Table 10.SENDRECV command description
DirectionDataCommentsExample
0x04Command code
Host to
CR95HF
CR95HF to
Host
CR95HF to
Host
CR95HF to
Host
CR95HF to
Host
<Len>Length of data
<Data>Data to be sent
0x80Result code
<Len>Length of data
Data received.
<Data>
0x90Result code
0x04Vali d b its
ACK or NAK
0x86Error code
0x00Length of data
0x87Error code
0x00Length of data
Interpretation depends on
protocol
ISO 14443-A
ACK or NAK detection
See Ta b le 1 1 and Ta b le 1 2 for detailed
examples.
<<<0x800F5077FE01B30000000000
71718EBA00
The tag response is decoded. This is an
example of an ISO/IEC 14443 ATQB
response (Answer to Request Type B)
<<<0x900400
Exception for 4-bit frames. This function
is limited.
ACK/NAK always returns ‘0’.
<<<0x8600 Communication error
<<<0x8700 Frame wait time out or no
tag
(1)
CR95HF to
Host
CR95HF to
Host
CR95HF to
Host
CR95HF to
Host
CR95HF to
Host
CR95HF to
Host
0x88Error code
0x00Length of data
0x89Error code
0x00Length of data
0x8AError code
0x00Length of data
0x8BError code
0x00Length of data
0x8CError code<<<0x8C00 Invalid length. Used in NFC
0x00Length of data
0x8DError code
0x00Length of data
Doc ID 018669 Rev 819/63
<<<0x8800 Invalid SOF
<<<0x8900 Receive buffer overflow
(too many bytes received)
<<<0x8A00 Framing error (start bit = 0,
stop bit = 1)
<<<0x8B00 EGT time out (for ISO/IEC
14443-B)
Forum Tag Type 3, when field Length <
3
<<<0x8D00 CRC error (Used in NFC
Forum Tag Type 3 protocol)
CommandsCR95HF
Table 10.SENDRECV command description (continued)
DirectionDataCommentsExample
CR95HF to
Host
1. ACK/NAK value will be correctly reported in next CR95HF revision.
0x8EError code
0x00Length of data
<<<0x8E00 Reception lost without EOF
received
Ta bl e 1 1 gives examples of communication between the CR95HF and a contactless tag.
The CR95HF receives a SendRecv command (>>> 0x04...) from the host and returns its
response to the host (<<< 0x80...). Ta bl e 1 1 provides more details on the CR95HF
response format.
Table 11.List of <Data> Send values for the SENDRECV command for different
protocols
ProtocolExplanationCommand exampleComments
Send example04 03 022000Example of an Inventory command
Command code
Length of entire data field
ISO/IEC
15693
Data
using different protocol configuration:
Uplink: 100% ASK, 1/4 coding
Downlink: High data rate, Single sub-
Table 12.List of <Data> Response values for the SENDRECV command for different
protocols
Protocol ExplanationResponse exampleComments
ISO/IEC
15693
ISO/IEC
14443
Ty p e A
NFC
Forum
Tag Type
4A
NFC
Forum
Tag Type
1
(Topaz)
Response
example
80 08 000000000077CF00
Result code
Length of entire data
field
Data received from tag
Original (received) value of CRC
[7:2]: RFU
1: CRC error if set
0: Collision is detected if set
Response
example
80 09 80B30B8DB50000 00 00
Result code
Length of entire data
field
Data received from TAG
7: Collision is detected
6: RFU
5: CRC error
4: parity error
[3:0]: Shows how many significant bits are there
in the first byte
7:0: Index of the first byte where collision is detected
This is a response on Read
Single Block command for
ISO/IEC 15693 TAG. Actual
TAG response is
<<<0x000000000077CF,
other fields are added by the
CR95HF.
ISO/IEC 14443-A is bit
oriented protocol, so we can
receive non-integer amount
of bytes. Number of
significant bits in the 1
st
byte
is the same as indicated in
the command sent.
To calculate a position of a
collision, application has to
take index of byte first. Index
of bit indicates a position
inside this byte. Note that
both indexes start from 0 and
bit index can be 8, meaning
that collision affected parity.
NFC
Forum
Tag Type
[7:4]: RFU
[3:0]: Index of the first bit where collision is detected
2
Response
example
80 0F
5092036A8D0
0000000007171341100
ISO/IEC
14443
Ty p e B
Result code
Length of entire data
field
NFC
Forum
Tag Type
4B
Data received from tag
Original (received) value of CRC
[7:2]: RFU
1: CRC error if set
0: RFU
22/63Doc ID 018669 Rev 8
Note that collision
information is only valid when
bit ‘Collision is detected’ is
set.
CR95HFCommands
Table 12.List of <Data> Response values for the SENDRECV command for different
protocols (continued)
Protocol ExplanationResponse exampleComments
ISO/IEC
18092
NFC
Forum
Tag Type
3
Response
example
Result code
Length of entire data
field
Data received from tag
[7:2]: RFU
1: CRC error if set
0: RFU
80 1201010105017B0...93FF00
<<<0x801201010105017B
06941004014B024F4993F
F00
For more detailed examples of use with NFC Forum and ISO/IEC 15693 tags, refer to
Appendix D on page 51.
5.6 Idle command (0x07) description
This command switches the CR95HF into low consumption mode and defines the way to
return to Ready state.
The Result code contains the Wake-up flag register value indicating to the application the
wake-up event that caused the device to exit WFE mode.
Doc ID 018669 Rev 823/63
CommandsCR95HF
Table 13.Idle command description
DirectionDataCommentsExample
07Command code
0ELength of data
Specifies authorized wake-
Host to
CR95HF
<WU Source>
EnterCtrlL
EnterCtrlH
WUCtrlL
WUCtrlH
LeaveCtrlLSettings to leave WFE
LeaveCtrlH
<WUPeriod>
<OscStart>
<DacStart>
<DacDataL>
<DacDataH>
<SwingsCnt>
<MaxSleep>
up sources and the LFO
frequency
Settings to enter WFE
mode
Settings to wake-up from
WFE mode
mode (Default value =
0x1800)
Period of time between two
tag detection bursts. Also
used to specify the duration
before Timeout.
Defines the Wait time for
HFO to stabilize:
<OscStart> * t
L
(Default value = 0x60)
Defines the Wait time for
DAC to stabilize:
<DacStart> * t
L
(Default value = 0x60)
Lower compare value for
tag detection
(1)
.
This value must be set to
0x00 during tag detection
calibration.
Higher compare value for
tag detection
(1)
.
This is a variable used
during tag detection
calibration.
Number of swings HF
during tag detection
(Default value = 0x3F)
Max. number of tag
detection trials before
Timeout
(1)
.
This value must be set to
0x01 during tag detection
calibration.
Also used to specify
duration before Timeout.
MaxSleep must be:
0x00 < MaxSleep < 0x1F
Example of switch from Active
mode to Hibernate state:
This response is sent only when
CR95HF exits WFE mode.
<<<0x000101 Wake-up by
Timeout
<<<0x000102 Wake-up by tag
detect
<<<0x000108 Wake-up by low
pulse on IRQ_IN
pin
CR95HF to
Host
0x01Length of data
Data (Wake-up source)
0x01: Timeout
0x02: Tag detect
<Data>
0x08: Low pulse on
IRQ_IN
pin
0x10: Low pulse on
SPI_SS pin
CR95HF to
Host
1. An initial calibration is necessary to determine DacDataL and DacDataH values required for leaving Tag
Detector state. For more information, contact your ST sales office for the corresponding application note.
0x82Error code
0x00Length of data
<<<0x8200 Invalid command
length
5.6.1 Idle command parameters
The Idle command (Host to CR95HF) has the following structure (all values are
hexadecimal):
Table 14.Idle command structure
070Exxyy zzyy zzyy zzaabb ccdd eeffgg
Comma
nd code
Data
length
WU
source
Enter
Control
WU
Control
Leave
Control
WU
Period
Osc
Start
DAC
Start
DAC
Data
Swing
Count
Max
Sleep
Table 15.Summary of parameters
ParameterDescription
Command code
Data length
This byte is the command code. ‘07’ represents the Idle command. This
command switches the device from Active mode to WFE mode.
This byte is the length of the command in bytes. Its value depends on the
following parameter values.
This byte defines the authorized wake-up sources in the Wake-up source
WU Source
register. Predefined values are:
0x01: Time out0x02: Tag Detection
0x08: Low pulse on IRQ_IN
These two bytes (EnterCtrlL and EnterCtrlH) define the resources when
entering WFE mode.
Enter Control
0x0400: Hibernate
0x0100: Sleep (or 0x2100 if Timer source is enabled)
0xA200: Tag Detector Calibration
0x2100: Tag Detection
These two bytes (WuCtrlL and WuCtrlH) define the wake-up resources.
WU Control
0x0400: Hibernate 0x3800: Sleep
0xF801: Tag Detector Calibration0x7901: Tag Detection
0x10: Low pulse on SPI_SS
Doc ID 018669 Rev 825/63
CommandsCR95HF
Table 15.Summary of parameters (continued)
ParameterDescription
These two bytes (LeaveCtrlL and LeaveCtrlH) define the resources when
Leave Control
WU Period
Osc Start
DAC Start
DAC Data
returning to Ready state.
0x1800: Hibernate 0x1800: Sleep
0x1800: Tag Detector Calibration0x1800: Tag Detection
This byte is the coefficient used to adjust the time allowed between two tag
detections. Also used to specify the duration before Timeout. (Typical
value: 0x20)
Duration before Timeout = 256 * tL * (WU period + 2) * (MaxSleep + 1)
This byte defines the delay for HFO stabilization. (Recommended value:
0x60)
Defines the Wait time for HFO to stabilize: <OscStart> * t
This byte defines the delay for DAC stabilization. (Recommended value:
0x60)
Defines the Wait time for DAC to stabilize: <DacStart> * t
These two bytes (DacDataL and DacDataH) define the lower and higher
comparator values, respectively. These values are determined by a
calibration process.
When using the demo board, these values should be set to approximately
0x64 and 0x74, respectively.
L
L
Swing Count
Max Sleep
This byte defines the number of HF swings allowed during Tag Detection.
(Recommended value: 0x3F)
This byte defines the maximum number of tag detection trials or the
coefficient to adjust the maximum inactivity duration before Timeout.
MaxSleep must be: 0x00 < MaxSleep < 0x1F
This value must be set to 0x01 during tag detection calibration.
Also used to specify duration before Timeout.
Duration before Timeout = 256 * t
(Typical value: 0x28)
* (WU period + 2) * (MaxSleep + 1)
L
5.6.2 Using LFO frequency setting to reduce power consumption
In WFE mode, the high frequency oscillator (HFO) is stopped and most processes being
executed are clocked by the low frequency oscillator (LFO). To minimize CR95HF power
consumption in WFE mode, the slower the LFO frequency, the lower the power
consumption.
Example 1: Setting a lower LFO frequency
The following equation defines a basic timing reference:
t
= 256*tL ms (where tL = 1/f
REF
t
= 8 ms (when bits [7:6] are set to “00”, or 32 kHz)
REF
t
= 64 ms (when bits [7:6] are set to “11”, or 4 kHz)
REF
LFO
)
26/63Doc ID 018669 Rev 8
CR95HFCommands
5.6.3 Optimizing wake-up conditions
Using the Wake-up source register, it is possible to cumulate sources for a wake-up event. It
is strongly recommended to always set an external event as a possible wake-up source.
To cumulate wake-up sources, simply set the corresponding bits in the Wake-up source
register. For example, to enable a wake-up when a tag is detected (bit 1 set to ‘1’) or on a
low pulse on pin IRQ_IN
(bit 3 set to ‘1’), set the register to 0x0A.
5.6.4 Using various techniques to return to Ready state
The Idle command and reply set offers several benefits to users by enabling various
methods to return the CR95HF to Ready state. Some methods are nearly automatic, such
as waiting for a timer overflow or a tag detection, but others consume more power compared
to the ones requesting a host action. A description of each method follows below.
Default setting: from POR to Ready state
After power-on, the CR95HF enters Power-up state.
To wake up the CR95HF and set it to Ready state, the user must send a low pulse on the
IRQ_IN
and enters Ready state and is able to accept commSands after a delay of approximately
6ms (t
pin. The CR95HF then automatically selects the external interface (SPI or UART)
).
3
From Ready state to Hibernate state and back to Ready state
In Hibernate state, most resources are switched off to achieve an ultra-low power
consumption.
The only way the CR95HF can wake-up from Hibernate state is by an external event (low
pulse on pin IRQ_IN
The LFO is required to use the timer. However, this increases the typical power consumption
by 80 µA. Several parameters can be modified to reduce power consumption as much as
possible.
Doc ID 018669 Rev 827/63
CommandsCR95HF
The Duration before Timeout is defined by parameters WU period and MaxSleep,
respectively 0x60 and 0x08 in the following example.
Duration before Timeout = 256 * t
L
Note:Note that: 0x00 < MaxSleep < 0x1F.
An Idle command example when wake-up source is timer (0x01) when f
power consumption is 25 µA)
In this mode, the typical consumption can greatly vary in function of parameter settings (WU
period without RF activity and Swing Count defining the RF burst duration). Using default
settings, consumption in the range of 100 µA can be achieved.
Tag Detector is a state where CR95HF is able to detect an RF event, a wake-up will occur
when a tag sufficiently modifies the antenna load and is detected by the CR95HF.
An Idle command example when wake-up source is Tag Detection (0x02):
The tag detection sequence is defined by dedicated parameters:
●WU source (Byte 3) (Wake-up source register on page 46)
–The Timeout bit (bit 0) must be set to ‘1’ in order to manage a certain number of
emitted bursts. Otherwise, bursts will be sent indefinitely until a stop event occurs
(for example, tag detection or a low pulse on pin IRQ_IN
).
–The Tag Detect bit (bit 1) must be set to ‘1’ to enable RF burst emissions.
–It is recommended to also set Bits 3 or 4 to ‘1’ to ensure that it is possible to leave
Tag Detect mode via an external event (for example, a low pulse on pin IRQ_IN
●WU period (Byte 10): Defines the period of inactivity (t
t
INACTIVE
●
OscStart, DacStart (Bytes 11 and 12): Define the set-up time of the HFO and Digital
= (WuPeriod + 2) * t
REF
INACTIVE
) between two RF bursts:
).
Analog Converter, respectively. In general, 3 ms is used both set-up times.
HFO | DAC set-up time = (OscStart | DacStart) * t
●DacDataL, DacDataH (Bytes 13 and 14): Reference level for Tag Detection (calculated
L
during the tag detection calibration process).
●SwingsCnt (Byte 15): Represents the number of 13.56-MHz swing allowed during a
Tag Detection burst. We recommend using 0x3F.
28/63Doc ID 018669 Rev 8
CR95HFCommands
●Maxsleep (Byte 16): The CR95HF emits (MaxSleep +1) bursts before leaving Tag
Detection mode if bit 0 (Timer Out) of the WU source register is set to ‘1’. Otherwise,
when this bit is set to ‘0’, a burst is emitted indefinitely.
Note:Bytes 4 to 9 should be used as shown in the examples in Section 5.6: Idle command (0x07)
description.
Note that the MaxSleep value is coded on the 5 least significant bits, thus:
0x00 < MaxSleep < 0x1F.
All the previously described command parameters must be chosen accordingly for the initial
tag detection calibration when setting up the CR95HF.
Their value will impact tag detection efficiency, and CR95HF power consumption during Tag
Detection periods.
5.6.5 Tag detection calibration procedure
The Idle command allows the use of a tag detection as a wake-up event. Certain
parameters of the Idle command are dedicated to setting the conditions of a tag detection
sequence.
During the tag detection sequence, the CR95HF regularly emits RF bursts and measures
the current in the antenna driver I
When a tag enters the CR95HF antenna RF operating volume, it modifies the antenna
loading characteristics and induces a change in I
register reports a new value.
using the internal 6-bit DAC.
DRIVE
, and consequently, the DAC data
DRIVE
This value is then compared to the reference value established during the tag detection
calibration process. This enables the CR95HF to decide if a tag has entered or not its
operating volume.
The reference value (DacDataRef) is established during a tag detection calibration process
using the CR95HF application setting with no tag in its environment.
The calibration process consists in executing a tag detection sequence using a well-known
configuration, with no tag within the antenna RF operating volume, to determine a specific
reference value (DacDataRef) that will be reused by the host to define the tag detection
parameters (DacDataL and DacDataH).
During the calibration process, DacDataL is forced to 0x00 and the software successively
varies the DacDataH value from its maximum value (0xFE) to it minimum value (0x00). At
the end of the calibration process, DacDataRef will correspond to the value of DacDataH for
which the wake-up event switches from Timeout (no tag in the RF field) to tag detected.
To avoid too much sensitivity of the tag detection process, we recommend using a guard
band. This value corresponds to 2 DAC steps (0x08).
The parameters used to define the tag detection calibration sequence (clocking, set-up time,
burst duration, etc.) must be the same as those used for the future tag detection sequences.
When executing a tag detection sequence, the CR95HF compares the DAC data register
value to the DAC Data parameter values (DacDataL and DacDataH) included in the Idle
command. The CR95HF will exit WFE mode through a Tag Detection event if the DAC data
register value is greater than the DAC Data parameter high value (DacDataH) or less than
the DAC Data parameter low value (DacDataL). Otherwise, it will return to Ready state after
a Timeout.
Doc ID 018669 Rev 829/63
CommandsCR95HF
An efficient 8-step calibration algorithm is described in Example of tag detection calibration
process on page 47.
An example of a basic Idle command used during the Tag Detection Calibration process:
The Write Register (WRREG) command (0x09) is used to:
●set the Analog Register Configuration address index value before reading or
overwriting the Analog Register Configuration register (ARC_B) value
●set the Timer Window (TimerW) value used to improve CR95HF demodulation when
communicating with ISO/IEC 14443 Type A tags
●set the AutoDetect Filter used to help synchronization of CR95HF with ISO/IEC 18092
tags
●configure the HF2RF bit
(a)
to manage ICC RF (V
) consumption in Ready state
PS_TX
a. When the HF2RF bit is ‘0’, Reader mode is possible (default mode). When set to ‘1’, V
consumption is reduced (Ready mode).
30/63Doc ID 018669 Rev 8
PS_TX
power
CR95HFCommands
5.8.1 Improving RF performance
Adjusting the Modulation Index and Receiver Gain parameters helps adjust application
behavior. These parameters are the two nibbles of the Analog Register Configuration
register (ARC_B).
The default value of these parameters (Tab le 2 0 ) is set by the
but they can be overwritten using the Write Register (W
PROTOCOLSELECT command,
RREG) command (0x09). Ta bl e 1 8
and Ta bl e 1 9 list possible values for the Modulation Index and Receiver Gain parameters
respectively.
This new configuration is valid until a new
PROTOCOLSELECT or Write Register (of register
ARC_B) command is executed. Register values are cleared at power off.
Table 17.W
Direction Data Comments Example
Host to
CR95HF
CR95HF to
Host
1. This command must be executed before reading the ARC_B register (0x0803690100).
RREG command description (Modulation Index and Receiver Gain)
0x09Command code
0x03 or
0x04
0x68
0x00 or
0x01
0x01
0xXX
0x00Result code
0x00Length of data (= RegCount)
Length of data
Analog Register Configuration address
index
Flag Increment address or not after Write
command
Index pointing to the Modulation Index and
Receiver Gain values in ARC_B register
(0x01) (See Section 5.8.1)
New value for Modulation Index and
Receiver Gain nibbles (See Section 5.8.1)
>>>0x090468010113
Update ARC_B value to 0x13
>>>0x0903680001
Set Analog Register Index to
0x01 (ARC_B)
<<<0x0000
Register written
(1)
How to modify Analog Register Configuration register (ARC_B) values
1.Use the PROTOCOLSELECT command (0x02) to select the correct communication
protocol.
For example, to select the ISO/IEC 18092 protocol:
Send
PROTOCOLSELECT command: >>>0x02020451
CR95HF reply: <<<0x0000
2. Read the Analog Register Configuration register (ARC_B) value.
a) Write the ARC_B register index at 0x01: >>>0x0903680001
CR95HF reply: <<<0x0000
b) Read the ARC_B register value: >>>0x0803690100
CR95HF reply:<<<0x015F
In this example, the ARC_B register value is 0x5F, where “5” is the Modulation
IndexModulation Index and “F” is the Receiver Gain.
3. Modify the Modulation Index and Receiver Gain values with 0x23.
Write the ARC_B register index: >>>0x090468010123
CR95HF reply: <<<0x0000
Doc ID 018669 Rev 831/63
CommandsCR95HF
4. Read the Analog Configuration register (ARC_B) value.
a) Write the ARC_B register index at 0x01: >>>0x0903680001
CR95HF reply: <<<0x0000
b) Read the ARC_B register value: >>>0x0803690100
CR95HF reply:<<<0x0123
Modulation Index and Receiver Gain values
.
Table 18.Possible Modulation Index values
Code123456D
Modulation Index
1. Characterized only using ISO/IEC 10373 test set-up.
Table 19.Possible Receiver Gain values
Receiver Gain
1. Characterized by design simulation.
(1)
10%17%25%30%33%36%95%
Code0137F
(1)
34 dB32 dB27 dB20 dB8 dB
Default code per protocol
Table 20.Default code for available reader protocols
Recommended
Communication
protocol
Default value
values for
CR95HF demo
board
ISO/IEC 14443 Type A
reader
ISO/IEC 14443 Type B
reader
0xDF 0xD1 or 0xD30xD
0x2F 0x20
ISO/IEC 18092 reader0x5F0x20
ISO/IEC 15693 reader
30%
ISO/IEC 15693 reader
100%
0x530x500x4, 0x5 or 0x6
0xD3 0xD00xD
Possible
Modulation
Index values
(MS nibble)
0x1, 0x2, 0x3 or
0x4
0x1, 0x2, 0x3 or
0x4
5.8.2 Improving frame reception for ISO/IEC 14443 Type A tags
To improve CR95HF demodulation when communicating with ISO/IEC 14443 Type A tags, it
is possible to adjust the synchronization between digital and analog inputs by fine-tuning the
Timer Window (TimerW) value. This can be done using the Write Register (W
command to set a new TimerW value (min. 0x50, max. 0x60). The recommended value is
0x56 or 0x58 when using the CR95HF demo board.
Possible
Receiver Gain
values (LS
nibble)
0x0, 0x1, 0x3,
0x7 or 0xF
0x0, 0x1, 0x3,
0x7 or 0xF
0x0, 0x1, 0x3,
0x7 or 0xF
0x0, 0x1, 0x3,
0x7 or 0xF
0x0, 0x1, 0x3,
0x7 or 0xF
RREG)
The default value of this parameter (0x52) is set by the
be overwritten using the W
32/63Doc ID 018669 Rev 8
RREG command (0x09).
PROTOCOLSELECT command, but it can
CR95HFCommands
Table 21.WRREG command description (Timer Window)
Direction Data Comments Example
0x09Command code
0x03 or
0x04
Length of data
Host to
0x3A Timer Window (TimerW) value
CR95HF
0x00 or
0x01
0xXX
Flag Increment address or not after Write
command
Set TimerW value (recommended value is
0x56 or 0x58)
0x04TimerW value confirmation
CR95HF to
Host
0x00Result code
0x00Length of data (= RegCount)
5.8.3 Improving RF reception for ISO/IEC 18092 tags
To improve CR95HF reception when communicating with ISO/IEC 18092 tags, it is possible
to enable an AutoDetect filter to synchronize ISO/IEC 18092 tags with the CR95HF. This
can be done using the Write Register (W
By default, this filter is disabled after the execution of the
can be enabled using the W
This consumption can be reduced to approximately 2 µA (typical) by setting a control bit (bit
HF2RF) to ‘1’ using the Write Register (W
longer available.
To re-enable Reader mode, set the HF2RF bit to ‘0’ using the W
a new P
Table 23.WRREG command description (HF2RF bit)
Host to
CR95HF
CR95HF to
Host
ROTOCOLSELECT command.
Direction Data Comments Example
PS_TX
0x09Command code
0x03 or
0x04
0x68
0x00 or
0x01
0x07Index pointing to the HF2RF register
0x00 or
0x10
0x00Result code
0x00Length of data (= RegCount)
consumption in Ready state
) consumption is generally in the range of 200 µA
PS_TX
RREG) command. In this case, Reader mode is no
Length of data
Analog Register Configuration address
index
Flag Increment address or not after Write
command
Set the HF2RF bit to ‘1’ (Reader mode is
not enabled)
or
Reset the HF2RF bit to ‘0’ (Reader mode
is enabled) (default value)
RREG command or execute
>>>0x090468010710
RF (V
I
CC
is reduced to approx. 2 µA
(typ.) In this case, Reader
mode is not available.
Caution:If the BaudRate command is not correctly executed, the baud rate value will remain
unchanged.
5.10 Echo command (0x55) description
The ECHO command verifies the possibility of communication between a Host and the
CR95HF.
Table 25.ECHO command description
DirectionDataCommentsExample
Host to CR95HF 0x55Command code
CHO command
CHO
CR95HF to Host0x55Code response
>>> 0x55: Sends an E
<<< 0x55: Response to an E
command
Doc ID 018669 Rev 835/63
Electrical characteristicsCR95HF
6 Electrical characteristics
6.1 Absolute maximum ratings
Table 26.Absolute maximum ratings
SymbolParameterValueUnit
VPS_MainSupply voltage –0.3 to 7.0V
VPS_TXSupply voltage (RF drivers)–0.3 to 7.0V
V
IO
V
MaxCarrier
T
A
T
STG
V
ESD
P
TOT
1. Depending on the thermal resistance of package.
Input or output voltage relative to ground–0.3 to VPS_Main +0.3V
Maximum input voltage (pins RX1 and RX2)±14.0V
Ambient operating temperature–25 to +85
Ambient operating temperature (RF mode)–25 to +85
Storage temperature (Please also refer to package
specification).
Electrostatic discharge voltage according to
JESD22-A114, Human Body Model
(1)
Total power dissipation per package1W
–65 to +150°C
2000V
°C
Note:Stresses listed above may cause permanent damage to the device. This is a stress rating
only and functional operation of the device at these or any other conditions above those
indicated in the operational sections of the specification is not implied.
Exposure to absolute maximum rating conditions for extended periods may affect device
reliability.
36/63Doc ID 018669 Rev 8
CR95HFElectrical characteristics
6.2 DC characteristics
Table 27.DC characteristics (VPS_Main = 3V±10% and VPS_TX = 3V±10%)
SymbolParameterConditionMin.Typ.Max.Unit
VPS_Main Supply voltage 2.73.03.3V
VPS_TXSupply voltage (RF drivers)2.73.03.3V
V
IL
V
IH
V
OH
V
OL
PORPower-on reset voltage1.8V
Input low voltage (I/Os)0
Input high voltage (I/Os)
Output high voltage (I/Os)
Output low voltage (I/Os)
I
= - 8 µA
OH
I
OLMAX
= 500 µA
0.7 x
VPS_Main
0.7 x
VPS_Main
0.2 x
VPS_Main
V
VPS_MainV
VPS_MainV
0
0.15 x
VPS_Main
V
Table 28.DC characteristics (VPS_Main = 3V±10% and VPS_TX = 5V±10%)
SymbolParameterConditionMin.Typ.Max.Unit
VPS_Main Supply voltage 2.73.03.3V
VPS_TXSupply voltage (RF drivers)4.55.05.5V
V
V
V
OH
V
OL
Input low voltage (I/Os)0
IL
Input high voltage (I/Os)
IH
= - 8 µA
Output high voltage (I/Os)
Output low voltage (I/Os)
I
OH
I
OLMAX
= 500 µA
0.7 x
VPS_Main
0.7 x
VPS_Main
0
0.2 x
VPS_Main
VPS_MainV
VPS_MainV
0.15 x
VPS_Main
PORPower-on reset voltage1.8V
V
V
Doc ID 018669 Rev 837/63
Electrical characteristicsCR95HF
6.3 Power consumption characteristics
TA = –25°C to 85°C, unless otherwise specified.
Table 29.Power consumption characteristics (VPS_Main from 2.7 to 3.3 V)
SymbolParameterConditionTyp.Max.Unit
I
(VPS)
CC
Power-up
ICC (VPS)
Hibernate
Supply current in power-up stateT
Supply current in Hibernate stateT
ICC (VPS) Sleep Supply current in Sleep stateTA = 25°C2080µA
(VPS) Ready Supply current in Ready stateTA = 25°C2.55.0mA
I
CC
ICC (VPS) Tag
Detect
Average supply current in Tag Detector
state
The CR95HF supports two VPS_TX supply ranges for RF drivers: 2.7V to 3.3V or 4.5V to
5.5V. Antenna matching circuit must be defined accordingly.
Table 30.Power consumption characteristics (VPS_TX from 2.7 to 3.3 V)
SymbolParameterConditionTyp.Max.Unit
= 25°C200600µA
A
= 25°C15µA
A
= 25°C,
T
A
4RF bursts
50100µA
per second
I
RF (V
CC
RF Field ON
ICC RF (V
RF Field OFF
ICC RF (V
Ta g De te ct
1. Parameter measured using recommended output matching network. (Z load is 27 Ω and 0°).
2. This consumption can be reduced to approximately 2 µA (typ.) by setting a control bit (bit HF2RF) to ‘1’
using command 090468010710. In this case, Reader mode is not available.
To re-enable Reader mode, reset the HF2RF bit to ‘0’ using the command 090468010700 or execute a
new P
3. The maximum differential input voltage between pins RX1 and RX2 (VRx1-Rx2) has a peak-peak of 18 V.
Table 31.Power consumption characteristics (VPS_TX from 4.5 to 5.5 V)
)
PS_TX
PS_TX
PS_TX
ROTOCOLSELECT command.
Supply current in RF Field (Reader
(1)
mode)
)
Supply current in RF Field (Ready
(2)
mode)
)
(3)
Peak
current during Burst detection
TA = 25°C70100mA
TA = 25°C200µA
TA = 25°C70100mA
SymbolParameterConditionTyp.Max.Unit
I
RF (V
CC
RF Field ON
ICC RF (V
RF Field OFF
ICC RF (V
Ta g De te ct
1. Parameter measured using recommended output matching network. (Z load is 16 Ω and 0°).
2. This consumption can be reduced to approximately 2 µA (typ.) by setting a control bit (bit HF2RF) to ‘1’
using command 090468010710. In this case, Reader mode is not available.
To re-enable Reader mode, reset the HF2RF bit to ‘0’ using the command 090468010700 or execute a
new P
3. The maximum differential input voltage between pins RX1 and RX2 (VRx1-Rx2) has a peak-peak of 18 V.
This voltage can be limited by adding a damping resistor in parallel of the antenna or between ST_R0 and
Ground.
)
PS_TX
PS_TX
PS_TX
ROTOCOLSELECT command.
Supply current in RF Field (Reader
(1)
mode)
)
Supply current in RF Field (Ready
(2)
mode)
)
(3)
current during Burst detection
Peak
TA = 25°C120200mA
TA = 25°C300µA
TA = 25°C120200mA
38/63Doc ID 018669 Rev 8
CR95HFElectrical characteristics
-36
3#+)NPUT
.33INPUT
T
35.33
T
C3#+
T
H.33
T
63/
T
H3/
T
SU3)
T
H3)
#0/,
#0(!
T
#(3#+(T#(3#+,
-3"/UT
-3")N
"IT/UT
"IT)N
,3"/UT
,3")N
-)3/
-/3)
6.4 SPI characteristics
The CR95HF supports (CPOL = 0, CPHA = 0) and (CPOL = 1, CPHA = 1) modes.
Table 32.SPI interface characteristics
SymbolParameterConditionMin.Max.Unit
f
SCK
1/ t
c(SCK)
V
IL
V
IH
V
OL
V
OH
t
SU(NSS)
t
h(NSS)
t
CH(SCKL)
t
CH(SCKH)
t
SU(SI)
t
h(SI)
t
v(SO)
t
h(SO)
C
b_SPI_IN
SPI clock frequency2.0MHz
Input low voltage0.3
Input high voltage0.7
Output low voltage0.4
Output high voltage0.7
(1)
NSS setup time70
(1)
NSS hold time0
(1)
Clock low time200
(1)
Clock high time200
(1)
Data slave Input setup time20
(1)
Data slave Input hold time80
(1)
Data slave output valid time80
(1)
Data slave output hold time
After enable
edge
150
Capacitive load for input pins NSS,
CLK, MOSI
V
PS
ns
ns
ns
ns
3pF
C
b_SPI_OUT
1. Values based on design simulation and/or characterization results, and not on tested in production.
Test conditions are TA = 0°C to 50°C, unless otherwise specified.
Table 33.Reader characteristics
SymbolParameterMin.Typ.Max.Unit
f
C
MI Carrier
Transmitter specifications (VPS_TX = 2.7 to 3.3 V)
Transmitter specifications (VPS_TX = 4.5 to 5.5 V)
Frequency of operating field (carrier frequency)13.55313.5613. 567MHz
(1)
Carrier modulation index
ISO/IEC 15693 (10% modulation)
ISO/IEC 15693 (100% modulation)
differential impedance between TX1 and
Z
OUT
(1)
TX2
Output power for 3V operation on pin VPS_TX
Z
differential impedance between TX1 and
OUT
(1)
TX2
Output power for 5V operation on pin VPS_TX
ISO/IEC 14443-A
ISO/IEC 14443-B
ISO/IEC 18092
(2)
(1)(2)
(1) (2)
8
8
10
80
100
14
14
%
30
100
27Ω
55mW
16Ω
230mW
Receiver specifications
Small signal differential input resistance
(Rx1/Rx2)
VRx1-Rx2
Differential input voltage between pins RX1 and RX2
Small signal differential input capacitance
(Cx1/Cx2)
Sensitivity (106 Kbps data rate)
1. Maximum values based on design simulation and/or characterization results, and not tested in production.
2. Parameter measured on samples using recommended output matching network. (Z load is 27 Ω and 0°.)
3. This voltage can be limited by adding a damping resistor in parallel of the antenna or between ST_R0 and
Ground.
4. Based on ISO/IEC 10373-6 protocol measurement. The reader sensitivity corresponds to the load
modulation value of the REQ reply sent by an ISO reference card when decoded by the CR95HF.
(1)
(1)
(4)
(3)
100kΩ
18V
22pF
8mV
Doc ID 018669 Rev 841/63
Electrical characteristicsCR95HF
6.6 Oscillator characteristics
The external crystal used for this product is a 27.12 MHz crystal with an accuracy of
±14kHz.
Table 34.HFO 27.12 MHz oscillator characteristics
SymbolParameterConditionsMin.Typ.Max.Unit
(1) (2)
f
XTAL
R
Oscillator frequency27.12MHz
Feedback resistor2MΩ
F
Recommended load capacitance
C
t
SU(HFO)
1. Resonator characteristics given by the crystal/ceramic resonator manufacturer.
2. Based on characterization, not tested in production.
3. The relatively low value of the RF resistor offers a good protection against issues resulting from use in a
humid environment, due to the induced leakage and the bias condition change. However, it is
recommended to take this point into account if the Host is used in tough humidity conditions.
4. t
SU(HFO)
MHz oscillation is reached. This value is measured for a standard crystal resonator and it can vary
significantly with the crystal manufacturer.
versus equivalent serial resistance of
the crystal (R
(4)
Startup time VPS is stabilized610ms
is the startup time measured from the moment it is enabled (by software) to a stabilized 27.12
(3)
)
S
RS = 30 Ω6pF
For CL1 and CL2, it is recommended to use high-quality external ceramic capacitors in the
10 pF to 20 pF range (typ.), designed for high-frequency applications, and selected to match
the requirements of the crystal or resonator (see Figure 14). C
and C
L1
are usually the
L2
same size. The crystal manufacturer typically specifies a load capacitance which is the
series combination of C
and CL2.
L1
Figure 14. Typical application with a 27.12 MHz crystal
C
L1
27.12 MHz
crystal
C
L2
XIN
XOU T
R
F
f
HFO
NFC device
ai14145b
Note:For C
and C
L1
it is recommended to use high-quality ceramic capacitors in the 10 pF to
L2
20 pF range selected to match the requirements of the crystal or resonator. C
usually the same size. The crystal manufacturer typically specifies a load capacitance which
is the series combination of C
Load capacitance C
C
is the pin capacitance and board or trace PCB-related capacitance. Typically, it is
stray
has the following formula: CL = CL1 x CL2 / (CL1 + CL2) + C
L
and CL2.
L1
between 2 pF and 7 pF.
42/63Doc ID 018669 Rev 8
and C
L1
stray
are
L2,
where
CR95HFPackage mechanical data
Seating plane
ddd C
C
A3
A1
A
D
e
9
16
17
24
32
Pin # 1 ID
R = 0.30
8
E
L
L
D2
1
b
E2
42_ME
Bottom view
7 Package mechanical data
In order to meet environmental requirements, ST offers these devices in different grades of
ECOPACK
specifications, grade definitions and product status are available at: www.st.com.
ECOPACK
®
packages, depending on their level of environmental compliance. ECOPACK®
®
is an ST trademark.
This device is available in a 32-lead, 5x5 mm, 0.5 mm pitch, very thin fine pitch quad flat
pack nolead package (VFQFPN).
Table 35.32-pin VFQFPN package mechanical data (continued)
Symbol
millimetersinches
Min.Typ.Max.Min.Typ.Max.
L 0.300 0.400 0.500 0.0118 0.0157 0.0197
ddd (AMK) 0.050 0.0020 2
1. Values in inches are rounded to 4 decimal digits.
(1)
Note
Note:1AMKOR Variation B. Dimensions are not in accordance with JEDEC.
2AMKOR.
44/63Doc ID 018669 Rev 8
CR95HFPart numbering
8 Part numbering
Table 36.Ordering information scheme
Example:CR95HF– VMD5T
Device type
CR = Contactless reader IC
Wired access
95 = SPI and UART
Frequency band
HF = High frequency (13.56 MHz)
Operating voltage
V = 2.7 to 3.3 V
Package
MD = 32-pin VFQFPN (5 x 5 mm)
Operating temperature
5 = –25° to +85° C
Packaging
T = Tape and Reel
Doc ID 018669 Rev 845/63
Additional Idle command descriptionCR95HF
Appendix A Additional Idle command description
This section provides examples of use for the IDLE command.
The wake-up source is the third of the 16 bytes in the I
DLE command. This byte specifies
authorized Wake-up events. This revision now also provides the capability to set the LFO
frequency in WFE mode.
The LFO frequency and the authorized wake-up source settings are stored in the Wake-up
source register as the parameters of the I
DLE command.
The Wake-up event is updated by the CR95HF when it exits WFE mode.
The contents of the Wake-up event register can be read using the Read Register command
or in the CR95HF reply to the Idle command.
Table 37.Wake-up source register
Bits [7:6]Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
IRQ on pin
LFO frequencyRFU
1. Must be set to ‘0’.
Table 38.Wake-up event register
Bits [7:6]Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
LFO frequencyRFU
(1)
SPI_SS
IRQ on pin
SPI_SS
Bits [7:6] define the LFO frequency (f
LFO
IRQ on pin
IRQ_IN
IRQ on pin
IRQ_IN
):
(1)
RFU
RFUTag DetectTimeout
Tag DetectTimeout
00: 32 kHz 01: 16 kHz
10: 8 kHz 11: 4 kHz
Bit 4: When set, the CR95HF will wake up when an external interrupt (low level on pin
SPI_SS
) is detected. This is useful for UART communication.
Bit 3: When set, the CR95HF will wake up when an external interrupt (low level on pin
IRQ_IN
) is detected. This is useful for SPI communication. It is recommended to set this bit
to ‘1’ in order to recover in the event of a system crash.
Bit 1: When set, the CR95HF will wake up when a tag is detected in the RF field. This bit
must also be set during Tag Detection calibration or during a Tag Detection sequence.
Bit 0: When set, the CR95HF will wake up and return to Ready state at the end of a
predefined cycle. The Timeout (TO) value is defined by the MaxSleep and Wake-up period:
TO = (MaxSleep *(WuPeriod+1)*t
t
= 256*tL = 8 ms (f
REF
t
= 256*tL = 64 ms (f
REF
= 32 kHz), mean power consumption in Sleep mode is 25 µA
LFO
= 4 kHz), mean power consumption in Sleep mode is 20 µA
LFO
REF
Note:Note that: 0x00 < MaxSleep < 0x1F.
This bit must be set when using the timer as a possible wake-up source. It must be set
during Tag Detection Calibration to force a wake-up after the first Tag Detection trial.
46/63Doc ID 018669 Rev 8
CR95HFExample of tag detection calibration process
Appendix B Example of tag detection calibration process
The following script works on the DEMO_CR95HF evaluation board and with the CR95HF
developement software available from the ST internet site.
This is a dichotomous approach to quickly converge to the DacDataRef value for which a
wake-up event switches from tag detection to Timeout. In this process, only the DacDataH
parameter is changed in successive Idle commands. And we look at the wake-up event
reply to decide the next step.
00 01 02 corresponds to a Tag Detect,
00 01 01 corresponds to a Timeout.
REM, Tag Detection Calibration Test
REM, Sequence: Power-up Tag Detect Wake-up by Tag Detect (1 try
measurement greater or equal to DacDataH) or Timeout
CR95HFExamples of CR95HF command code to activate NFC Forum and ISO/IEC 15693 tags
Appendix D Examples of CR95HF command code to
activate NFC Forum and ISO/IEC 15693 tags
The following script works on the DEMO_CR95HF evaluation board and with the CR95HF
developement software available from the ST internet site.
This section provides examples of CR95HF command code used to activate NFC Forum
and ISO/IEC 15693 tags using CR95HF development software.
CR95HFDLL_STCMD: Is the standard CR95HF frame exchange command. In this command,
the first byte 01 is not sent, it is only requested by the CR95HF development software in
order to recognize if it is a user or service command.
CR95HFDLL_SENDRECV: Is the encapsulated CR95HF SendReceive command for which
command codes, number of bytes, and CRC are automatically appended to the parameter.
In this section,
●The CR95HF command overhead (command code, length of data and transmission
flag) is in black.
●The Tag instruction is in blue.
●The CR95HF response overhead (result code, length of data and status) is in green.
●The Tag response is in red.
When the CRC append option is set in the Protocol Select command, the CRC is
automatically appended by the CR95HF, but the CRC is not visible in the instruction log file.
When the CRC is present in the command or response, CRC reply is in italics.
The following symbols correspond to:
>>> Frame sent by Host to CR95HF
<<< Frame received by Host from CR95HF
D.1 ISO/IEC 14443 Type A
D.1.1 NFC Forum Tag Type 1 (Topaz)
REM, CR95HF code example to support NFC Forum Tag Type 1 14443_A
REM, TEST TOPAZ 14443A (UID 6E567A00)
REM, first byte 01 in CR95HFDLL_STCMD is only requested by CR95HF
Development SW
REM, RFOFF
>>> CR95HFDLL_STCMD, 01 02020000
<<< 0000
REM, TEST TOPAZ 14443A (UID 6E567A00)
REM, Sel Prot 14443A option TOPAZ
>>> CR95HFDLL_STCMD, 01 020402000300
<<< 0000
Doc ID 018669 Rev 851/63
Examples of CR95HF command code to activate NFC Forum and ISO/IEC 15693 tagsCR95HF
REM, Optimization of synchronization between digital and analog
inputs by adjusting TimerW value (default 0x52, min. 0x50, max.
0x60). Recommended value is 0x56 or 0x58 for NFC Forum Tag Type 1
(Topaz).
>>> CR95HFDLL_STCMD, 01 09043A005804
<<< 0000
REM, Recommended modulation and gain is 0xD1 or 0xD3 for NFC Forum
Tag Type 1 (Topaz).
>>> CR95HFDLL_STCMD, 01 0904680101D1
<<< 0000
REM, last Byte x7 or x8 in CR95HFDLL_SENDRECV command number of
bits in the 14443 _Type A frame
CR95HFExamples of CR95HF command code to activate NFC Forum and ISO/IEC 15693 tags
<<< 80 07 08 B7 B300 080000
REM, Write_E ad08 data 00 UID0 UID 1 UID2 UID3
>>> CR95HFDLL_STCMD, 01 04 08 53 0800 6E567A00 A8
<<< 80 0708 00 87C1080000
REM, Read ad08 00 UID0 UID 1 UID2 UID3
>>> CR95HFDLL_STCMD, 01 04 08 01 0800 6E567A00 A8
<<< 80 0708 00 87C1080000
D.1.2 NFC Forum Tag Type 2
REM, CR95HF code example to support NFC Forum Tag Type 2 14443_A
REM, TEST INVENTORY then Read & Write in Memory
REM, Protocol select 14443A
>>> CR95HFDLL_STCMD, 01 02020200
<<< 0000
REM, Optimization of synchronization between digital and analog
inputs by adjusting TimerW value (default 0x52, min. 0x50, max.
0x60). Recommended value is 0x56 or 0x58 for NFC Forum Tag Type 2.
>>> CR95HFDLL_STCMD, 01 09043A005804
<<< 0000
REM, Recommended modulation and gain is 0xD1 or 0xD3 for NFC Forum
Tag Type 2.
**** CR95HF code example to support NFC Forum Tag Type 4A (14443-A)
& NDEF message
REM, 14443B (CR95HF Protocol Selection 14443_A)
REM, first Byte 01 in CR95HFDLL_STCMD is only requested by CR95HF
Development SW
********** CR95HF setting to support extended Frame Waiting Time
**********
>>> CR95HFDLL_STCMD, 01 020402000180
<<< 0000
REM, Optimization of synchronization between digital and analog
inputs by adjusting TimerW value (default 0x52, min. 0x50, max.
0x60). Recommended value is 0x56 or 0x58 for NFC Forum Tag Type 1
(Topaz).
>>> CR95HFDLL_STCMD, 01 09043A005804
<<< 0000
54/63Doc ID 018669 Rev 8
CR95HFExamples of CR95HF command code to activate NFC Forum and ISO/IEC 15693 tags
REM, Recommended modulation and gain is 0xD1 or 0xD3 for NFC Forum
Tag Type 1 (Topaz).
>>> CR95HFDLL_STCMD, 01 0904680101D1
<<< 0000
REM, last Byte x7 or x8 in CR95HFDLL_SENDRECV command number of
bit in the 14443 _Type A frame
26-Oct-20113Upgraded document from Preliminary Data to full Datasheet.
Updated device revision information. Added Section 6.2: DC
28-Oct-20114
06-Jan-20125
characteristics on page 37 and updated Section 6.3: Power
consumption characteristics on page 38.
Updated Table 9: List of <Parameters> values for the
ProtocolSelect command for different protocols on page 16,
Table 13: Idle command description on page 24 and
Section 5.6.5: Tag detection calibration procedure.
Updated Section 6.3: Power consumption characteristics,
Section 6.4: SPI characteristics and Section 6.5: RF
characteristics.
Updated Appendix B: Example of tag detection calibration
process and Appendix C: Example of tag detection command
using results of tag detection calibration.
04-May-20126
07-Jun-20127
31-Jul-20128
Updated Table 3: CR95HF operating modes and states on
page 8.
Updated response to IDN command in Section 5.3.
Added additional features in Section 5.8: Write Register
(WrReg) command (0x09) description.
Added optional parameter to increase maximum waiting time in
NFC Forum Tag Type 3.
Updated Section 6.3: Power consumption characteristics and
added enhanced command for reducing consumption.
Updated Section 6.3: Power consumption characteristics and
enhanced command (HF2RF bit) for reducing consumption.
Changed Response example to Command example in Ta bl e 1 1 :
List of <Data> Send values for the SendRecv command for
different protocols.
Modified Table 2: Pin descriptions.
62/63Doc ID 018669 Rev 8
CR95HF
Please Read Carefully:
Information in this document is provided solely in connection with ST products. STMicroelectronics NV and its subsidiaries (“ST”) reserve the
right to make changes, corrections, modifications or improvements, to this document, and the products and services described herein at any
time, without notice.
All ST products are sold pursuant to ST’s terms and conditions of sale.
Purchasers are solely responsible for the choice, selection and use of the ST products and services described herein, and ST assumes no
liability whatsoever relating to the choice, selection or use of the ST products and services described herein.
No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted under this document. If any part of this
document refers to any third party products or services it shall not be deemed a license grant by ST for the use of such third party products
or services, or any intellectual property contained therein or considered as a warranty covering the use in any manner whatsoever of such
third party products or services or any intellectual property contained therein.
UNLESS OTHERWISE SET FORTH IN ST’S TERMS AND CONDITIONS OF SALE ST DISCLAIMS ANY EXPRESS OR IMPLIED
WARRANTY WITH RESPECT TO THE USE AND/OR SALE OF ST PRODUCTS INCLUDING WITHOUT LIMITATION IMPLIED
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE (AND THEIR EQUIVALENTS UNDER THE LAWS
OF ANY JURISDICTION), OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.
UNLESS EXPRESSLY APPROVED IN WRITING BY TWO AUTHORIZED ST REPRESENTATIVES, ST PRODUCTS ARE NOT
RECOMMENDED, AUTHORIZED OR WARRANTED FOR USE IN MILITARY, AIR CRAFT, SPACE, LIFE SAVING, OR LIFE SUSTAINING
APPLICATIONS, NOR IN PRODUCTS OR SYSTEMS WHERE FAILURE OR MALFUNCTION MAY RESULT IN PERSONAL INJURY,
DEATH, OR SEVERE PROPERTY OR ENVIRONMENTAL DAMAGE. ST PRODUCTS WHICH ARE NOT SPECIFIED AS "AUTOMOTIVE
GRADE" MAY ONLY BE USED IN AUTOMOTIVE APPLICATIONS AT USER’S OWN RISK.
Resale of ST products with provisions different from the statements and/or technical features set forth in this document shall immediately void
any warranty granted by ST for the ST product or service described herein and shall not create or extend in any manner whatsoever, any
liability of ST.
ST and the ST logo are trademarks or registered trademarks of ST in various countries.
Information in this document supersedes and replaces all information previously supplied.
The ST logo is a registered trademark of STMicroelectronics. All other names are the property of their respective owners.