Skip to content

Commit dc58032

Browse files
MarGasiorekeivindj-nordic
authored andcommitted
nfc: lib: reset NFCT frame delay max on field lost
Restore NFCT max frame delay (FRAMEDELAYMAX) to the default when the RF field is removed, so a shortened delay does not persist and corrupt frame timing for the next session (readers may then reject tag responses). Related ticket: KRKNWK-21733 Signed-off-by: Marcin Gasiorek <marcin.gasiorek@nordicsemi.no>
1 parent 69e5188 commit dc58032

2 files changed

Lines changed: 23 additions & 10 deletions

File tree

doc/nrf-bm/release_notes/release_notes_changelog.rst

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -302,19 +302,27 @@ Bluetooth LE Services
302302
Libraries for NFC
303303
-----------------
304304

305-
* The maturity status of NFC libraries has been changed from Experimental to Supported for the following SoCs: nRF54L05, nRF54L10, and nRF54L15, nRF54LM20A is still in Experimental quality.
306-
* The NFC subsystem code has been migrated to |BMshort| and does not reuse code form |NCS| anymore.
307-
The NFC related Kconfig options provided by |BMshort| have the ``BM_NFC_`` prefix.
308-
The following list shows mapping from |NCS| Kconfig options to |BMshort| Kconfig options:
305+
* Added:
306+
307+
* The NFC libraries for NFC Connection Handover and Bluetooth LE Out-of-Band (OOB) pairing.
308+
* The workaround to ensure the ``FRAMEDELAYMAX`` register is set to the default value when a field is lost.
309+
This avoids violating protocol timing, which can lead readers to reject the NFC tag's response.
310+
311+
* Updated:
309312

310-
* ``CONFIG_NFCT_IRQ_PRIORITY`` --> :kconfig:option:`CONFIG_BM_NFCT_IRQ_PRIORITY`
311-
* ``CONFIG_NFC_PLATFORM_LOG_LEVEL*`` --> :kconfig:option:`CONFIG_BM_NFC_PLATFORM_LOG_LEVEL*`
312-
* ``CONFIG_NFC_NDEF*`` --> :kconfig:option:`CONFIG_BM_NFC_NDEF*`
313-
* ``CONFIG_NFC_T4T_NDEF_FILE`` --> :kconfig:option:`CONFIG_BM_NFC_T4T_NDEF_FILE`
313+
* The maturity status of NFC libraries from Experimental to Supported for the SoCs nRF54L05, nRF54L10, and nRF54L15 SoCs.
314+
The nRF54LM20A SoC is still in Experimental quality.
315+
* The NFC subsystem code by migrating it to |BMshort|.
316+
It does not reuse code form |NCS| anymore.
317+
The NFC related Kconfig options provided by |BMshort| have the ``BM_NFC_`` prefix.
318+
The following list shows mapping from |NCS| Kconfig options to |BMshort| Kconfig options:
314319

315-
Use ``#include <bm/nfc/..>`` to include NFC related header files provided by |BMshort| instead of ``#include <nfc/...>``.
320+
* ``CONFIG_NFCT_IRQ_PRIORITY`` --> :kconfig:option:`CONFIG_BM_NFCT_IRQ_PRIORITY`
321+
* ``CONFIG_NFC_PLATFORM_LOG_LEVEL*`` --> :kconfig:option:`CONFIG_BM_NFC_PLATFORM_LOG_LEVEL*`
322+
* ``CONFIG_NFC_NDEF*`` --> :kconfig:option:`CONFIG_BM_NFC_NDEF*`
323+
* ``CONFIG_NFC_T4T_NDEF_FILE`` --> :kconfig:option:`CONFIG_BM_NFC_T4T_NDEF_FILE`
316324

317-
* Added NFC libraries for NFC Connection Handover and Bluetooth LE Out-of-Band (OOB) pairing.
325+
Use ``#include <bm/nfc/..>`` to include NFC related header files provided by |BMshort| instead of ``#include <nfc/...>``.
318326

319327
Utils
320328
-----

subsys/nfc/lib/nfc_bm_platform.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,11 @@ void nfc_platform_event_handler(const nrfx_nfct_evt_t *event)
197197
#endif
198198
break;
199199
case NRFX_NFCT_EVT_FIELD_LOST:
200+
/* Workaround: Ensure the FRAMEDELAYMAX register is set to default value when
201+
* field is lost. This avoids violating protocol timing, which can lead readers
202+
* to reject the NFC tag's response.
203+
*/
204+
nrf_nfct_frame_delay_max_set(NRF_NFCT, NRF_NFCT_FAME_DELAY_MAX_DEFAULT);
200205
LOG_DBG("Field lost");
201206

202207
#if defined(CONFIG_SOFTDEVICE)

0 commit comments

Comments
 (0)