Skip to main content
Visitor II
June 16, 2021
Solved

Read / write memory of NTAG213 with ST25R95

  • June 16, 2021
  • 3 replies
  • 1710 views

Hi,

I'm currently trying to read and write EEPROM memory of a NTAG213.

Using X-NUCLEO-NFC03A1 and NUCLEO board the tag is detected as "ISO14443A/NFC-A".

Looking at source code example there is no method to read/write EEPROM data for this kind of tag (only for NFCDEP and T4T).

I can see that both read/write method implemented in demo code use the function demoTransceiveBlocking to exchange data.

My question is:

Is it possible to use this function with my kind of tag to read/write data? My guess is that I need to adapt data sent to tag according NTAG213/215/216 specification, but I'd like to be sure.

Thanks

Sylvain SERRE

    This topic has been closed for replies.
    Best answer by Brian TIDAL

    Hi Sylvain,

    these tags are Type 2 tags. The RFAL library of the STM32CubeExpansion_NFC3_V2.1.0 provides support for T2T READ, T2T WRITE and T2T SECTOR SELECT commands in rfal_t2t.c module. This can be used to read/write the various blocks of your Type 2 tags. You will find example of those T2T read/write API in the ndef_t2t.c module.

    Note that the STM32CubeExpansion_NFC3_V2.1.0 provides as well an NDEF demo that can read or write NDEF message from/to various tag type including Type 2 tags. See UM2045 for more information about this demo. Make sure your tag is NDEF formatted (you can use for example Android NFC app to format this tag).

    Rgds

    BT

    3 replies

    Technical Moderator
    June 16, 2021

    Hi Sylvain,

    these tags are Type 2 tags. The RFAL library of the STM32CubeExpansion_NFC3_V2.1.0 provides support for T2T READ, T2T WRITE and T2T SECTOR SELECT commands in rfal_t2t.c module. This can be used to read/write the various blocks of your Type 2 tags. You will find example of those T2T read/write API in the ndef_t2t.c module.

    Note that the STM32CubeExpansion_NFC3_V2.1.0 provides as well an NDEF demo that can read or write NDEF message from/to various tag type including Type 2 tags. See UM2045 for more information about this demo. Make sure your tag is NDEF formatted (you can use for example Android NFC app to format this tag).

    Rgds

    BT

    SSERR.11Author
    Visitor II
    June 16, 2021

    Hi Brian,

    Thank you so much for pointing me the good direction. I quickly tested rfalT2TPollerRead() in my code and values returned perfectly matches tag specification. I guess that writing will be as simple as reading from now on.

    Thank again

    Sylvain

    Technical Moderator
    June 16, 2021

    Hi Sylvain,

    yes writing will be as simple as reading. Note: blocks 0 to 3 have specific write conditions (i.e. write protected or OTP), in particular, bits in block #3 (Capability Container) cannot be reverted to 0 once set to 1.

    Rgds

    BT