Implementing NFC/RFID Reader

Hi,

I have the ST25 NFC/RFID Tag and I just have a couple of questions:

What exactly do I need to implement on the NFC end for a phone to connect to the ST25? I saw in Example 2 of the Arduino library example sketches that there’s a read/write password feature. Is there a password string that the phone needs to match with the ST25? What is the use of the Device UID and Revision # shown in Example 1? Can multiple devices connect to the same NFC tag? If there is a “password” so to speak for the NFC tag, is it programmatically changeable?

Any insight would be greatly appreciated. Thank you.

Thank you for your response. I have some follow up questions. How could I programmatically turn on an LED for example if the phone established a connection with the tag? How do I establish a connection? Can I program some kind of admin setting that determines which devices are permitted to connect?

To follow up further, I guess my main question is what do I need to implement for the tag to be readable from a mobile device? Inquiring further, how can I programmatically implement code so that only devices with permission can connect with the tag? Any help or guidance would be greatly appreciated. Thank you.

Another follow-up question: Does the example below poll for a device in range, such as a mobile device?

(Example 5: Detect RF Field Poll)

#include <SparkFun_ST25DV64KC_Arduino_Library.h> // Click here to get the library:  http://librarymanager/All#SparkFun_ST25DV64KC

SFE_ST25DV64KC tag;

void setup()
{
  delay(1000);

  Serial.begin(115200);
  Wire.begin();

  Serial.println(F("ST25DV64KC example."));

  if (!tag.begin(Wire))
  {
    Serial.println(F("ST25 not detected. Freezing..."));
    while (1) // Do nothing more
      ;
  }

  Serial.println(F("ST25 connected."));
}

void loop()
{
  bool value = tag.RFFieldDetected();
  if (value)
    Serial.println(F("RF field detected."));
  else
    Serial.println(F("RF field not detected."));

  delay(250);
}

I concluded that the above sketch does poll for a connection. My question now is how do I implement example 3? I’d like to set a password or key to the tag so that a mobile device would need to have the credential to establish a connection. My understanding is that the password in example 3 is to protect reading/writing to the I2C, so would the protocol be to always establish a connection, but in order to transmit data, require a password for the mobile device?

Any guidance on this would be greatly appreciated. Thank you.