Hello.
I am developing an Android application that reads/writes/deletes tags with passwords using Taplinx SDK.
Of course, the function to delete tag data requires password authentication.
However, when deleting tag data, I confirmed that the tag does not return to its initial state, that is, the state when the tag was purchased.
(Here, "state" includes all values in the tag. I don't know what to call it.)
Please check the attached *.txt files.
(This is the content of the tag scanned using the "TagInfo" application.)
The differences (problems) are as follows:
1. Ndef type has been changed to NdefFormatable type.
2. Looking at the memory, it seems that the password setting part is still masked, so it seems that the password release (i.e. initialization) failed.
I wrote the logic to delete the tag in the application as follows.
1. nTag.reader.connect()
2. Attempt tag password authentication (using authenticatePwd())
3. If tag password authentication is successful, disable the password (pass 255 to the second parameter of enablePasswordProtection())
4. Delete the data written to the tag (clear())
5. nTag.reader.close()
I don't know what part of my code is wrong and what action should I add.
If you don't mind, could you help me?
Hello @d__jin
Deleting data does not return the tag to its factory setting, the original state at the time of purchase. And there is no command to return the TAG to the factory setting.
Hello d__jin,
1. On default NTAG 216, NDEF content contains "empty" NDEF message. Your "programmed" one, doesn't contain it anymore. That's why Android reports it as NDEF Formattable.
[04] . 03 00 FE 00 |....|
vs.
[04] . 00 00 00 00 |....|
2. Your app changes Page 3 by accident as well.
3. Use setStartPageAddressForPwdAuth() to set AUTH0 byte. But I can see that it was not changed from FFh.
Best regards,
TapLinx team
Hello d__jin,
1. Please use interface suitable for the product. Else, you may not have all functionalities. Yes, use setStartPageAddressForPwdAuth(). We don't know what your app is doing, maybe you can share some lines of code, or check all writing APIs in your code (that are not using by accident some empty variables for writing to EEPROM). Generally Page3 is one-time programmable. You can only increase the values.
2. As stated in datasheet, PWD and PACK values remain masked. Otherwise, they would be publicly readable.
If above doesn't help, use https://www.nxp.com/support/support:SUPPORTHOME.
There you can provide your business case and open a support ticket.
Best regards,
TapLinx team