This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

NFC stops working

Hello Devzone,

For my project I am using NFC and I am using the writeable NDEF message project as an example.

Everything is working except I have found one issue.

Whenever I receive the NFC_T4T_EVENT_FIELD_ON event and I get an interrupt that takes time to complete NFC stops working.

I can still read and write my device but the NFC_T4T_EVENT_NDEF_UPDATED is never triggered.

I use this event to process all incoming data.

This issue can be easily reproduced by adding the following code in the NFC_T4T_EVENT_FIELD_ON event

uint32_t temp = 100000;
while(--temp); // Simulate interrupt by "waiting" in event.

How can I solve this problem that the NFC_T4T_EVENT_NDEF_UPDATED  will be triggered if I receive an interrupt in the NFC_T4T_EVENT_FIELD_ON event?

  • Hi

    How are you handling the NFC_T4T_EVENT_FIELD_ON event in your application? What is this interrupt triggered here that takes X amount of time?

    What SDK version are you using? Similar cases in the past has been solved by updating to a newer SDK version, as there were made some fixes to the T4T in SDK v17.0.2

    Best regards,

    Simon

  • I am working with SDK17.0.2.

    At first I had my devkit have its light turn on just as in the example.

    This I've changed to a log plot that prints " NFC - Field On." 

    I also have periodic interrupts generated by the app timer to gather some sensor data an drive some LED's.

    In the NRF_T4T_EVENT_NDEF_UPDATE I have a second log that prints "NFC - Message Written."

    What I've seen is that multiple times I get the two plots " NFC - Field On."  and "NFC - Message Written." 

    After I've only received the " NFC - Field On."  event it stopped working. My NFC reader chip is able to read the UID from the nRF but as soon as it commits the RATS command I get a card time out event.

  • Hi

    Thank you, I've asked some of our NFC experts internally about this, to see if they've encountered something similar before, or know what might be causing this issue. Just for the record, are you seeing this on an nRF52 DK, a custom board, or both? Do you see any further log messages if you try debugging the application (setting DEBUG in the preprocessor definitions of your IDE)?

    Best regards,

    Simon

  • I have tested this only on the devkit as it makes debugging a bit easier. I have set the log settings to DEBUG but have not seen any other messages prompt up

  • Where do you output the log messages, are you using the UART or RTT backend? And can you upload the debug log so we can take a look?

    Best regards,

    Simon

Related