Skip to main content
Visitor II
May 27, 2021
Solved

ST25R3911B IRQ timing requirements

  • May 27, 2021
  • 1 reply
  • 599 views

We are evaluating ST25R3911B  using the X-NUCLEO-NFC05A1 board, with our custom IMX6 system. We have tried RFAL with the nfc_poller_st25r3911 example. Initially, no tag was found. We determined that the problem was our long IRQ handling. Since we had connected the IRQ to an IO expander rather than directly to the CPU, IRQ response time was about 2 ms, and no tag was found. Apparently this is due to overlapping IRQs. After connecting IRQ directly to the CPU, IRQ response time was about 0.2 ms and tags are correctly found.

Is this a known issue or limitation? Can it be solved in software/RFAL, or is it necessary to use "fast" IRQ pins?

    This topic has been closed for replies.
    Best answer by Ulysses HERNIOSUS

    Hi PÅstr.1,

    With frames in NFC which are much shorter than 1ms and allowed timings between commands going down to ~500us having an interrupt latency of 5ms is quite heavy.

    Also serving a FIFO which can over/-underrun in <3ms I would recommend to use fast timings.

    However performance is not your main goal and if you can limit yourself to smaller frames (<96 bytes of FIFO) you could go and change the timeouts in our RFAL to cope with such interrupt latency. But I do not recommend this.

    Regards, Ulysses

    1 reply

    Technical Moderator
    May 27, 2021

    Hi PÅstr.1,

    With frames in NFC which are much shorter than 1ms and allowed timings between commands going down to ~500us having an interrupt latency of 5ms is quite heavy.

    Also serving a FIFO which can over/-underrun in <3ms I would recommend to use fast timings.

    However performance is not your main goal and if you can limit yourself to smaller frames (<96 bytes of FIFO) you could go and change the timeouts in our RFAL to cope with such interrupt latency. But I do not recommend this.

    Regards, Ulysses