Release Notes for RFAL software Library

Copyright 2019 STMicroelectronics

 


The RFAL Library (RF Abstraction Layer) provides several functionalities required to perform RF/NFC communications. The RFAL encapsulates the different RF ICs (ST25R3911, ST25R3916, ST25R95 and future ST25R devices) into a common and easy to use interface.

The technologies currently supported by RFAL are:
  • NFC-A \ ISO14443A (T1T, T2T, T4TA)
  • NFC-B \ ISO14443B (T4TB)
  • NFC-F \ FeliCa (T3T)
  • NFC-V \ ISO15693 (T5T)
  • P2P \ ISO18092 (NFCIP1, Passive-Active P2P)
  • ST25TB (ISO14443-2 Type B with Proprietary Protocol)
  • PicoPass \ iClass
  • B' \ Calypso
  • CTS \ CTM

The protocols provided by RFAL are:
  • ISO-DEP (ISO14443-4)
  • NFC-DEP (ISO18092)

Update History


V2.2.0 / 22-May-2020

Main Changes

  • Better alignment to NFC Forum latest requirements (CR12)
  • Extended NFC-V module with non-addressed mode support and improved aticollision
  • Feature Switches changed to be not mandatory. Modules disabled by default
  • Aligned APIs on platform.h (breaks compatibility with previous versions, see example in rfal.chm)
  • Added API for release/deletion of timers
  • ST25R3916 default analog table modified to X-NUCLEO-NFC06A1 board
  • Improved AP2P operation
  • Fixed issues introduced on previous release linked to SFGT and anticollision retries
  • Introduced Low-Power mode
  • Several driver improvements

V2.1.2 / 27-Jan-2020

Main Changes

  • Extended ISO-DEP and NFC-A module to support non-blocking activation interfaces
  • Extended NFC/HL module to make use of the new APIs further splitting the execution of the worker during the different activities
  • Modified NFC-A anticollision to strictly comply to NFC Forum DP. A separate proprietary method is now available.
  • NFC-V changed to use OOK (100% AM) by default
  • Fixed FWT used by NFC-V Sleep
  • Fixed NFC-F FDT Poll value
  • Fixed incorrect register access on ST25R3911B RFO Get/Set method
  • SPI driver modified to clear Rx buffer prior to operation
  • Added further code size optimizations based on enabled features
  • Updated ST25R3916 driver to DS Rev2
  • Updated SW Tag Detection as describded in AN Rev3
  • Several driver improvements

V2.1.0 / 30-Sep-2019

Main Changes

  • Extended RFAL NFC Higher Layer for increased functionality and configurations
  • Several improvements on the ISO-DEP protocol layer
  • Protocol buffer sizes made fully configurable for increased memory management
  • Introduced option for Collision Avoidance with Automatic Gain Control
  • Several driver improvements
  • ST25R3916 overheat protection disabled
  • RF Transceive modified for transmission errors to precede other errors
  • Analog Configs extended to support different DPO power levels

V2.0.10 / 25-Jun-2019

Main Changes

  • Various improvements on RFAL NFC Higher layer
  • Added alternative NFC-V anticollision method (non NFC Forum compliant)
  • Several minor improvements and fixes

V2.0.6 / 10-Apr-2019

Main Changes

  • Several NFC-V interoperability improvements
  • Extended support for specific features of ST's ISO15693 Tags. New ST25Dx module added
  • Interrupt handling changed and further protection added
  • RFAL feature switches have been modified and features are now disabled if omitted
  • ST25R3916 AAT (Automatic Antenna Tunning) module added
  • RFAL NFC Higher layer added
  • Several driver improvements

V2.0.4 / 06-Fev-2019

Provided with ST25R3916 DISCO v1.0.0 / EMVCo v1.2.0

Main Changes

  • Minor improvements on NFC-F module
  • Several improvements on NFC-V module including support for ST proprietary features
  • Fixed issue with Delta RWT calculation
  • Fixed incorrect usage of NFCB dTbPoll / DdFWT
  • Added compile switch for Listen Mode
  • Low power Listen Mode support added
  • Listen Mode aligned to NFC Forum Digital 2.1
  • Added handling for EMVCo 3.0 static FDTListen
  • Introduced SW Tag Detection

V2.0.2 / 31-Oct-2018

Provided with ST25R3916 DISCO v0.9.4 (binary only)

Main Changes

  • New T4T module added
  • Added support for T3T Check and Update commands
  • Improved NFC-V module and added Write Multiple Blocks support
  • New rfalWorker protection added for improved control in multi-thread environments
  • Added support for user defined Analog Config tables
  • Several driver improvements and protections added

V2.0.0 / 28-Aug-2018

Main Changes

  • MISRA C 2012 compliant
  • ST25R3916 support added
  • ST25R95 support added
  • Fix unwanted Field Detector disable when entering Wake-up mode
  • Extended Analog Config to have specific events
  • Fixed NFC-DEP potential issue if DID used
  • Extended NFC-V commands
  • T2T module added
  • Improved initial Listen mode handling
  • Extended Wake-Up mode to support Capacitive measurement

V1.3.6 / 08-May-2018

Provided with ST25R3911B DISCO v1.2.0

Main Changes

  • Added ISO15693 x4 and x8 mode support
  • Added S(PARAMETERS) support
  • Interface changes for measurement, Wake-Up and DPO methods
  • Added further feature switches to enable/disable individual modules
  • Changed communication protection
  • Improved NFC-A anti-collision
  • Several driver improvements

V1.3.4 / 07-May-2018

Main Changes

  • Fixed NFC-V Read operation in addressed mode

V1.3.2 / 31-January-2018

Main Changes

  • Modified Wake-Up mode interface
  • Fixed SFGI calculation in ISO-DEP

V1.3.0 / 22-January-2018

Main Changes

  • Introduced a new IRQ status handling to read the registers only once
  • Several changes for supporting Linux platform
  • SPI Select/Deselect moved to platform.h
  • Aditional protection of the IRQ status reading, new macros available: platformProtectST25R391xIrqStatus / platformUnprotectST25R391xIrqStatus
  • Renamed the IRQ Enable/Disable macros to platformProtectST25R391xComm / platformUnprotectST25R391xComm
  • Renamed SPI pins from chip specific to ST25R391X
  • Introduced a new option ST25R391X_COM_SINGLETXRX which executes SPI in one single exchange (additional buffer required)
  • Updated and added errata handlings to latest ST25R3911 Errata version
  • Fixed inconsitency on Analog settings for NFC-V
  • Fixed issue on NFC-V 1of256 decoding
  • Changed the default NFC-A FDT Listen to be more strict
  • Added Wake-Up mode support
  • Added RFAL version definition

V1.2.0 / 17-August-2017

Provided with ST25R3911B Disco v1.1.16

Main Changes

  • Aligned Technology modules to NFC Activity v1.1 and EMVCo v2.6
  • Extended NFC-B Collision Resolution allowing user define Slots
  • Added feature switches to enable/disable individual modules
  • ISO-DEP Interface changes allowing more user configurations and further EMVCo alignment
  • Changed ST25TB detection to always perform Anti Collision loop regardeless of the result of the Poll
  • Fixed FIFO WL handling
  • Modified FDT Poll handling
  • changed rfalCalibrate() to not overwrite dynamic configs
  • Added adjustment for TR1PUTMIN

V1.1.0 / 30-June-2017

Provided with ST25R3911B Disco v1.1.12

Main Changes

  • EMD supression enabled for ST25R3911B

V1.0.0 / 16-May-2017

Provided with X-NUCLEO-NFC05A1 v1.0.0

Main Changes

  • Added support for B', CTS and PicoPass/iClass mode
  • Several impromvements for NFC-V mode
  • Improved error detection during NFC-B collision resolution
  • Extended T1T module

V0.9.0 / 02-March-2017

Provided with ST25R3911B Discovery Kit on Embedded World Conference (binary only)

Main Changes