Hello everyone, I'm developing an application for Android (with Android Studio) for the
management and writing of tags ICODE SLIX SL2S2002 ISO 15693. I'm having trouble setting the
EAS / AFI password inside the tag not having understood yet what the correct sequence of
commands. I have already read the data sheets and application notes but it is not exhaustive
enough. So I would like to understand first of all if the commands I am using are correctly
formatted and obviously what the correct sequence is.
CODE LINE:
//Set EAS WORK!
byte[] cmd_3 = new byte[] {
(byte)0x00, //FLAG_NOT_SET
(byte)0xA2, //SET_EAS
(byte)0x04 //MANUFACTURER_CODE
};
Log.i("nfcv", "SetEAS");
getTransceiveResult(cmd_3,nfcV,"SetEAS");
//WRITE PASSWORD NOT WORK!!
byte[] cmd_322 = new byte[] {
(byte)0x00, // FLAGS
(byte)0xB4, // GET_SYSTEM_INFORMATION
(byte)0x04, //MANUFACTURER_CODE
0, 0, 0, 0, 0, 0, 0, 0,
(byte)0x10,
(byte)0x00,(byte)0x00,(byte)0x00,(byte)0x00
//(byte)(blockAddress & 0x0ff)
};
System.arraycopy(detectedTag.getId(), 0, cmd_322, 3, 8); // paste tag UID into command
Log.i("nfcv", "WritePassword");
getTransceiveResult(cmd_322,nfcV,"WritePassword");
//Set PASSWORD NOT WORK!
byte[] cmd_2 = new byte[] {
(byte)0x01, // FLAGS
(byte)0xB3, // SET_PASSWORD!
(byte)0x04, //manufacturer code (NXP should be 0x04)
0, 0, 0, 0, 0, 0, 0, 0,
(byte)0x10,
0, 0, 0, 0
};
System.arraycopy(detectedTag.getId(),0,cmd_2,3,8);
System.arraycopy(exorPassword, 0, cmd_2, 12, exorPassword.length);
Log.i("nfcv","SetPassword");
getTransceiveResult(cmd_2,nfcV,"SetPassword");
// PASSWORD PROTECT EAS/AFI NOT WORK!
byte[] cmd_4 = new byte[] {
(byte)0x00, //FLAG_NOT_SET
(byte)0xA6, //SET_EAS
(byte)0x04 //MANUFACTURER_CODE
};
Log.i("nfcv", "PasswordProtectEAS/AFI");
getTransceiveResult(cmd_4,nfcV,"PasswordProtectEAS/AFI");