Qwiic Dynamic NFC/RFID Tag Hookup Guide a learn.sparkfun.com tutorial

Available online at: http://sfe.io/t3012

Contents

Introduction

The SparkFun Qwiic Dynamic NFC/RFID Tag features the ST25DV64KC dynamic Near Frequency Communication (NFC) / Radio Frequency Identification (RFID) tag IC from STMicroelectronics©. The ST25DV64KC offers 64-kBit (8-kBytes) of EEPROM memory which can be accessed over both I2C and RF (NFC)! It's a state-of-the-art tag which conforms to ISO/IEC 15693 or NFC Forum Type 5 recommendations. You can read and write the tag's memory using NFC even while the tag is powered down or disconnected!

SparkFun Qwiic Dynamic NFC/RFID Tag

SparkFun Qwiic Dynamic NFC/RFID Tag

SEN-21274
$9.95
1

In this guide we'll go into some detail on the ST25DV64KC IC and other hardware on this Qwiic breakout, how to assemble it into a Qwiic circuit and then install the SparkFun ST25DV64KC Arduino Library.

Required Materials

To follow along with this guide you will need a microcontroller to communicate with the Qwiic Dynamic NFC/RFID Tag. Below are a few options that come Qwiic-enabled out of the box:

SparkFun Thing Plus - ESP32 WROOM (Micro-B)

SparkFun Thing Plus - ESP32 WROOM (Micro-B)

WRL-15663
$22.50
13
SparkFun RedBoard Plus

SparkFun RedBoard Plus

DEV-18158
$21.50
6
SparkFun Thing Plus - Artemis

SparkFun Thing Plus - Artemis

WRL-15574
$22.50
2
SparkFun RedBoard Artemis

SparkFun RedBoard Artemis

DEV-15444
$21.50
10

If your chosen microcontroller is not already Qwiic-enabled, you can add that functionality with one or more of the following items:

SparkFun Qwiic Cable Kit

SparkFun Qwiic Cable Kit

KIT-15081
$8.95
20
SparkFun Qwiic Adapter

SparkFun Qwiic Adapter

DEV-14495
$1.60
4
SparkFun Qwiic Shield for Arduino

SparkFun Qwiic Shield for Arduino

DEV-14352
$7.50
9
SparkFun Qwiic Shield for Thing Plus

SparkFun Qwiic Shield for Thing Plus

DEV-16790
$4.95

You will also need at least one Qwiic cable to connect your sensor to your microcontroller.

Qwiic Cable - 50mm

Qwiic Cable - 50mm

PRT-14426
$0.95
Qwiic Cable - 100mm

Qwiic Cable - 100mm

PRT-14427
$1.50

Qwiic Cable - 500mm

PRT-14429
1 Retired

Qwiic Cable - 200mm

PRT-14428
Retired

Optional Materials

Suggested Reading

If you aren't familiar with the Qwiic system, we recommend reading here for an overview.

Qwiic Connect System

We also recommend taking a look at the following tutorials if you aren't familiar with the concepts covered in them. If you are using one of the Qwiic Shields listed above, you may want to read through their respective Hookup Guides as well before you get started with the Qwiic Dynamic NFC/RFID Tag.

I2C

An introduction to I2C, one of the main embedded communications protocols in use today.

RFID Basics

Dive into the basics of Radio Frequency Identification (RFID) technology.

Qwiic Shield for Arduino & Photon Hookup Guide

Get started with our Qwiic ecosystem with the Qwiic shield for Arduino or Photon.

SparkFun Qwiic Shield for Arduino Nano Hookup Guide

Hookup Guide for the SparkFun Qwiic Shield for Arduino Nano.

Hardware Overview

Let's take a closer look at the ST25DV64KC and other hardware present on the Qwiic Dynamic NFC/RFID Tag.

ST25DV64KC Dynamic NFC/RFID Tag

The ST25DV64KC from STMicroelectronics is a unique tag IC that communicates over both I2C and RF (NFC). It conforms to ISO/IEC 15693 (13.56 MHz frequency) and NFC Forum Type 5 recommendations.

Highlighting the ST25DV64KC IC.

The ST25DV64KC includes 64 Kbit EEPROM for users to write and read data from, a general purpose output to act as an external interrupt reporting events such as RF field changes, RF activity, I2C writes and RF switch toggling over I2C. The IC has a supply voltage range of 1.8V to 5.5V though when in a Qwiic circuit it runs at 3.3V. It also includes an energy harvesting pin capable of outputing µW of power with an RF field of sufficient strength. For a complete overview of the ST25DV64KC, refer to the datasheet.

The ST25DV64KC supports a fast transfer mode to send the contents of a 256 byte buffer between a device connected to the tag over I2C (refered to as the tag's Mailbox) and an RF device such as a reader or smartphone. This makes it so you can store data on the tag and have it available for reading by an RF device by simply bringing it into the RF read range, even if the tag is powered off. This data can also be password protected with a 64-bit value.

Power and Communication Interfaces

The Qwiic Dynamic NFC/RFID Tag has two interfaces for powering and communicating with the ST25DV64KC: a pair of Qwiic connectors and a plated through hole (PTH) header.

Qwiic Connector

The board has a pair of Qwiic connectors to integrate it into a Qwiic ecosystem.

Highlighting the Qwiic connectors.

The Qwiic connectors route the SDA/SCL connections as well as 3.3V and Ground to power the board and communicate with the ST25DV64KC over I2C.

Plated Through Hole Header

The board has a 0.1"-spaced PTH header that breaks out the power pins (3.3V and Ground), I2C interface (SDA/SCL), energy harvesting pin (VEH), and general purpose output pin (GPO).

Highlighting the PTH header.

The Energy Harvesting Pin outputs an analog voltage when energy harvesting mode is enabled and in the presence of a strong enough RF field. Refer to section 5.5 of the datasheet for specifics on using this pin. The General Purpose Output is an open-drain configurable pin used for interrupt events.

Antenna

The board includes a PCB antenna for the ST25DV64KC to help boost the read range a bit. In our testing with a smart phone running an NFC reader app we found it had a range of a few centimeters.

Highlighting the PCB antenna.

LED

The sole LED on this board is a power status LED.

Highlighting the Power LED.

Solder Jumpers

The board has three solder jumpers labeled LED, GPO and I2C. The table below outlines their labels, default state, functionality, and any notes regarding their use.

Highlighting the solder jumpers.

Label Default State Function Notes
LED CLOSED Completes the Power LED circuit. Open to disable the Power LED.
GPO CLOSED Pulls the interrupt (GPO) pin HIGH through a 10kΩ resistor. Open to disable the pullup resistor.
I2C CLOSED Pulls the SDA/SCL lines to VCC (3.3V) through a pair of 2.2kΩ resistors. Open to disable the pullup resistors.

Board Dimensions

The Qwiic Dynamic NFC/RFID Tag matches the standard Qwiic breakout size of 1" x 1" (25.4mm x 25.4mm) and has two mounting holes that fit a 4-40 screw.

Board dimensions

Hardware Assembly

Now that we're familiar with the hardware on the Qwiic Dynamic NFC/RFID Tag, it's time to assemble it into a Qwiic circuit.

Basic Assembly

The Qwiic ecosystem makes building a circuit with the Qwiic Dynamic NFC/RFID Tag simple. Just use a Qwiic cable to connect the breakout to your development board like the image shown below:

Qwiic circuit assembled.

As a reminder, the Qwiic connectors only include the power pins and I2C lines so if you wish to use the Energy Harvesting pin or the General Purpose pin you'll need to solder to them or use something like these IC Hooks for a temporary prototyping connection.

Soldered Assembly

Users who prefer a traditional soldered connection should solder headers or wires to the Qwiic Dynamic NFC/RFID Tag and then make the appropriate connections to your development board. If you've never soldered before or would like some tips, check out our How to Solder Tutorial.

SparkFun ST25DV64KC Arduino Library

Note: This library assumes you are using the latest version of the Arduino IDE on your desktop. If this is your first time using Arduino, please review our tutorial on installing the Arduino IDE. If you have not previously installed an Arduino library, please check out our installation guide.

The SparkFun ST25DV64KC Arduino Library provides an exhaustive collection of examples to take full advantage of the Qwiic Dynamic NFC/RFID Tag including reading and writing the user memory, controlling the read/write permissions, altering the read area sizes, and applying password control. On top of this the library includes examples showing how to use NDEF (NFC Forum Data Exchange Format) URI, WiFi, and Text records you can read with a smart phone. You'll need a compatible app on your phone like ST's "NFC Tap" App available on the Apple© App store or Google© Play.

Install the library into Arduino by searching for "SparkFun ST25DV64KX Arduino Library" in the Arduino Library Manager. Users who prefer to install the library manually can download it by clicking the button below:

SparkFun ST25DV64KC Arduino Library (ZIP)

Arduino Library Documentation

We have an in-depth guide for the library covering all examples as well as the complete API reference you can read through here:

SparkFun ST25DV64KC Arduino Library - Documentation

Troubleshooting

General Troubleshooting

Resources and Going Further

That's all for this guide. For more information about the Qwiic Dynamic NFC/RFID Tag, check out the resources below:

Looking for inspiration on projects to use the Qwiic Dynamic NFC/RFID Tag in? These tutorials may get you pointed in the right direction:

RFID Basics

Dive into the basics of Radio Frequency Identification (RFID) technology.

Build a Qwiic Jukebox that is Toddler Approved!

Follow this tutorial to build your own custom jukebox. Note, this is designed simple and tough for use primarily with toddlers. It's also a great introduction to SparkFun's Qwiic products!

RFID Beginners Tutorial

In this tutorial we'll revisit some RFID basics and practice by making a remote work logger using an RFID reader and a GPS module. You'll scan a card and get ID, location, and time. All the perfect data to punch in and punch out from the middle of Nowhere!

learn.sparkfun.com | CC BY-SA 3.0 | SparkFun Electronics | Niwot, Colorado