cancel
Showing results for 
Search instead for 
Did you mean: 

Can the (dynamic) tag be written just when detects a reading action by some device?

Hugo
Associate

Scenario: Read the current hardware time from the tag

Steps:

1) Hardware detects a reading action (from a Android/iOS device, for example)

2) Hardware write the current time in Tag

3) Mobile device gets the current time of hardware

4) Finish

Thank you

1 ACCEPTED SOLUTION

Accepted Solutions
JL. Lebon
ST Employee

​Hello Hugo,

Yes, it basically works like the STEVAL-SAMARTAG1.

Concerning iOS, starting from iOS 13, it is now possible to do much more with NFC. Previous versions allowed only read operation. Starting from version 13, it  now allows read and write, and allows custom ISO15693 commands. This means that it is now possible to use the Fast Transfer Mode (and any other ST25DV custom commands) with iOS 13, and do exactly the same things as with an Android application.

The first method (SMARTAG like) is recommended if you want "native" reading. By default, and without any additional application, Android is trying to read an NDEF file when detecting a new tag. It reads the content of the NDEF file in tag's memory (if there is one) and takes the relevant action depending on the content (opening browser if the NDEF contains an URL for example). Possibilities are quiet limited.

If you plan to have a dedicated Android/iOS application, I recommend the second method (Fast Transfer Mode), or using the ManageGPO custom command to generate the interruption. The application can more finely control when to have the MCU update the tag memory content by exchanging an FTM message or senfing a dedicated interrupt, and then read the tag's memory content accordingly.

I also recommend to use the ST25DV rather than the M24LR for your purpose since it has the Fast transfer mode and more possibilities for interruption.

Hope this helps you,

Best regards.

View solution in original post

3 REPLIES 3
JL. Lebon
ST Employee

​Dear Hugo,

There is no direct way to detect that a read action is done on the RF interface, but there is ways to achieve your scenario.

On the ST25DV-I2C for example, you can generate interruption on the rising of the RF field.

You could use this interruption to decide to update the content of EEPROM, from I2C interface, with the current HW time. Then when the smartphone is starting reading the EEPROM, the information with HW time is there. Off course, in this case, smarphone should gives enough time to the MCU to update the EEPROM data before reading.

Another possibility would be to generate an HW interruption on the ST25DV-I2C directly with the smartphone: you can do this with the ST25DV-I2C by sending a special RF command (ManageGPO), which will generate an interruption on the GPO pin. This interruption would trigger the writing of the HW time in  the EEPROM of the tag. The smartphone then just have to wait for I2C programing cycle before reading the information.

The process would be:

1) smartphone send a manageGPO command to inform the tag and MCU behind it that it request HW time

2) the tag generates an interruption on the GPO pin

3) on receiving the interruption, the MCU wirtes the HW time in tag's EEPROM

4) the smartphone then reads the time in tag's memory

A third possibility, still with ST25DV-I2C, would be to use the Fast Transfer Mod": smartphone sends a request to for HW time to the MCU in a fast transfer mode message, and in return MCU send the HW time in a Fast Transfer Mode message.  There is a demo of this in the ST25 NFC Tap android app and the St25DV-I2C discovery board if you have one. It is s demo that display synchronized time between the smartphone and the discovery board.

On other dynamic tags, solutions may be little bit different. Can I ask you which dynamic tag are you targeting ?

Best regards.

Hugo
Associate

Hi, JL. Lebon.

Thank you for the reply.

So, it'll work more or less like the NFC Sensor Tag (STEVAL-SMARTAG1), but without the sensors ?

0690X000008iUilQAE.png

The Fast Transfer Mode it only work with Android devices, right? The final solution must be iOS compatible.

Right now, I'm just looking for possible solutions to achieve my idea. I have the ST25DV-Discovery kit and the M24LR-Discovery kit.

Best

JL. Lebon
ST Employee

​Hello Hugo,

Yes, it basically works like the STEVAL-SAMARTAG1.

Concerning iOS, starting from iOS 13, it is now possible to do much more with NFC. Previous versions allowed only read operation. Starting from version 13, it  now allows read and write, and allows custom ISO15693 commands. This means that it is now possible to use the Fast Transfer Mode (and any other ST25DV custom commands) with iOS 13, and do exactly the same things as with an Android application.

The first method (SMARTAG like) is recommended if you want "native" reading. By default, and without any additional application, Android is trying to read an NDEF file when detecting a new tag. It reads the content of the NDEF file in tag's memory (if there is one) and takes the relevant action depending on the content (opening browser if the NDEF contains an URL for example). Possibilities are quiet limited.

If you plan to have a dedicated Android/iOS application, I recommend the second method (Fast Transfer Mode), or using the ManageGPO custom command to generate the interruption. The application can more finely control when to have the MCU update the tag memory content by exchanging an FTM message or senfing a dedicated interrupt, and then read the tag's memory content accordingly.

I also recommend to use the ST25DV rather than the M24LR for your purpose since it has the Fast transfer mode and more possibilities for interruption.

Hope this helps you,

Best regards.