Quick Start Guide: X-NUCLEO-NFC07A1
Dynamic NFC/RFID Tag IC Expansion Board based on ST25DV64KC for STM32 Nucleo
Hardware Overview
Hardware Description
The X-NUCLEO-NFC07A1 is a dynamic NFC/RFID tag IC expansion board. It is based on the ST25DV64KC NFC Type V/RFID tag IC, which features a dual interface with 64 Kbits EEPROM and an I²C interface. The board can be powered either via the Arduino connector pins or directly by the received carrier electromagnetic field.
It is compatible with the STM32 Nucleo Development Board family and adheres to the Arduino™ UNO R3 connector layout.
Main Features:
- The device is accessible using the I²C bus.
- Provides complete middleware to build applications using the ST25DV64KC dynamic NFC/RFID tag IC.
- Offers easy portability across different MCU families, thanks to STM32Cube.
Hardware Overview 1/2
Visual description of the board: The image shows the X-NUCLEO-NFC07A1 expansion board plugged into an STM32 Nucleo development board. Key elements visible include the Arduino UNO R3 connectors, the STMicroelectronics logo, LEDs (LED1, LED2, LED3), various passive components (resistors R1-R4, R8, R16, capacitors C1, C6-C9), ICs (U2, ST25DV64KC), and connectors (CN5, CN8, CN9). A prominent circular NFC antenna is attached to the board, labeled "FOR EVALUATION ONLY" and "X-NUCLEO-NFC07A1". The website www.st.com/nucleo-nfc is also indicated.
Hardware Overview 2/2
Visual description of the board: This section presents top and bottom views of the X-NUCLEO-NFC07A1 expansion board. The top view highlights the connection interface to the STM32 Nucleo board via standard Arduino UNO R3 connectors and ST morpho connectors (CN8, CN6). It also shows the STMicroelectronics logo, LEDs, and the circular NFC antenna. The bottom view displays compliance markings, serial numbers (e.g., S2005848), and labels indicating "Not FCC Approved For Resale" and "ST Internal Usage".
Key Products on the Nucleo expansion board:
- ST25DV64KC: Dynamic NFC/RFID tag IC with 64-Kbit EEPROM.
Latest information is available at www.st.com/x-nucleo-nfc07a1.
X-CUBE-NFC7 Software Package: SW Architecture Overview
Software Description:
The X-CUBE-NFC7 is a software expansion for STM32Cube, providing a comprehensive middleware for STM32 microcontrollers to build applications using the ST25DV64KC dynamic NFC/RFID tag IC. It leverages STM32Cube technology for ease of portability across different STM32 microcontrollers.
The software includes sample implementations of drivers for the X-NUCLEO-NFC07A1 expansion board, tested on NUCLEO-L053R8, NUCLEO-L476RG, and NUCLEO-F401RE development boards.
The package features a sample application and five samples to activate ST25DVxxKC functionalities:
- Energy harvesting enabling
- GPO interrupt activation
- I²C protection setting
- ST25DVxxKC Mailbox usage
- URI NDEF writing
Key Features:
- Complete middleware for applications using the ST25DV64KC dynamic NFC/RFID tag IC.
- Sample implementations available for X-NUCLEO-NFC07A1 on NUCLEO-L053R8, NUCLEO-L476RG, or NUCLEO-F401RE development boards.
- Easy portability across different MCU families via STM32Cube.
- Free, user-friendly license terms.
Latest information is available at www.st.com/x-nucleo-nfc07a1.
Software Architecture Diagram Description:
The diagram illustrates the software architecture for X-CUBE-NFC7. It is structured into layers: Application (X-CUBE-NFC7 Applications), Middleware (NDEF Library), Hardware Abstraction (STM32Cube Hardware Abstraction Layer - HAL), and Hardware (STM32 Nucleo expansion boards X-NUCLEO-NFC07A1 connected to STM32 Nucleo development boards).
Setup & Demo Examples
Demo Example: Bill Of Material (HW pre-requisites)
To set up the demo, the following hardware is required:
- 1x Dynamic NFC/RFID tag IC expansion board (X-NUCLEO-NFC07A1).
- 1x STM32 Nucleo development board (compatible models include NUCLEO-L053R8, NUCLEO-L476RG, NUCLEO-F401RE).
- 1x USB type A to micro-B cable.
- 1x Laptop/PC with Windows 10 or above.
- 1x NFC-enabled Android™ smartphone and the ST25 NFC App.
Visual description: The diagram shows the X-NUCLEO-NFC07A1 board, an STM32 Nucleo development board, and an Android smartphone, illustrating the connection of the expansion board to the Nucleo board.
Demo Example: Software Prerequisite
The necessary software prerequisites are:
- STSW-LINK009: ST-LINK/V2-1 USB driver.
- X-CUBE-NFC7: Expansion software for STM32Cube. This package includes source code example projects (for Keil, IAR, STM32CubeIDE) based on NUCLEO-L053R8, NUCLEO-L476RG, and NUCLEO-F401RE boards.
For more details on pin configurations, power modes, and capabilities, refer to document UM2960.
Demo Example: Software Tools (Working with X-CUBE-NFC7)
The workflow for setting up and using the software tools is as follows:
- Navigate to www.st.com/x-nucleo.
- Select the X-NUCLEO-NFC07A1 product.
- Download and unpack the X-CUBE-NFC7 software package. This package contains various files including NDEF_URI.ewd, NDEF_URI.ewp, Project.eww, startup files, and linker scripts.
- Download and install the STM32 Nucleo ST-LINK/V2-1 USB driver (SW-LINK009).
- Open a project example from the unpacked software.
- Modify and build your application.
Demo Examples for Different Operating Modes
To run the demo examples:
- Program the STM32 Nucleo board with the NDEF_URI.bin binary file.
- Enable NFC on your smartphone and ensure it is connected to the internet.
- Bring the smartphone close to the X-NUCLEO-NFC07A1 antenna. You should be redirected to www.st.com.
Documents & Related Resources
All documents are available in the DOCUMENTATION tab of the related products webpage.
X-NUCLEO-NFC07A1:
- DB4607: Dynamic NFC/RFID tag IC expansion board based on ST25DV64KC for STM32 Nucleo.
- UM2960: Getting started with the X-NUCLEO-NFC07A1 NFC/RFID tag IC expansion board based on ST25DV64KC for STM32 Nucleo.
- Schematics, Gerber files, BOM (Bill of Materials).
X-CUBE-NFC7:
- DB4608: Dynamic NFC/RFID tag IC software expansion for STM32Cube.
- UM2961: Getting started with the X-CUBE-NFC7 dynamic NFC/RFID tag IC software expansion for STM32Cube.
Consult www.st.com for the complete list of resources.
STM32 Open Development Environment: Overview
The STM32 Open Development Environment (ODE) is an open, flexible, easy, and affordable platform for developing innovative devices and applications. It is based on the STM32 32-bit microcontroller family and integrates state-of-the-art ST components connected via expansion boards, enabling fast prototyping with leading-edge components that can be quickly transformed into final designs.
The STM32 ODE includes the following five elements:
- STM32 Nucleo development boards: A comprehensive range of affordable development boards for all STM32 microcontroller series, featuring unlimited unified expansion capability and an integrated debugger/programmer.
- STM32 Nucleo expansion boards (X-NUCLEO): Boards offering additional functionality for sensing, control, connectivity, power, audio, and more. They plug onto STM32 Nucleo development boards, and complex functionalities can be achieved by stacking multiple expansion boards.
- STM32Cube software: A suite of free-of-charge tools and embedded software bricks, including a Hardware Abstraction Layer (HAL) and middleware, that facilitate fast and easy development on STM32. This includes the STM32CubeMX PC-based configurator and code generator.
- STM32Cube expansion software: Free expansion software designed for use with STM32 Nucleo expansion boards and compatible with the STM32Cube software framework.
- STM32Cube Function Packs: Collections of function examples for common application cases, built by leveraging the modularity and interoperability of STM32 Nucleo development boards and expansions, along with STM32Cube software.
The STM32 Open Development Environment is compatible with various IDEs, including IAR EWARM, Keil MDK, mbed, and GCC-based environments.
STM32 ODE: All That You Need
The combination of a broad range of expandable boards and modular software, from driver to application level, enables fast prototyping of ideas that can be smoothly transformed into final designs.
To start your design:
- Choose the appropriate STM32 Nucleo development board (MCU) and expansion (X-NUCLEO) boards (e.g., for sensors, connectivity, audio, motor control) based on your required functionality.
- Select your development environment (e.g., IAR EWARM, Keil MDK, GCC-based IDEs) and utilize the free STM32Cube tools and software.
- Download all necessary software to run the desired functionality on the selected STM32 Nucleo expansion boards.
- Compile your design and upload it to the STM32 Nucleo development board.
- Begin developing and testing your application.
Software developed using STM32 Open Development Environment prototyping hardware can be directly integrated into advanced prototypes or final product designs, utilizing the same commercial ST components or similar components from the same family as those found on STM32 Nucleo boards.
Visual description of the STM32 ODE concept: The diagram shows a process flow starting with "building blocks" (Sense, Connect, Move, Power, Process) which collect data, transmit, actuate, manage power, and process information. These blocks map to "Your need" (e.g., sensors, communication, motor control) and lead to "Our answer" (STM32 Open Development Environment). It also depicts the core components: STM32 microcontroller, ST-LINK debugger, STM32 Nucleo boards, and expansion headers. The overall ecosystem is presented as a comprehensive solution for rapid prototyping.