NFC/HF RFID Reader/Writer Using the TRF7970A

Add to my manuals
40 Pages

advertisement

NFC/HF RFID Reader/Writer Using the TRF7970A | Manualzz

Application Report

SLOA227A – October 2015 – Revised December 2016

NFC/HF RFID Reader/Writer Using the TRF7970A

Erick Macias, Ralph Jacobi, Josh Wyatt

.................................................................

NFC/RFID Applications

ABSTRACT

The Near Field Communication (NFC) market is emerging into multiple fields including medical, consumer, retail, industrial, automotive, and smart grid. Reader/Writer is one of the three operational modes supported by the TRF7970A . When using Reader/Writer mode the user can configure the TRF7970A to read Type 2, Type 3, Type 4A, Type 4B, and Type 5 tag platforms, also called transponders. The tags can store NFC Data Exchange Format (NDEF) messages or proprietary defined data.

This application report describes the fundamental concepts of Reader/Writer mode and how to properly configure the TRF7907A transceiver for each supported technology. Furthermore, it describes how to successfully activate, select, and read or write supported tags.

This application report and example firmware focuses on examples where the user presents only one tag at a time. However, it is possible from both a hardware and firmware standpoint to read multiple tags at the same time.

For applications that use only Reader/Writer mode, the TRF7964A can be used as a drop-in alternative to the TRF7970A.

Sample code described in this document can downloaded from http://www.ti.com/lit/zip/sloa227 .

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

1

2 www.ti.com

7

8

9

5

6

1

2

3

4

10

11

12

1

2

3

15

16

17

18

19

10

11

12

13

14

5

6

7

8

9

3

4

1

2

28

29

30

25

26

27

20

21

22

23

24

Contents

Terms, Definitions, and Symbols

Introduction

..........................................................................................

4

...................................................................................................................

7

Initial RF Collision

............................................................................................................

9

TRF7970A Register Settings

.............................................................................................

12

Reader/Writer Mode

Quick Start Guide

.......................................................................................................

13

Hardware Description

......................................................................................................

27

Reader/Writer Firmware Example

........................................................................................

30

..........................................................................................................

35

Operational Overview

......................................................................................................

36

Reader/Writer Interoperability Results

...................................................................................

37

Conclusion

References

..................................................................................................................

38

..................................................................................................................

38

List of Figures

NFC Transceiver Polling Sequence Example

............................................................................

7

Reader/Writer Layers Including the PHY (TRF7970A)

.................................................................

8

RSSI Level Measurement Orientations

...................................................................................

9

Long Side RSSI Level Measurement

....................................................................................

10

Short Side RSSI Level Measurement

...................................................................................

10

Top Side RSSI Level Measurement

.....................................................................................

10

TRF7970A Reader/Writer Flow Diagram

................................................................................

14

ISO14443A Frame Format

................................................................................................

15

Reader/Writer Anticollision for ISO14443A

.............................................................................

16

Tag Activation Process for Type 4A Tags

..............................................................................

17

ISO14443B Frame Format

................................................................................................

18

ISO18092 Frame Format

..................................................................................................

18

ISO15693 Frame Format

..................................................................................................

19

Flow Chart for Determining Type 5 Tag Memory Size

................................................................

20

Text RTD Example for Type 2 Tags With a Static Memory Structure

...............................................

21

Text RTD Example for Type 2 Tags With a Dynamic Memory Structure

...........................................

22

Text RTD Example for Type 3 Tags

.....................................................................................

22

Type 3 Tag Attribute Information Block Format

........................................................................

23

Type 4 Tag NDEF Structure

..............................................................................................

24

Type 4 NDEF File Example for Text RTD

..............................................................................

24

Example of Type 4 Capability Container Contents

....................................................................

24

Text RTD Example for Type 5 Tags

.....................................................................................

25

MSP430F5529 LaunchPad Development Kit and DLP-7970ABP BoosterPack Plug-in Module

................

27

MSP432P401R LaunchPad Development Kit and DLP-7970ABP BoosterPack Plug-in Module

...............

28

MSP430F5529 USB Experimenter Board and TRF7970ATB

........................................................

29

Reader/Writer NFC Stack Architecture

..................................................................................

30

TI NFC Tool GUI

...........................................................................................................

35

Reader/Writer Tag Polling Mechanism

..................................................................................

36

Reader/Writer Demo System Block Diagram for MSP430F5529

....................................................

36

Reader/Writer Demo System Block Diagram for MSP432P401

.....................................................

37

List of Tables

NFC/RFID Tags Supported by Reader/Writer Mode

....................................................................

8

TRF7970A Default Register Values After SOFT_INIT and IDLE Direct Commands

..............................

12

DLP-7970ABP BoosterPack Plug-in Module + MSP-EXP430F5529LP Hardware Connections

................

31

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

4

5

6

7

TRF7970ATB + MSP-EXP430F5529 Experimenter Board Hardware Connections

...............................

31

DLP-7970ABP + MSP-EXP432P401R LaunchPad Development Kit Hardware Connections

...................

32

Legend for NFC/RFID Tag Support

......................................................................................

37

NFC/RFID Tags Supported by Reader/Writer Mode

..................................................................

37

Trademarks

BoosterPack, LaunchPad, EnergyTrace+ are trademarks of Texas Instruments.

All other trademarks are the property of their respective owners.

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

3

Terms, Definitions, and Symbols

1 Terms, Definitions, and Symbols

www.ti.com

ALL_REQ

NFC-A Polling command, equivalent to ISO14443-3 short frame command WupA (0x52)

ALLB_REQ

NFC-B Polling command, equivalent to ISO14443-3 command WupB

APDU

Application Protocol Data Unit, used in command-response pairs to exchange I (information), R (receive ready) or S (supervisory) blocks.

ATTRIB

PICC Selection Command, Type B

ATQA

Answer To ReQuest A, ISO14443-3 term, equivalent to NFC term SENS_RES

ATQB

Answer To ReQuest B, ISO14443-3 term, equivalent to NFC term SENSB_RES

CC

Capability Container, contains management data and is stored inside a read-only EF file. This EF is located inside the NDEF tag application. Default (or basic) file ID for this file (for NFC) is 0xE103. See

NFC Type 4 Tag Operation Specification and ISO/IEC 7816-4 for more information.

CE

Card Emulation, one of the three modes offered by NFC devices. In this optional mode of NFC operation, an NFC Forum device is considered to be a card emulation platform only when it is emulating a Type 3,

Type 4A or Type 4B Tag Platform. Emulation of any other cards or tags is outside the scope of the NFC

Forum Brand Promise.

DEP

Data Exchange Protocol, an abstracted operational layer that is using either ISO or NFC protocols to exchange data. Thus, two terms can be created with this acronym: ISO-DEP and NFC-DEP. In the context of this document, after activation and selection of the emulated card and before deactivation, ISO-DEP is used exclusively to exchange data between Reader/Writer (PCD) and Tag Platform (PICC).

EF

Elementary File, a set of data objects, records or units sharing the same file identifier and the same security attributes

File Identifier

Two byte data element used to address a file

fc

Carrier frequency, in the context of NFC/HF RFID, is 13.56 MHz ±7 kHz. This is the fundamental transmit frequency of the Reader/Writer (also called PCD)

Initiator

Generator of the RF field and source of the beginning of the NFCIP-1 communication

MIME

Multipurpose Internet Mail Extensions

Modulation Index, m

Signal amplitude ratio of peak F m inim um peak + m inim u m

or

1 F b

1 + b

, where b is the ratio between the modulated amplitude and the initial signal amplitude. The index m is defined per protocol type for both downlink and uplink and is generally expressed as a percentage (for example, Type A uses m = 100%, and Type B uses m = 8 to 14%).

NDEF

NFC Data Exchange Format

NFC

Near Field Communication

4

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

Terms, Definitions, and Symbols

PCB

Protocol Control Byte, used for conveying information required to control data transmission of blocks during the exchange of command-response APDU pairs. Bit coding of this byte and use rules are found in

ISO/IEC FDIS 14443-4.

PCD

Proximity Coupling Device (also commonly referred to as Reader/Writer)

PICC

Proximity Integrated Circuit Card (also commonly referred to as tag, tag platform or transponder)

PUPI

Pseudo Unique PICC Identifier (randomly generated or static number returned by PICC as part of the response to REQB, WupB, ALLB_REQ or SENSB_REQ)

RTD

Record Type Definition

SAK

Select AcKnowledge (from ISO14443-3), in NFC terms this is also called SEL_RES

SDD_RES

Equivalent to ISO14443-3 response to SDD_REQ, and is complete NFCID1 CLn + BCC (if cascade level

1 (single size UID) or indicates NFCID1 is incomplete in the response and further cascade levels must be completed to obtain complete NFCID1+BCC.

SDD_REQ

Equivalent to ISO14443-3 Type A anticollision sequence. Comprised of SEL_CMD, SEL_PAR and n data bits coded based on cascade level specified by SEL_CMD and calculated by value of SEL_PAR

SEL_RES

Equivalent to ISO14443-3 SAK response

SENS_REQ

NFC-A Polling command, equivalent to ISO14443-3 short frame command REQ_A (0x26)

SENS_RES

NFC-A Polling Response, equivalent to ISO14443-3 ATQA

SENSB_REQ

NFC-B Polling command, equivalent to ISO14443-3 command REQ_B

SENSB_RES

NFC-B Polling command response, equivalent to ISO14443-3 ATQB

SENSF_REQ

NFC-F Polling command

SENSF_RES

NFC-F Polling response

Single Device Detection (SDD)

Algorithm used by the Reader/Writer to detect one out of several targets in its RF field (Type A anticollision, from ISO/IEC 14443-3)

T2T

Type 2 Tag

T3T

Type 3 Tag

T4T

Type 4 Tag

T5T

Type 5 Tag

Tag

See Tag Platform

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

5

Terms, Definitions, and Symbols

www.ti.com

Tag Platform

Responds to Reader/Writer (PCD) commands by using load modulation scheme (passive operation)

Throughout this document, the terms tag, tag platform, and transponder all have the same meaning.

TLV

Type Length Value

Transponder

See Tag Platform

UID

Unique IDentifier

VICC

Vicinity Integrated Circuit Card

6

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

2 Introduction

Introduction

The TRF7970A device supports three modes: Reader/Writer, Card Emulation, and Peer to Peer. This document focuses on how to use the TRF7970A in Reader/Writer mode. This mode allows an NFC enabled system to activate and read existing RFID / NFC tags. In the case of the TRF7970A, it is possible to read Type 2 (T2T), Type 3 (T3T), Type 4A or B (T4T), and ISO15693 (T5T) tag platforms. NFC transceivers supporting Reader/Writer mode typically poll to check if a tag or NFC peer is present every

500 ms. This time is known as the period time, which includes the time the transceiver is polling

(searching for a tag) plus the time the transceiver is listening to be activated (in the case it is emulating a tag or is in Peer to Peer Target mode). In

Figure 1

, for example, the transceiver is first polling for Active A and F technology (Active Peer-to-Peer). Next, it polls for passive A technology (ISO14443A-3), passive B

(ISO14443B-3), passive F (ISO18092), and then passive V (ISO15693).

For more information on Active Peer-to-Peer communication and how passive A and F technology can be used to activate peer-to-peer communication, see

NFC Active and Passive Peer-to-Peer Communication

Using the TRF7970A

.

Figure 1. NFC Transceiver Polling Sequence Example

The Reader always generates the RF field and the tag load modulates the RF field to send their response.

Figure 2

shows the NFC/RFID layers used to read and write tags. Both T2T and T4TA platforms use technology ISO14443-3 (Type A) at an initial bit rate of 106 kbps for tag activation. T4TB platforms use technology ISO14443-3 (Type B) at an initial bit rate of 106 kbps for tag activation. After the activation process is completed, both T4TA and T4TB platforms use ISO7816-4 and ISODEP layers to read or write the tag content. After the T2T platform is activated it uses T2T commands to read or write the tag content.

T3T platforms use technology ISO18092 at an initial bit rate of 212 kbps or 424 kbps for tag activation.

When the T3T is activated it uses T3T commands to read or write the tag content. T5T platforms use technology ISO15693 for activation and to read the tag content.

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

7

Introduction

www.ti.com

NFC Data Exchange Format

(NDEF)

Type 4 A/B Tag

ISO 7816-4

+

ISODEP

ISO 14443-4

Type 2 Tag Type 3 Tag

T2T commands

MIFARE Ultralight

T3T commands

FeliCa-Lite

ISO

14443 B-3

ISO 14443 A-3

ISO 18092 =

NFCIP1

Type 5 Tag

ISO15693 commands

ISO15693-3

NFC/RFID Transceiver TRF7970A

Figure 2. Reader/Writer Layers Including the PHY (TRF7970A)

A 16-bit and a 32-bit microcontroller were used to interface with the TRF7970A to demonstrate a reference example of the Reader/Writer mode. The firmware supports flexible functions that allow the user to enable or disable reading T2T, T3T, T4TA/B, and T5T platforms. Additionally, the firmware provides support for NFC-enabled smart phones that can emulate tag platforms. The firmware can activate and select NFC-enabled smart phones, allowing users to read card data by creating their own custom applications using existing APIs.

Table 1

lists the NFC/RFID technologies that the provided example firmware supports.

NOTE:

Type 1 tags are not ISO compliant and require the use of Direct Mode 0 (DM0) to receive raw RF packets. Due to this, the firmware example does not support these tags.

Table 1. NFC/RFID Tags Supported by Reader/Writer

Mode

Tag Technology

Type 1

Type 2

Type 3

Type 4A

Type 4B

Type 5

Support

8

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

3 Initial RF Collision

Initial RF Collision

NFC enabled systems can support both Reader/Writer mode and listen mode. To ensure that two NFC

Reader devices do not send commands at the same time, an initial RF collision detection is required. The transceiver must check the external Received Signal Strength Indicator (RSSI) value that measures the strength of the demodulated subcarrier signal before enabling its own RF field. If the RSSI value is greater than 0x00, it will not enable its RF field.

The relation between the 3-bit code and the external RF field strength (A/m) sensed by the antenna must be determined by calculation or by experiments for each antenna design. The antenna Q-factor, coupling factor between the two antennas and connection to the RF input influence the result.

Figure 4

through

Figure 6

provide the correlation of the free space distance between two unmodified TRF7970ATB modules and the 3-bit external RSSI value in three directions (see

Figure 3

for more details on each orientation).

One TRF7970A has its RF field at full power (+5 V), and the second TRF7970A is used to take RSSI measurements across different distances.

Figure 3. RSSI Level Measurement Orientations

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

9

Initial RF Collision

www.ti.com

6

5

4

3

2

1

0

9

8

7

0x00 0x01 0x02 0x03 0x04 0x05 0x06

RSSI Levels and Oscillator Status Register Value (0x0F)

Figure 4. Long Side RSSI Level Measurement

0x07

9

8

7

6

5

4

3

2

1

0

0x00 0x01 0x02 0x03 0x04 0x05 0x06

RSSI Levels and Oscillator Status Register Value (0x0F)

Figure 5. Short Side RSSI Level Measurement

0x07

6

5

4

3

2

1

0

9

8

7

0x00 0x01 0x02 0x03 0x04 0x05 0x06

RSSI Levels and OScillator Status Register Value (0x0F)

Figure 6. Top Side RSSI Level Measurement

0x07

10

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

Initial RF Collision

The initial RF collision can be accomplished by performing the following steps:

1. Write a 0x02 or 0x03 (3-V or 5-V operation) to the Chip Status Control register (0x00), disabling the transmitter and enabling the receiver.

2. Send a Test External RF direct command (0x19).

3. Delay 50 µs to allow the transceiver to measure the field strength and latch the value into the RSSI register.

4. Read the RSSI Levels and Oscillator Status register (0x0F).

5. If the active channel RSSI value (bits 2-0) is greater than 0, remain in target mode for a predetermined

n milliseconds.

6. If the Active channel RSSI value (bits 2-0) is equal to 0, go into initiator or target mode for active or passive communication.

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

11

TRF7970A Register Settings

4 TRF7970A Register Settings

www.ti.com

After powering up the TRF7970A, sending SOFT_INIT (0x03) and IDLE (0x00) direct commands enables the passive target mode at 106 kbps.

Table 2

lists the default value of registers 0x00 to 0x16 and 0x18h to

0x1C after the commands are issued. Furthermore, it shows the registers that must be modified from their default values for Reader/Writer mode.

The ISO Control (0x01) register is modified whenever the Reader/Writer technology or bit rate changes.

The Chip Status Control (0x00) register is modified after initialization, and whenever the RF field is enabled or disabled. The Special Function (0x10) register requires modification for writing to Type 2 tags.

The Modulator and SYS_CLK Control (0x09), RX Special Settings (0x0A), and Regulator and I/O Control

(0x0B) registers are only need to be modified once, after initialization. The NFC Target Detection Level register must be modified after initialization based on the

TRF7970A Silicon Errata

.

Table 2. TRF7970A Default Register Values After SOFT_INIT and IDLE Direct

Commands

Address

0x11

0x12

0x13

0x14

0x15

0x0C

0x0D

0x0E

0x0F

0x10

0x16

0x18

0x19

0x1A

0x1B

0x1C

0x07

0x08

0x09

0x0A

0x0B

0x00

0x01

0x02

0x03

0x04

0x05

0x06

Register

Chip Status Control

ISO Control

ISO14443B TX options

ISO14443A high bit rate options

TX timer setting, H-byte

TX timer setting, L-byte

TX pulse-length control

RX no response wait

RX wait time

Modulator and SYS_CLK control

RX Special Setting

Regulator and I/O control

IRQ status

Collision position and interrupt mask

Collision position

RSSI levels and oscillator status

Special Function

Special Function

RAM

RAM

Adjustable FIFO IRQ Levels

Reserved

NFC Low Field Detection Level

NFC Target Detection Level

NFC Target Protocol

Test

Test

FIFO status

No

No

No

No

Yes

No

No

Yes

Yes

Yes

Requires

Modification

Yes

Yes

No

No

No

No

No

No

No

No

Optional

No

No

Yes

No

No

No

No

Value

0x00

0x00

0x00

0x00

0x00

0x00

0x3E

0x00

0x40

0x00

0x00

0x00

0x00

0x00

0x00

0x00

0x01

0x21

0x00

0x00

0xC1

0xC1

0x00

0x0E

0x07

0x91

0x10

0x87

12

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

5 Reader/Writer Mode

Reader/Writer Mode

The TRF7970A supports Reader/Writer mode for NFC-A (Type 2/4A), NFC-B (Type 4B), NFC-F (Type 3), and NFC-V (Type 5) tag platforms. Only one technology can be activated at a time, requiring the

Reader/Writer mode to poll through each technology individually to detect NFC tags. The way this is handled in the example firmware is illustrated by the flow diagram presented in

Figure 7 .

After the initial RF collision is completed and the RF field is turned on, there is a guard time before polling for the first technology. The guard time is a specified period of time where the RF field is on, but is unmodulated. The guard time allows for a tag platform to have enough time to be ready to reply to commands that are issued. The guard time requirements vary with each technology, and therefore the

ISO specifications for an individual technology should be referenced to find out more information about the guard time for that technology.

For the TRF7970A, there must be a 0x20 or 0x21 written to the Chip Status Control (0x00) register, and the appropriate technology setup for the ISO Control (0x01) register. The example firmware provided implements longer guard times than the minimum required by the specifications for NFC-A and NFC-B.

This is done to improve the performance of systems that rely on an RF field to power up additional devices.

The flow diagram for example firmware in

Figure 7

does not explicitly show the guard times, but they occur before sending the initial polling command for each technology. For example, the guard time before sending an ALL_REQ or SENS_REQ is set to be 5 ms in the firmware, so if the firmware confirms that

NFC-A is enabled, the firmware then turns on the RF field and waits for 5 ms before issuing the ALL_REQ or SENS_REQ command.

The firmware has been structured based on the NFC Forum Activity 1.0 specification, and does not include any anticollision processes for detecting and selecting multiple tags of the same technology. This is equivalent to having the Device Connection Limit set equal to zero.

It is possible to implement such processes with the TRF7970A by modifying the provided example firmware to support anticollision processes for the different technologies. The firmware has been designed to promote flexibility for modifications as well as custom applications, and the existing APIs can be leveraged to add anticollision functionality for each technology.

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

13

Reader/Writer Mode

Start as

Passive Target

Initial RF

Collision

Avoidance

Switch to

Initiator

No

RF field detected?

Yes

Stay in Target mode for n ms www.ti.com

No

Packet recieved?

Yes

Handle other

NFC/RFID

Protocols

NFC-A

Enabled?

No

NFC-B

Enabled?

No

NFC-F

Enabled?

No

NFC-V

Enabled?

Yes

Send

ALL_REQ or

SENS_REQ

Yes

Send

ALLB_REQ or

SENSB_REQ

Yes

Send

SENSF_REQ

Yes

Send

Inventory

Request

Response

Received?

Yes

Type 2/4A

Anticollision

(ISO14443-3)

Response

Received?

Yes

Type 4B

Anticollision

(ISO14443-4)

Data Exchange

Protocol

Response

Received?

Yes

Type 3

Anticollision

(ISO18092-3)

Response

Received?

Yes

Type 5

Anticollision

(ISO15693-3)

Deactivation

End

Figure 7. TRF7970A Reader/Writer Flow Diagram

No

Activation and

Selection

Data Exchange

Terminate

Communication

14

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

Reader/Writer Mode

5.1

Technology Activation Using the TRF7970A

The TRF7970A defaults as a passive target and therefore requires the ISO Control register (0x01) to be modified to enable the correct NFC technologies for Reader/Writer mode. Therefore, the following sections describe how to set up the TRF7970A and what the frame format is for each supported technology.

5.1.1

ISO14443-3 Type A (Type 2 and Type 4A Tags)

The frame format for ISO14443A packets at 106 kbps during anticollision (shown in

Figure 8 ) is based on

NFC-A technology specifications in NFCForum-TS-DigitalProtocol-1.0 and the ISO 14443-3 Specifications.

The Type A frame format does not include CRC bytes when sending anticollision commands, but does include the CRC bytes when sending tag selection and data exchange command.

Byte 1 ...

Byte n

CRC

(conditional)

CRC

(conditional)

Legend

Handled by TRF7970A

Handled by MCU

Figure 8. ISO14443A Frame Format

When the initial RF collision is completed and no RF field has been detected (as shown in

Figure 7

) the following registers must be modified before and after the anticollision is completed (see

Figure 9 ). For

more information, see

Section 3

.

• ISO Control Register (0x01)

→ 0x88 (ISO14443A at 106 kbps, receive without CRC during anticollision, before Select command) or

ISO Control Register (0x01) → 0x08 (ISO14443A at 106 kbps, receive with CRC after anticollision is completed).

• Send packet:

– Reset FIFO (0x0F) direct command.

– Transmission without (0x10, anticollision before Select command) or with (0x11, after anticollision is completed) CRC direct command.

– TX Length Byte 1 (0x1D) and TX Length Byte 2 (0x1E) registers.

– Write the command to the FIFO.

In the context of Type A, anticollision refers to the mandatory process for the retrieval of the UID, and does not imply support for detecting multiple Type A tags presented at the same time.

The ISO control register must be modified for the anticollision state to receive without CRC for the required commands (see the ISO14443-3 specification for more information). When the anticollision is completed, the ISO Control register must be modified to receive with CRC. Step 2 must be used to send commands to the passive target.

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

15

Reader/Writer Mode

www.ti.com

Send SENS_REQ at

106 kbps

SENS_RES received?

n = 1

No

Send SDD_REQ

(Cascade n )

SDD_RES

No

Exit anticollision layer

Send SDD_REQ

(Cascade n )

Increase Cascade

NFCID1 not complete

SEL_RES

NFCID1 complete, and only NFC-DEP compliant

Yes

ISO14443-4

Compliant?

NFCID1 complete and

Type 2 or Type 4A Tag is supported

No

ISO14443-4 (Type A)

Activation

Proprietary

Commands for

Type 2 Tags

Figure 9. Reader/Writer Anticollision for ISO14443A

5.1.1.1

Additional Tag Activation Commands for Type 4A Tags

Tags that communicate with NFC-A technology and are ISO14443-4 compliant are considered Type 4A tags and must be sent an additional command, RATS, to finish the activation process and allow the exchange of data. There is also an optional command, PPS Request, that can be sent prior to entering data exchange. Because the example firmware provided sends both of these commands (see

Figure 10

), this section describes how both of them work.

16

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

Reader/Writer Mode

Send RATS

ATS

Received?

No Exit Tag Activation

Check ATS for

PPS Support

No

Send PPS Request with highest mutually supported bitrate

PPS Response

Received?

Set TRF7970A bitrate to highest mutually supported bitrate

Data Exchange

Figure 10. Tag Activation Process for Type 4A Tags

1. Request Answer To Select (RATS)

The RATS command is used to select a Type 4A tag that has indicated support for ISO14443-4. All

Type 4A tags must respond to the RATS command by sending back an Answer to Select (ATS) response. The ATS response can optionally include information about supported bit rates, timing requirements, and optional fields for over the air commands. For further detail on the format of the ATS response, refer to the ISO14443-4 specification.

2. Protocol and Parameter Selection Request (PPS Request)

The PPS Request command is an optional command that can be issued by the reader to increase the communication bit rate with a Type 4A tag. The ATS response contains the information about the supported bit rates: 106 kbps, 212 kbps, 424 kbps, and 848 kbps. With this information, the firmware determines the highest mutually supported bit rate by comparing the ATS response to the enabled

Reader/Writer bit-rate settings, and send that bit rate to the tag in the PPS Request to ensure that the tag will operate at that data rate.

Upon receiving a PPS Response, the firmware will set the ISO Control Register (0x01) with the correct settings to transmit data at the previously determined bit rate. At this point both the Reader/Writer and the Type 4A tag are ready to begin exchanging data.

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

17

Reader/Writer Mode

www.ti.com

5.1.2

ISO14443B-3 (Type 4B Tags)

The frame format for ISO14443B packets at 106 kbps (see

Figure 11

) is based on NFC-B technology specifications in NFCForum-TS-DigitalProtocol-1.0 and the ISO 14443-3 Specifications. The Type B frame format must always include the two CRC bytes.

Byte 1 ...

Byte n CRC 1 CRC 2

Legend

Handled by TRF7970A

Handled by MCU

Figure 11. ISO14443B Frame Format

When the initial RF collision is completed and no RF field has been detected (see

Figure 7 ), the ISO

control register must be configured as shown in Step 1 below. Step 2 must be used to send commands to the NFC-B/ISO14443B tag. For more information on the initial RF collision, see

Section 3

.

1. ISO Control Register (0x01) → 0x0C (ISO 14443B at 106 kbps, receive with CRC)

2. Send packet

(a) Reset FIFO (0x0F) direct command.

(b) Transmission (0x11) with CRC direct command.

(c) TX Length Byte 1 (0x1D) and TX Length Byte 2 (0x1E) registers.

(d) Write the command to the FIFO.

5.1.2.1

Selection for Type 4B Tags

After activation is finished for a Type 4B tag the ATTRIB command must be issued to finish the selection of the tag to exchange data with it. The ATTRIB command sends the tag information on timing requirements, framing specifications for RF communication and for data packets, supported communication bit rates, and the CID value assigned to the tag.

To determine the highest mutually supported bit rate between the tag and the Reader/Writer the tenth byte of the SENSB_RES is compared with the enabled Reader/Writer bit-rate setting. One of the bytes in the

ATTRIB command is then set to tell the tag to operate at that bit rate. The possible bit rates are: 106 kbps,

212 kbps, 424 kbps, and 848 kbps.

The response to the ATTRIB (Answer to ATTRIB) is an acknowledgment that it received the ATTRIB command. Upon receiving the ATTRIB response, the firmware sets the ISO Control Register (0x01) with the correct settings to transmit data at the previously determined bit rate. Now the Reader/Writer and Type

4B tag can enter data exchange. For further detail on the format of the ATTRIB command, refer to the

ISO14443-3 specification.

5.1.3

ISO18092 (Type 3 Tags)

The frame format for ISO18092 packets at 212 kbps and 424 kbps (see

Figure 12 ) is based on NFC-F

technology specifications in NFCForum-TS-DigitalProtocol-1.0 and the ISO 18092/JIS X 6319-4 specifications. The Type F frame format must always include the two CRC bytes.

Byte 1 ...

Byte n CRC 1 CRC 2

18

Legend

Handled by TRF7970A

Handled by MCU

Figure 12. ISO18092 Frame Format

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

Reader/Writer Mode

When the initial RF collision is completed and no RF field has been detected (see

Figure 7 ), the ISO

control register must be configured as shown in Step 1 below. Step 2 must be used to send commands to the Type 3 tag. For more information on the initial RF collision, see

Section 3

.

1. ISO Control Register (0x01) → 0x1A (NFC-F at 212 kbps, receive with CRC) or

ISO Control Register (0x01) → 0x1B (NFC-F at 424 kbps, receive with CRC).

2. Send packet

(a) Reset FIFO (0x0F) direct command.

(b) Transmission with CRC direct command (0x11).

(c) TX Length Byte 1 (0x1D) and TX Length Byte 2 (0x1E) registers.

(d) Write the command to the FIFO.

The example firmware selects the first Type 3 tag that replies within an allotted time slot. Refer to the ISO

18092/JIS X 6319-4 or NFCForum-TS-DigitalProtocol-1.0 document for further details on the tag selection process and time slots.

5.1.4

ISO15693 (Type 5 Tags)

The frame format for ISO15693 packets at 26.48 kbps (see

Figure 13 ) is based on the ISO 15693-3

Specifications. The Type 5 frame format must always include the two CRC bytes.

Byte 1 ...

Byte n CRC 1 CRC 2

Legend

Handled by TRF7970A

Handled by MCU

Figure 13. ISO15693 Frame Format

When the initial RF collision is completed and no RF field has been detected (see

Figure 7 ), the ISO

control register must be configured as shown in Step 1 below. Step 2 must be used to send commands to the ISO15693 tag. For more information on the initial RF collision, see

Section 3

.

1. ISO Control Register (0x01) → 0x02 (ISO15693 at 26.48 kbps, one subcarrier, 1 out of 4, receive with

CRC).

2. Send packet

(a) Reset FIFO (0x0F) direct command.

(b) Transmission with CRC direct command (0x11).

(c) TX Length Byte 1 (0x1D) and TX Length Byte 2 (0x1E) registers.

(d) Write the command to the FIFO.

The provided example firmware does not contain anticollision for NFC-V/ISO15693 tags, so only one tag can be read or written to at one time.

Upon reading the basic information of tag, the firmware determines the available memory size and if any special request flags must be used (such as extended protocol or option flags) based on the response to

Get System Information commands (see

Figure 14

for further details).

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

19

Reader/Writer Mode

Send Inventory

Response?

Yes

Send Get System

Information with

Protocol Extension

Flag

No Exit ISO15693 Polling

Response?

Yes

Store number of blocks indicated (in bytes 13 and 14)

No

Send Get System

Information

www.ti.com

Response?

No

Yes

Store number of blocks indicated (in bytes 13 and 14)

TI Tag-It HF-I

Pro or Standard

Set number of blocks to 0x0B

Figure 14. Flow Chart for Determining Type 5 Tag Memory Size

5.2

Tag Memory Format With NDEF Examples

The NFC Data Exchange Format (NDEF) specification is a data format standard for storing information on

NFC tag platforms in messages. The composition of NDEF messages are determined by the various NFC

Forum Record Type Definition (RTD) formats. Among the supported RTD formats are Text, Uniform

Resource Identifier (URI), Smart Poster, V-Card, and MIME. The examples for the following sections focus on the NFC Forum Text RTD structure.

The method to detect and read/write NDEF contents vary between tag types, but one common factor is the requirement for basic information needed to read the contents of an NDEF formatted message. In most tags, this is called the Capability Container (CC) file. The exception to that is with Type 3 tags, which instead have an 'Attribute Information Block'. The information stored in these bytes is used to determine the mapping specification, data sizes, read and write access, and other parameters. According to the current specifications of each tag type, only after the CC (or Attribute Block) is read can the NDEF contents of a tag be read.

20

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

Reader/Writer Mode

For most tag types, with Type 3 being the exception once again, information about NDEF messages are stored with Tag, Length, Value (TLV) bytes. The Tag field provides information on the format and the

Length field indicates the length of the NDEF message. For Type 2 and Type 5 tags, the Value field is where the NDEF message itself is stored. For Type 4 tags, the Value field contains additional information about the NDEF message. Based on each NFC Forum tag specification, the TLV bytes may not be separate and must follow one another sequentially.

The following sections describe the basics of the memory layout, NDEF formatting, and Capability

Container (or Attribute Block) for each tag type. For further details, review the NFC Forum specifications for each tag type. References for each specification can be found in

Section 12 .

5.2.1

Type 2 Tags

5.2.1.1

Layout

Type 2 tags use a block memory format where each block contains four bytes of data. The read command for Type 2 tags read out four blocks at a time, so if a block number of 0x03 is given, then blocks 0x03 through 0x06 are read.

Type 2 tags have two possible memory structures depending on the size of the tag. Static memory structures apply for Type 2 tags that have a memory size equal to 64 bytes, whereas dynamic memory structures are applied to Type 2 tags with memory sizes larger than 64 bytes.

5.2.1.2

NDEF Format

For all Type 2 tags, the Capability Container (CC) is located on Block 3. Therefore, it is possible to determine if a tag is NDEF formatted just by checking the values read from Block 3. Only if the first byte is equal to a 0xE1 does the tag have NDEF data stored in the data area.

5.2.1.2.1

Static Memory Structure

For tags with a static memory structure, the CC is immediately followed by the NDEF contents starting in

Block 4 starting with the Tag field of the TLV bytes. The end of the NDEF message is indicated by a TLV that has a Tag field of 0xFE. This is known as the terminator TLV. See

Figure 15

for an example of a Text

RTD stored in a Type 2 Tag that has a static memory structure.

Block 0x03 (CC)

Block 0x04

Block 0x05

Block 0x06

Block 0x07

Block 0x08

Block 0x09

Block 0x0A

Byte 0

0xE1

0x03 (NDEF TLV

Tag Field)

0x15 (NDEF

Payload Length)

0x6E (‘n’)

0x20 (‘ ’)

0x65 (‘e’)

0x20 (‘ ’)

0x54 (‘T’)

Byte 1

0x10

0x19 (NDEF TLV

Length Field)

0x54 (Text RTD)

0x4E (‘N’)

0x50 (‘P’)

0x72 (‘r’)

0x42 (‘B’)

0x49 (‘I’)

Byte 2

0x06

0xD1 (Short Record,

Well Known RTD)

0x02 (Language

Length)

0x46 (‘F’)

0x6F (‘o’)

0x65 (‘e’)

0x79 (‘y’)

0x21 (‘!’)

Byte 3

0x00

0x01 (Record Type

Length)

0x65 (‘e’)

0x43 (‘C’)

0x77 (‘w’)

0x64 (‘d’)

0x20 (‘ ’)

0xFE (Terminator)

Figure 15. Text RTD Example for Type 2 Tags With a Static Memory Structure

5.2.1.2.2

Dynamic Memory Structure

For tags with a dynamic memory structure, the CC is followed by a series of TLV bytes for Lock Control and Memory Control. The NDEF TLV bytes are found starting at Byte 2 of Block 6. The end of the NDEF message is indicated by a TLV that has a Tag field of 0xFE. This is known as the terminator TLV. See

Figure 16

for an example of a Text RTD stored in a Type 2 Tag that has a dynamic memory structure.

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

21

Reader/Writer Mode

Block 0x03 (CC)

Block 0x06

Block 0x07

Block 0x08

Block 0x09

Block 0x0A

Block 0x0B

Block 0x0C

Block 0x0D

Byte 0

0xE1

Memory Control

TLV

0xD1 (Short Record,

Well Known RTD)

0x02 (Language

Length)

0x46 (‘F’)

0x6F (‘o’)

0x65 (‘e’)

0x79 (‘y’)

0x21 (‘!’)

Byte 1

0x10

Memory Control

TLV

0x01 (Record Type

Length)

0x65 (‘e’)

0x43 (‘C’)

0x77 (‘w’)

0x64 (‘d’)

0x20 (‘ ’)

0xFE (Terminator)

Byte 2

0x06

0x03 (NDEF TLV

Tag Field)

0x15 (NDEF

Payload Length)

0x6E (‘n’)

0x20 (‘ ’)

0x65 (‘e’)

0x20 (‘ ’)

0x54 (‘T’)

Byte 3

0x00

0x19 (NDEF TLV

Length Field)

0x54 (Text RTD)

0x4E (‘N’)

0x50 (‘P’)

0x72 (‘r’)

0x42 (‘B’)

0x49 (‘I’)

Figure 16. Text RTD Example for Type 2 Tags With a Dynamic Memory Structure

www.ti.com

5.2.1.3

Capability Container

The format for the CC for Type 2 tags is specified in the NFC Forum Type 2 Tag Operation Specification.

Version 1.2 was used to write this application report.

Byte 0 – This value is the 'magic number' and must always be equal to 0xE1 to indicate that NDEF data is stored.

Byte 1 – This value indicates the reader which mapping specification is being used by the tag.

Byte 2 – This value indicates the memory size of the data sections for the Type 2 Tag. This value must be multiplied by 8 to get the total memory size of the data section in Bytes.

Byte 3 – This value indicates the Read/Write access capabilities of the Type 2 Tag. The most significant nibble is for Read access. A value of 0x0 means the tag can be read from without any security. The least significant nibble is for Write access. A value of 0x0 means the tag can be written to without any security, and a value of 0xF means that the tag is Read Only.

5.2.2

Type 3 Tags

5.2.2.1

Layout

Type 3 tags have block memory format where each block contains 16 bytes of data. The blocks are numbered starting at Block 0. It is possible to read multiple blocks at once, and the maximum number of blocks that can be read is defined the Attribute Information Block (see Section 4.2.2.3 below for more details).

5.2.2.2

NDEF Format

For Type 3 tags, all the information about the NDEF content is stored within the Attribute Information

Block, and therefore Type 3 tags do not use a Capability Container. The Attribute Information Block is always located at Block 0, and contains all the required information to read and write NDEF messages.

Unlike the other tag types, the specifications for Type 3 Tags have not defined TLVs and therefore they are not used. See

Figure 17

for an example of a Text RTD stored in a Type 3 Tag.

Byte

0

Block 0 10h

Block 1 D1h

Block 2 65h

Byte

1

04h

01h

64h

Byte

2

01h

15h

20h

Byte

3

00h

54h

42h

Byte

4

Byte

5

0Dh 00h

02h

79h

65h

20h

Byte

6

00h

6Eh

54h

Byte

7

00h

4Eh

49h

Byte

8

00h

46h

21h

Byte

9

00h

43h

--

Byte

10

01h

20h

--

Figure 17. Text RTD Example for Type 3 Tags

Byte

11

00h

50h

--

Byte

12

00h

6Fh

--

Byte

13

19h

77h

--

Byte

14

00h

65h

--

Byte

15

3Ch

72h

--

22

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

Reader/Writer Mode

5.2.2.3

Attribute Information Block

The format for the Attribute Information Block (see

Figure 18

) is specified in the NFC Forum Type 3 Tag

Operation Specification. Version 1.2 was used to write this application report.

Mapping

Version

B0

Max Blocks to Read

B1

Max Blocks to Write

B2

Blocks for

NDEF Storage

B3

Unused

B4 B5 B6 B7 B8

Write

Flag

B9

NDEF Access

Read/Write Flag

B10

Current NDEF

Message Length

Checksum

B11 B12 B13 B14 B15

Figure 18. Type 3 Tag Attribute Information Block Format

Mapping Version (Byte 0): For NDEF format it is required that this is set to a valid version number.

Max Blocks to Read (Byte 1): This value indicates how many blocks of data can be read from the tag at one time.

Max Blocks to Write (Byte 2): This value indicates how many blocks of data can be written to the tag at one time.

Blocks for NDEF Storage (Bytes 3 and 4): These bytes indicate the number of blocks available for

NDEF content. Since each block is 16 bytes, this value should be multiplied by 16 to know how big the tag is in bytes.

Unused (Bytes 5-8): These bytes are not used, and typically are set to 0x00.

Write Flag (Byte 9): This flag is toggled when data is being written to the tag to indicate that the tag is currently in a write cycle.

NDEF Access Read/Write Flag (Byte 10): This flag is used to indicate the Read/Write privileges of the tag. A value of 0x00 means that the tag is Read Only, and a value of 0x01 means that the tag is

Read/Write available.

Current NDEF Message Length (Bytes 11-13): These bytes indicate the size of the NDEF message that is stored in bytes. Since this value is stored in bytes, it must be divided by 16 to determine how many blocks must be read to receive the full NDEF message.

Checksum (Bytes 14-15): This is used to verify the validity of the data in the Attribute block, and it is calculated by adding together the values of Bytes 0 through 13. (modified when written to)

5.2.3

Type 4 Tags

5.2.3.1

Layout

Type 4 Tags have an object oriented memory format that uses files and not blocks for data storage. Data is read or written by providing how many data bytes should be read or written out by using an index via an offset value of the selected file. The command for reading data from a Type 4 Tag is known as a Read

Binary, and the command for writing data to a Type 4 Tag is known as an Update Binary.

5.2.3.2

NDEF Format

To read an NDEF message from a Type 4 Tag, a series of selections and reads must be performed to properly access the data. The first step is to select the NDEF Application, which is signified by an

Application ID of 0xD2760000850101. The second step is to select the Capability Container file. NDEF applications must contain the Capability Container file with a File ID of 0xE103.

To read the contents of the CC, the first two bytes must be read first to determine the length of the CC, and then the rest of the CC must be read. The CC contains the File ID information for the NDEF data, and that must be used to read the correct File IDs to read all of the NDEF data from the tag. The CC also contains the TLV fields for each NDEF message stored.

There may be multiple files present in a single tag, so the information for each individual file must be stored within the CC. See

Figure 19

and

Figure 20

for an example of how the tag memory of a properly formatted NDEF message looks.

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

23

Reader/Writer Mode

www.ti.com

NDEF Application

Application ID =

0xD2760000850101

Type 4 Tag

Proprietary

Application

CC File

File ID = 0xE103

NDEF File

File ID = 0xE104

CC File (Optional)

Proprietary File

Other File(s)

Figure 19. Type 4 Tag NDEF Structure

0x00 (NDEF Message

Length)

0x54 (Text RTD)

0x46 (‘F’)

0x77 (‘w’)

0x20 (‘ ’)

0x49 (‘I’)

NDEF File Contents for Text RTD

0x19 (NDEF Message

Length)

0xD1 (Short Record,

Well Known RTD)

0x02 (Language Length)

0x43 (‘C’)

0x65 (‘e’)

0x42 (‘B’)

0x21 (‘!’)

0x65 (‘e’)

0x20 (‘ ’)

0x72 (‘r’)

0x79 (‘y’)

--

0x01 (Record Type

Length)

0x6E (‘n’)

0x50 (‘P’)

0x65 (‘e’)

0x20 (‘ ’)

--

Figure 20. Type 4 NDEF File Example for Text RTD

0x15 (NDEF

Payload Length)

0x4E (‘N’)

0x6F (‘o’)

0x64 (‘d’)

0x54 (‘T’)

--

5.2.3.3

Capability Container

The Capability Container is stored inside of a file that has a file identifier of 0xE103. The format for the

Capability Container is specified in the NFC Forum Type 4 Tag Operation Specification 3.0. See

Figure 21

for an example of a properly formatted CC.

Capability Container (File Number = 0xE103)

0x00 0x0F

CC Length

Mapping Version

MLe

MLc

Type

Length

File ID

Max NDEF Size

Read Capability

Write Capability

0x20

0x00

0x00

0x04

0x06

0xE1

0x0B

0x00

0x00

--

0x3B

0x34

--

--

0x04

0xDF

--

--

Figure 21. Example of Type 4 Capability Container Contents

CC Length – This 2 byte value is determined by the number of different files contained within the tag.

The formula to calculate the CC Length is: [7 + (number of files × 8)].

Mapping Version – This value tells the reader the mapping specification used by the tag.

24

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

Reader/Writer Mode

MLe – These 2 bytes indicate the maximum number of bytes that can be read from the tag by a single

Read Binary command.

MLc – These 2 bytes indicate the maximum number of bytes that can be written to the tag by a single

Write Binary command.

File Control TLV – The TLV blocks provide the reader with information about the tag data.

Tag Field (T) – This field contains the file type information of the TLV block. The following values may be used:

– 0x04 – NDEF File

– 0x05 – Proprietary File

– 0x06 – Extended NDEF file

Length Field (L) – This field contains the length of the value field of the TLV block

Value Field (V) – This field contains the file ID, the maximum file size, and the read/write access conditions of the file.

– File ID – Each file within the tag should have its own unique file ID number.

– Max File Size – This value is not the size of the data itself, but the size of the maximum possible data that can be stored within the file.

– Read Access (R) – Determines the read access properties of the file. A value of 0x00 means that the file has full read access. All other values are for limited read access.

– Write Access (W) – Determines the write access properties of the file. The value 0x00 allows for full write privileges. The value 0xFF disables all write privileges and makes the file read-only. All other values are for limited write access.

There must be a File Control TLV for each different file contained within the tag. Therefore, if there are three different files, there must be three TLVs that correspond to the settings of each file.

5.2.4

Type 5 Tags

5.2.4.1

Layout

Type 5 tags have a block memory format where each block can contain either four or eight bytes of data.

The blocks are numbered starting at Block 0. Blocks can be read with the Read Single Block command or with the Read Multiple Blocks command if the Type 5 tag supports that command.

5.2.4.2

NDEF Format

For an NDEF Formatted tag, the Capability Container (CC) must be placed in Block 0. The CC is immediately followed by the NDEF contents that should contain the Type and Length (TLV) information for the tag. The NDEF data is stored directly after the TLV length byte, and the end of the NDEF data is indicated by a TLV that starts with 0xFE, which is known as the terminator TLV. The example in

Figure 22

is for a Type 5 Tag that has 4-byte memory blocks.

Block 0x00 (CC)

Block 0x01

Block 0x02

Block 0x03

Block 0x04

Block 0x05

Block 0x06

Block 0x07

Byte 0

0xE1

0x03 (NDEF TLV

Tag Field)

0x15 (NDEF

Payload Length)

0x6E (‘n’)

0x20 (‘ ’)

0x65 (‘e’)

0x20 (‘ ’)

0x54 (‘T’)

Byte 1

0x10

0x19 (NDEF TLV

Length Field)

0x54 (Text RTD)

0x4E (‘N’)

0x50 (‘P’)

0x72 (‘r’)

0x42 (‘B’)

0x49 (‘I’)

Byte 2

0x06

0xD1 (Short Record,

Well Known RTD)

0x02 (Language

Length)

0x46 (‘F’)

0x6F (‘o’)

0x65 (‘e’)

0x79 (‘y’)

0x21 (‘!’)

Figure 22. Text RTD Example for Type 5 Tags

Byte 3

0x00

0x01 (Record Type

Length)

0x65 (‘e’)

0x43 (‘C’)

0x77 (‘w’)

0x64 (‘d’)

0x20 (‘ ’)

0xFE (Terminator)

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

25

Reader/Writer Mode

www.ti.com

5.2.4.3

Capability Container

The format of the Capability Container for Type 5 Tags presented below is based on the current conventions that are used in the field with existing Type 5 Tags.

Byte 0 – This value is the 'magic number' and must always be equal to 0xE1 to indicate that NDEF data is stored.

Byte 1 – This value indicates the reader which mapping specification is being used by the tag.

Byte 2 – This value indicates the memory size of the data sections for the Type 5 Tag. This value must be multiplied by 8 to get the total memory size of the data section in Bytes.

Byte 3 – This value indicates the Read/Write access capabilities of the Type 5 Tag. The most significant nibble is for Read access. A value of 0x0 means the tag can be read from without any security. The least significant nibble is for Write access. A value of 0x0 means the tag can be written to without any security, and a value of 0xF means that the tag is Read Only.

26

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

6 Hardware Description

6.1

LaunchPad™ Development Kit and BoosterPack™ Plug-in Module Setup

Hardware Description

6.1.1

BoosterPack Plug-in Module: DLP-7970ABP

The third party provider DLP Design NFC/RFID BoosterPack™ plug-in module (DLP-7970ABP) is an addon board designed to fit all of TI's MCU LaunchPad™ development kits. This BoosterPack plug-in module allows the software application developer to get familiar with the functionalities of TRF7970A multi-protocol fully integrated 13.56-MHz NFC/HF RFID IC on their TI embedded microcontroller platform of choice without having to worry about designing the RF section (see

Figure 23

and

Figure 24

).

The TRF7970A device is an integrated analog front end and data-framing device for a 13.56-MHz NFC/HF

RFID system. Built-in programming options make the device suitable for a wide range of applications for proximity and vicinity identification systems. The device can perform in one of three modes: Reader/Writer,

Peer-to-Peer, or Card Emulation mode. Built-in user-configurable programming registers allows fine tuning of various reader parameters as needed.

Link for purchase:

https://store.ti.com/dlp-7970abp.aspx

6.1.2

LaunchPad Development Kit: MSP-EXP430F5529LP

The MSP-EXP430F5529LP LaunchPad development kit is an easy-to-use evaluation module for the

MSP430F5529 USB microcontroller. It contains everything needed to start developing, including on-board emulation for programming and debugging, as well as on-board buttons and LEDs for quickly adding a simple user interface. Rapid prototyping is a snap, thanks to 40-pin access headers and a wide range of

BoosterPack plug-in modules. This enables technologies such as wireless, display drivers, temperature sensing, and much more (see

Figure 23

).

Link for purchase:

https://store.ti.com/msp-exp430f5529lp.aspx

Figure 23. MSP430F5529 LaunchPad Development Kit and DLP-7970ABP BoosterPack Plug-in Module

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

27

Hardware Description

www.ti.com

6.1.3

LaunchPad Development Kit: MSP-EXP432P401R

The MSP432P401R LaunchPad development kit enables you to develop high-performance applications that benefit from low-power operation. It features the MSP432P401R – which includes a 48-MHz ARM

Cortex M4F, 95-µA/MHz active power, and 850-nA RTC operation, a 14-bit 1-MSPS differential SAR ADC, and an AES256 accelerator.

This LaunchPad development kit includes an on-board emulator with EnergyTrace+™ Technology, which means you can program and debug your projects without the need for additional tools, while also measuring total system energy consumption (see

Figure 24 ).

Link for purchase:

https://store.ti.com/msp-exp432p401r.aspx

Figure 24. MSP432P401R LaunchPad Development Kit and DLP-7970ABP BoosterPack Plug-in Module

6.2

Experimenter Board Setup

6.2.1

MSP-EXP430F5529

The MSP430F5529 Experimenter Board (MSP-EXP430F5529) is a development platform for the

MSP430F5529 device, from the latest generation of MSP430 devices with integrated USB. The board is compatible with many TI low-power RF wireless evaluation modules such as the TRF7970ATB module.

The Experimenter Board helps designers quickly learn and develop using the new F55xx MCUs, which provide the industry's lowest active power consumption, integrated USB, and more memory and leading integration for other applications such as energy harvesting, wireless sensing and automatic metering infrastructure (AMI) (see

Figure 25

).

Link for purchase:

https://store.ti.com/MSP-EXP430F5529-MSP430F5529-USB-Experimenters-Board-

P2413.aspx

28

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

Hardware Description

6.3

TRF7970ATB Module

The TRF7970ATB Evaluation Module allows the software application developer to get familiar with the functionalities of TRF7970A Multi-Protocol Fully Integrated 13.56-MHz NFC/ HF RFID IC while allowing the freedom to develop with the Texas Instruments MCU of their choosing. The MSP-EXP430F5529

Experimenter Board is one such development platform. Alternatively, any other TI embedded microcontroller platform with the EM socket headers populated can be used.

The TRF7970ATB is hardwired for SPI communications, supports slave select and TRF7970A Direct

Mode 2 (default), Direct Mode 1, and Direct Mode 0 operations. The user also has access to and full control over the TRF7970A EN2 and EN lines, allowing for design and development of ultra-low-power high-frequency (HF) RFID/NFC systems. The module has an onboard boost converter ( TPS61222DCKT ) that boosts 3.3 VDC to 5 VDC out to TRF7970A IC for +23 dBm (full transmitter power out) operations

(see

Figure 25

).

Link for purchase:

https://store.ti.com/TRF7970ATB-TRF7970ATB-P4618.aspx

Figure 25. MSP430F5529 USB Experimenter Board and TRF7970ATB

6.4

Available Bundles for Purchase

The TI Store also has bundles available for purchase for each evaluation kit setup.

MSP-EXP430F5529LP + DLP-7970ABP:

https://store.ti.com/nfclink-bndl.aspx

MSP-EXP432P401R + DLP-7970ABP:

https://store.ti.com/nfclink-bndl-msp432.aspx

MSP-EXP430F5529 + TRF7970ATB:

https://store.ti.com/NFCLink-Evalution-Kit-P4617.aspx

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

29

Reader/Writer Firmware Example

7 Reader/Writer Firmware Example

www.ti.com

This section explains which APIs in the NFC/RFID layer (see

Figure 26 ) are used to initialize and handle

the Reader/Writer communication. Furthermore, it describes how to implement a Reader/Writer application that can send and receive NDEF message to and from an NFC-enabled device.

The firmware example that contains the Reader/Writer APIs discussed in this document can be downloaded from http://www.ti.com/lit/zip/sloa227 .

As downloaded, the firmware example includes the full TI NFC stack which supports Peer-to-Peer, Card

Emulation, and Reader/Writer modes. For applications that do not require all NFC operating modes, there are configuration options available to reduce the NFC stack memory footprint (only compiling required operating modes). These configurations can be made by modifying the #define statements within the

nfc_config.h file, located at [Install Path]\nfclink\Source\headers.

NFC Stack Architecture Layers

Application

Application

NFC

Scheduler

Reader/Writer

RFID/NFC

Legend

Layer Dependency

ISO Standards

NFC Forum Specifications

Other *.c/.h Files

User defined

Do not modify

NFC Forum NFC Data Exchange Format (NDEF) NDEF

Timer

Type 4 Tag

Type 2 Tag Type 3 Tag Type 5 Tag

ISO 7816-4 Protocol Handling

ISO 14443

B-4

ISO 14443 A-4

ISO 14443

B-3

ISO 14443A A-3

ISO18092 =

NFCIP1

(Data

Exchange

Protocol)

ISO15693-3

Technology

Selection

TRF7970A RFID/NFC Drivers

TRF7970A

Figure 26. Reader/Writer NFC Stack Architecture

30

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

Reader/Writer Firmware Example

7.1

Reader/Writer APIs

For details on all available APIs used in the provided example firmware for NFC Reader/Writer mode, see the NFCLink Standalone Software Library API Guide included in the install package. The guide is located in [Install Path]\doc.

The NFCLink Standalone Software Library API Guide describes the flow of the software stack, all APIs that are available for NFC Reader/Writer functionality, and each function to help users with developing custom NFC Reader/Writer applications.

7.2

Implementing a Reader/Writer Sample Application

This section explains how to implement a Reader/Writer sample application that uses buttons S1 and S2 on the MSP430F5529 LaunchPad development kit to send different NDEF messages to an NFC-enabled device.

Table 3

and

Table 4

show the connections between the MSP430F5529 and the TRF7970A for the different MSP430F5529 evaluation platforms.

Table 5

shows the connections between the MSP432P401R and the TRF7970A for the MSP432P401R LaunchPad development kit.

Table 3. DLP-7970ABP BoosterPack Plug-in Module +

MSP-EXP430F5529LP Hardware Connections

(1)

(2)

DLP-7970ABP Pins

TRF7970A EN1

TRF7970A IRQ

MOSI

MISO

CLK

MSP430F5529 LaunchPad

Development Kit Pins

P4.1

P2.2

(1)

P3.0

P3.1

P3.2

Slave Select

I/O_2

I/O_3

I/O_5

P4.2

P6.6

(2)

P2.0

(2)

P1.6

(2)

IRQ is defaulted to P3.0 for DLP-7970ABP v4.5 and newer (see the

DLP-7970ABP Hardware Update Overview

).

Pin is only needed for using Special Direct Mode

Table 4. TRF7970ATB + MSP-EXP430F5529

Experimenter Board Hardware Connections

(1)

TRF7970ATB Pins

TRF7970A EN1

TRF7970A IRQ

MOSI

MISO

CLK

Slave Select

MOD

ASK/OOK

MSP430F5529 EXP Board Pins

P2.3

P2.0

(1)

P3.0

P3.1

P3.2

P2.6

P2.1

P4.7

Requires a jumper to be placed between P2.0 and P4.0 on the

Experimenter Board.

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

31

Reader/Writer Firmware Example

Table 5. DLP-7970ABP + MSP-EXP432P401R

LaunchPad Development Kit Hardware Connections

(1)

(2)

TRF7970ATB Pins

TRF7970A EN1

TRF7970A IRQ

MOSI

MISO

CLK

Slave Select

I/O_2

I/O_3

I/O_5

MSP432P401R LaunchPad

Development Kit Pins

P6.4

P3.0

(1)

P1.6

P1.7

P1.5

P6.5

P4.3

(2)

P2.5

(2)

P4.1

(2)

IRQ defaults to P3.0 for DLP-7970ABP v4.5 and newer (see the

DLP-

7970ABP Hardware Update Overview

).

Pin is needed only for using Special Direct Mode.

www.ti.com

7.2.1

Low-Level Initialization

For the low-level initialization the MCU is initialized in MCU_init() by setting the main clock frequency of the MSP430F5529 to 25 MHz. The TRF7970A hardware connections and the MSP430F5529 SPI module

(SPI clock running at 4 MHz; minimum recommended is 2 MHz) is initialized in TRF79x0_init(). After this, the NFC_init must be called to properly initialize all variables within the NFC stack. When the NFC stack is initialized, it can be configured by calling the NFC_configuration function, which sets up the NFC stack to enable the TRF7970A for the desired modes of communication. Users can customize the enabled NFC modes either by modifying the function within the firmware or by using the PC GUI interface. See

Example 1

for an example of how to properly initialize the TRF7970A in the main(void) program of a C project.

Example 1. MCU and TRF7970A Initialization Code Snippet

32

#include "msp430.h"

#include "nfc_controller.h"

#include "tag_header.h"

#include "lp_buttons.h" t_sNfcRWMode g_sRWSupportedModes; t_sNfcRWCommBitrate g_sRWSupportedBitrates; t_sIsoDEP_RWSetup g_sRWSetupOptions; uint8_t g_ui8IsoDepInitiatorDID; uint8_t g_ui8TxBuffer[256]; uint8_t g_ui8TxLength; void main(void)

{ tNfcState eTempNFCState; tNfcState eCurrentNFCState;

// Reader/Writer Variables t_sNfcRWMode sRWMode; t_sNfcRWCommBitrate sRWBitrate;

// Initialize MCU

MCU_init();

// Enable interrupts globally

__enable_interrupt();

// Initialize USB Communication

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

Example 1. MCU and TRF7970A Initialization Code Snippet (continued)

Serial_init();

// Initialize TRF7970

TRF79x0_init();

#ifdef MSP430F5529_EXP_BOARD_ENABLED

Buttons_init(BUTTON_ALL);

Buttons_interruptEnable(BUTTON_ALL);

#endif

TRF79x0_idleMode();

// Initialize the NFC Controller

NFC_init();

// This function will configure all the settings for each protocol

NFC_configuration();

// Initialize the RW T2T, T3T, T4T and T5 state machines

T2T_init(g_ui8TxBuffer,256);

T3T_init(g_ui8TxBuffer,256);

T4T_init(g_ui8TxBuffer,256);

T5T_init(g_ui8TxBuffer,256);

Reader/Writer Firmware Example

7.2.2

Reader/Writer NFC Stack Configuration

The Reader/Writer NFC stack is initialized by setting the bits for each desired Reader/Writer mode with the g_sRWSupportedModes variable inside of the NFC_configuration function. Then for each NFC mode, it is possible to customize which bit rates are supported by the firmware. In

Example 2

, ISO14443A (NFC-

A) is enabled with bit rates of 106 kbps and 848 kbps selected, ISO14443B (NFC-B) is enabled with bit rates of 106 kbps and 848 kbps selected, FeliCa (NFC-F) is enabled with a bit rates of 212 kbps selected, and ISO15693 is enabled with a bit rate of 26.48 kbps selected.

For NFC-A and NFC-B, the 106-kbps bit rate must be used even if a higher bit rate is desired, because the tags can only be selected with 106-kbps communication. When the tag selection is complete, the firmware increases the bit rate if the higher bit rate is supported by the tag.

Example 2. Reader/Writer Stack Configuration Code Snippet

// Enable Reader Writer Supported Modes g_sRWSupportedModes.bits.bNfcA = 1; g_sRWSupportedModes.bits.bNfcB = 1; g_sRWSupportedModes.bits.bNfcF = 1; g_sRWSupportedModes.bits.bISO15693 = 1;

// NFC-A Bit rates g_sRWSupportedBitrates.bits.bNfcA_106kbps = 1; // Must be enabled if bNfcA is set g_sRWSupportedBitrates.bits.bNfcA_212kbps = 0; g_sRWSupportedBitrates.bits.bNfcA_424kbps = 0; g_sRWSupportedBitrates.bits.bNfcA_848kbps = 1;

// NFC-B Bit rates g_sRWSupportedBitrates.bits.bNfcB_106kbps = 1; // Must be enabled if bNfcB is set g_sRWSupportedBitrates.bits.bNfcB_212kbps = 0; g_sRWSupportedBitrates.bits.bNfcB_424kbps = 0; g_sRWSupportedBitrates.bits.bNfcB_848kbps = 1;

// NFC-F Bit rates g_sRWSupportedBitrates.bits.bNfcF_212kbps = 1; g_sRWSupportedBitrates.bits.bNfcF_424kbps = 0;

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

33

Reader/Writer Firmware Example

Example 2. Reader/Writer Stack Configuration Code Snippet (continued)

// ISO15693 Bit rates g_sRWSupportedBitrates.bits.bISO15693_26_48kbps = 1; www.ti.com

7.2.3

Activation

After configuration is completed, the NFC_run function is called to run the NFC stack that polls for the enabled technologies, and then goes through activation and selection for the first tag that it receives a reply from. When the tag is properly activated and selected, then the application calls the state machines needed to read the data from the tag.

7.2.4

Reading and Writing Tags

There are four different state machines available for reading and writing tags: T2T_stateMachine,

T3T_stateMachine, T4T_stateMachine, and T5T_stateMachine. Since Type 4A and Type 4B Tags use the same memory structure, after activation and selection the same process can be used to read and write either T4TA or T4TB platforms.

When a state machine is called, it automatically attempts to read a tag of that technology by default. It first checks for NDEF content on the tag and, if an NDEF message is found, then reads it. If no NDEF content is found, then the state machine proceeds to read the raw data from the tag. The firmware sends the received data to the USB interface to display it on the TI NFC Tool GUI (see

Section 8 ).

If a user needs to access the read data for an application specific purpose, it is possible to copy the data read from the tag by finding the correct read within the state machine. Each state machine is designed to output received tag data to the USB interface, so the most recently received data can be found at any

Serial_printBuffer function call.

To keep the memory sizes at reasonable levels, the amount of data that is stored from reading tags at any time is limited. At the top of each state machine is a declaration for a buffer labeled as g_pui8TXTRxBuffer, where the X represents the tag type number.

When a tag has been fully read, then the state machine enters an IDLE state. During this state, the state machine can enter a write state to write new data onto the tag. However, this behavior could be modified if desired.

When the tag state machine has finished reading and, if applicable, writing the tag, it exits and returns back to the main application code. No further polling, reads, or writes take place until the tag is removed from the RF field. When the tag is removed, then the reader reinitializes the state machines to reset them and resumes polling for each enabled technology (see

Section 7.2.3

).

34

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

8 Quick Start Guide

Quick Start Guide

The

NFCLink Standalone Getting Started Guide

provides complete details of how to get started with the provided example firmware and TI hardware.

This guide describes how to load the example firmware to TI evaluation boards and explains the features of the TI NFC Tool GUI (see

Figure 27 ), which is installed with the firmware package.

The TI NFC Tool allows for quick configuration of the different NFC modes and provides an inferface to read and write data with the supported NFC tag platforms.

Figure 27. TI NFC Tool GUI

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

35

Operational Overview

9 Operational Overview

www.ti.com

The Reader/Writer demo on the MSP430F5529 has two modes: a stand-alone mode and a host mode that requires a system (PC typically) to run the TI NFC Tool GUI. The stand-alone mode can be configured for specific bit rates for each supported tag technology: Type 2 and Type 4A at 106, 212, 424, or 848 kbps, Type 3 at 212 or 424 kbps, Type 4B at 106, 212, 424, or 848 kbps, and Type 5 at 26.48

kbps.

The order in which the firmware polls for the different tag technologies is NFC-A (Type 2 or Type 4A),

NFC-B (Type 4B), NFC-F (Type 3), and NFC-V (Type 5). If no tags are detected, the polling returns to

NFC-A (Type 2 or Type 4A) (see

Figure 28

for the switching mechanism while in stand-alone mode).

Polling commands for NFC-A and NFC-B must be sent at 106 kbps, and then the bit rate can be increased after activation is completed.

NFC-V at 26.48 kbps

NFC-A at 106 kbps

NFC-F at 212 kbps or at 424 kbps

NFC-B at 106 kbps

Figure 28. Reader/Writer Tag Polling Mechanism

The second mode requires a host (PC) to run the TI NFC Tool GUI and then connect to either the

MSP430F5529 Experimenter Board or LaunchPad development kit through the USB CDC (see

Figure 29

), or the MSP432P401R LaunchPad development kit through the back channel UART interface (see

Figure 30 ). The GUI allows the user to select which modes to enable/disable. When a connection is

established with an NFC-enabled device, the GUI switches to the Reader/Writer tab, which allows the user to view the tag data and send a customized text or URI RTD for NDEF formatted tags.

Host

MSP430F5529

TRF7970A LEDs

Figure 29. Reader/Writer Demo System Block Diagram for MSP430F5529

36

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

Reader/Writer Interoperability Results

Host

MSP432P401R

TRF7970A LEDs

Figure 30. Reader/Writer Demo System Block Diagram for MSP432P401

10 Reader/Writer Interoperability Results

The firmware example provided has been tested for interoperability between the TRF7970A and a multitude of NFC tags existing in the market to ensure that each supported tag type can be activated, selected, and have NDEF data read and written. Use the legend shown in

Table 6

for the results in

Table 7

.

Table 6. Legend for NFC/RFID Tag Support

Legend

Supported

Not Supported

Table 7

lists the results from the tests that were run to validate the interoperability of the Reader/Writer firmware stack with various existing tag technology types and NFC devices that are currently in the market. NFC Type 1 Tags are not supported as they are not ISO compliant and therefore require the use of Direct Mode 0 to communicate with them. While it is possible from a hardware standpoint to support these tags with the TRF7970A, the Reader/Writer firmware as provided does not support Type 1 Tags.

Table 7. NFC/RFID Tags Supported by Reader/Writer

Mode

NFC/RFID Tags

Type 1

Type 2

Type 3

Type 4A

Type 4B

RF430CL33xH

Type 5

RF430FRL15xH

RF37S114

Tag-It HF-I Standard

Tag-It HF-I Pro

Tag-It HF-I Plus

Read

Write

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

NFC/HF RFID Reader/Writer Using the TRF7970A

Copyright © 2015–2016, Texas Instruments Incorporated

37

Conclusion

www.ti.com

11 Conclusion

Reader/Writer is one of the three modes supported by the TRF7970A transceiver. The existing

Reader/Writer NFC stack supports reading and writing for Type 2, Type 3, Type 4A, Type 4B, and Type 5

Tag Platforms. The stack has been designed to read a single tag at a time, and does not have anticollision procedures for when multiple tags of the same technology are presented in the field at the same time. If multiple tags of different technologies are presented, only one of those tags is activated.

The Reader/Writer demo has two modes, a stand-alone mode and a GUI mode. In stand-alone mode the

Reader/Writer must be preconfigured to read tags and indicates successful communication with NFC Tag

Platforms by lighting an LED. The GUI mode enables users to see the contents that are read from tags, including NDEF Text and URI RTDs. It is also possible to write custom NDEF Text or URI RTDs to an

NDEF formatted tag.

Based on the test results shown in

Table 7

, the Reader/Writer firmware can support all NFC Forum compliant Tag Platforms except for Type 1.

For applications that use only Reader/Writer mode, the TRF7964A can be used as a drop-in alternative to the TRF7970A.

As downloaded, the firmware example includes the full TI NFC stack which supports Peer-to-Peer, Card

Emulation, and Reader/Writer modes. For applications that do not require all NFC operating modes, there are configuration options available to reduce the NFC stack memory footprint (only compiling required operating modes). These configurations can be made by modifying the #define statements within the

nfc_config.h file, located at [Install Path]\nfclink\Source\headers.

For more information about NFC Peer-to-Peer operation, see

NFC Active and Passive Peer-to-Peer

Communication Using the TRF7970A

.

For more information about NFC Card Emulation, see

NFC Card Emulation Using the TRF7970A

.

12 References

1.

TRF7970A Multiprotocol Fully Integrated 13.56-MHz RFID and NFC Transceiver IC

2.

MSP430F551x, MSP430F552x Mixed-Signal Microcontrollers

3.

MSP432P401R, MSP432P401M Mixed-Signal Microcontrollers

4. ISO/IEC 7816-4:2005(E) ( http://www.ansi.org

)

5. ISO/IEC 18092/ECMA-340 (NFCIP – 1) ( http://www.ecma-international.org

)

6. ISO/IEC 21481/ECMA-352 (NFCIP – 2) ( http://www.ecma-international.org

)

7. JIS X 6319-4 ( http://www.webstore.jsa.or.jp/ )

8. ISO/IEC 14443-3:2009(E) ( http://www.ansi.org

)

9. ISO/IEC 14443-4:2008(E) ( http://www.ansi.org

)

10. ISO/IEC 15693-2:2006(E) ( http://www.ansi.org

)

11. ISO/IEC 15693-3:2009(E) ( http://www.ansi.org

)

12. NFCForum-TS-DigitalProtocol-1.0 (Digital Protocol) ( http://www.nfc-forum.org

)

13. NFCForum-TS-Activity-1.0 (Activity Protocol) ( http://www.nfc-forum.org

)

14. NFCForum-TS-RTD_1.0 (NFC Record Type Definition (RTD)) ( http://www.nfc-forum.org

)

15. NFCForum-TS-RTD_Text_1.0 (Text Record Type Definition) ( http://www.nfc-forum.org

)

16. NFCForum-TS-RTD_URI_1.0 (URI Record Type Definition) ( http://www.nfc-forum.org

)

17. NFCForum-TS-NDEF_1.0 (NFC Data Exchange Format (NDEF)) ( http://www.nfc-forum.org

)

18. NFC Forum T2TOP (Type 2 Tag Operation) ( http://www.nfc-forum.org

)

19. NFC Forum T3TOP (Type 3 Tag Operation) ( http://www.nfc-forum.org

)

20. NFC Forum T4TOP (Type 4 Tag Operation) ( http://www.nfc-forum.org

)

21. NFC Forum Logo http://nfc-forum.org/our-work/nfc-branding/n-mark/the-n-mark-license/ )

38

NFC/HF RFID Reader/Writer Using the TRF7970A

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

www.ti.com

Revision History

Revision History

NOTE: Page numbers for previous revisions may differ from page numbers in the current version.

Changes from October 2, 2015 to December 9, 2016

.....................................................................................................

Page

• Changed the note that starts "Type 1 tags are not ISO compliant..." in

Section 2 , Introduction

................................

8

• Added version 1.0 to "The firmware has been structured based on the NFC Forum Activity 1.0 specification..."

..........

13

• Added link for MSP-EXP430F5529 + TRF7970ATB bundle purchase in

Section 6.4

, Available Bundles for Purchase

...

29

• Added the paragraph that starts "As downloaded, the firmware example includes..." in

Section 7 , Reader/Writer Firmware

Example

...................................................................................................................................

30

• Moved

Section 7.1

, Reader/Writer APIs (was previously Section 5.3)

...........................................................

31

• Removed row for TRF7970A EN2 from

Table 3 , DLP-7970ABP BoosterPack Plug-in Module + MSP-EXP430F5529LP

Hardware Connections

..................................................................................................................

31

• Removed row for TRF7970A EN2 from

Table 4 , TRF7970ATB + MSP-EXP430F5529 Experimenter Board Hardware

Connections

..............................................................................................................................

31

• Changed P6.2 to P6.4 in the first row of

Table 5 , DLP-7970ABP + MSP-EXP432P401R LaunchPad Development Kit

Hardware Connections

..................................................................................................................

32

• Removed row for TRF7970A EN2 from

Table 5 , DLP-7970ABP + MSP-EXP432P401R LaunchPad Development Kit

Hardware Connections

..................................................................................................................

32

• Changed "SPI clock running at 2 MHz" to "SPI clock running at 4 MHz; minimum recommended is 2 MHz" in

Section 7.2.1

, Low-Level Initialization

.................................................................................................

32

• Updated

Example 1

, MCU and TRF7970A Initialization Code Snippet

..........................................................

32

• Added information about NFC-B and NFC-F in the first paragraph of

Section 7.2.2

, Reader/Writer NFC Stack

Configuration

.............................................................................................................................

33

• Updated

Example 2

, Reader/Writer Stack Configuration Code Snippet

.........................................................

33

• Added

Section 8 , Quick Start Guide

..................................................................................................

35

• Removed former Section 9, Operational Detail

......................................................................................

37

• Updated the first paragraph of

Section 10 , Reader/Writer Interoperability Results

.............................................

37

• Added information about Type 1 tags in the paragraph that starts "

Table 7

lists the results from the tests..." in

Section 10

,

Reader/Writer Interoperability Results

................................................................................................

37

• Added RF37S114 to

Table 7 , NFC/RFID Tags Currently Supported by Reader/Writer Mode

................................

37

• Removed former Section 11, Out of the Box Experience

..........................................................................

38

• Updated

Section 11

, Conclusion

.......................................................................................................

38

SLOA227A – October 2015 – Revised December 2016

Submit Documentation Feedback

Copyright © 2015–2016, Texas Instruments Incorporated

Revision History

39

IMPORTANT NOTICE

Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, enhancements, improvements and other changes to its semiconductor products and services per JESD46, latest issue, and to discontinue any product or service per JESD48, latest issue. Buyers should obtain the latest relevant information before placing orders and should verify that such information is current and complete. All semiconductor products (also referred to herein as “components”) are sold subject to TI’s terms and conditions of sale supplied at the time of order acknowledgment.

TI warrants performance of its components to the specifications applicable at the time of sale, in accordance with the warranty in TI’s terms and conditions of sale of semiconductor products. Testing and other quality control techniques are used to the extent TI deems necessary to support this warranty. Except where mandated by applicable law, testing of all parameters of each component is not necessarily performed.

TI assumes no liability for applications assistance or the design of Buyers’ products. Buyers are responsible for their products and applications using TI components. To minimize the risks associated with Buyers’ products and applications, Buyers should provide adequate design and operating safeguards.

TI does not warrant or represent that any license, either express or implied, is granted under any patent right, copyright, mask work right, or other intellectual property right relating to any combination, machine, or process in which TI components or services are used. Information published by TI regarding third-party products or services does not constitute a license to use such products or services or a warranty or endorsement thereof. Use of such information may require a license from a third party under the patents or other intellectual property of the third party, or a license from TI under the patents or other intellectual property of TI.

Reproduction of significant portions of TI information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompanied by all associated warranties, conditions, limitations, and notices. TI is not responsible or liable for such altered documentation. Information of third parties may be subject to additional restrictions.

Resale of TI components or services with statements different from or beyond the parameters stated by TI for that component or service voids all express and any implied warranties for the associated TI component or service and is an unfair and deceptive business practice.

TI is not responsible or liable for any such statements.

Buyer acknowledges and agrees that it is solely responsible for compliance with all legal, regulatory and safety-related requirements concerning its products, and any use of TI components in its applications, notwithstanding any applications-related information or support that may be provided by TI. Buyer represents and agrees that it has all the necessary expertise to create and implement safeguards which anticipate dangerous consequences of failures, monitor failures and their consequences, lessen the likelihood of failures that might cause harm and take appropriate remedial actions. Buyer will fully indemnify TI and its representatives against any damages arising out of the use of any TI components in safety-critical applications.

In some cases, TI components may be promoted specifically to facilitate safety-related applications. With such components, TI’s goal is to help enable customers to design and create their own end-product solutions that meet applicable functional safety standards and requirements. Nonetheless, such components are subject to these terms.

No TI components are authorized for use in FDA Class III (or similar life-critical medical equipment) unless authorized officers of the parties have executed a special agreement specifically governing such use.

Only those TI components which TI has specifically designated as military grade or “enhanced plastic” are designed and intended for use in military/aerospace applications or environments. Buyer acknowledges and agrees that any military or aerospace use of TI components which have not been so designated is solely at the Buyer's risk, and that Buyer is solely responsible for compliance with all legal and regulatory requirements in connection with such use.

TI has specifically designated certain components as meeting ISO/TS16949 requirements, mainly for automotive use. In any case of use of non-designated products, TI will not be responsible for any failure to meet ISO/TS16949.

Products

Audio

Amplifiers

Data Converters

DLP® Products

DSP

Clocks and Timers

Interface

Logic

Power Mgmt

Microcontrollers

RFID

OMAP Applications Processors

Wireless Connectivity www.ti.com/audio amplifier.ti.com

dataconverter.ti.com

www.dlp.com

dsp.ti.com

www.ti.com/clocks interface.ti.com

logic.ti.com

power.ti.com

microcontroller.ti.com

Applications

Automotive and Transportation

Communications and Telecom

Computers and Peripherals

Consumer Electronics

Energy and Lighting

Industrial

Medical

Security

Space, Avionics and Defense

Video and Imaging www.ti-rfid.com

www.ti.com/omap

TI E2E Community

www.ti.com/wirelessconnectivity www.ti.com/automotive www.ti.com/communications www.ti.com/computers www.ti.com/consumer-apps www.ti.com/energy www.ti.com/industrial www.ti.com/medical www.ti.com/security www.ti.com/space-avionics-defense www.ti.com/video e2e.ti.com

Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265

Copyright © 2016, Texas Instruments Incorporated

advertisement

Was this manual useful for you? Yes No
Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Related manuals

Download PDF

advertisement

Table of contents