NFC-V ICODE SLIX(SL2S2002) [英] NFC-V ICODE SLIX (SL2S2002)
问题描述
我正在开发一个用于在Android下管理ICODE SLIX-S标签的应用程序.我发现有关数据表中定义的"SET_PASSWORD"的问题( https://www.nxp.com/docs/zh-CN/data-sheet/SL2S2002_SL2S2102.pdf 第16页).已经对此问题进行了讨论( NFC-V SLIX-S写密码),但尚未解决.我认为问题是传递给收发器的命令的格式,我尝试了其他格式,但没有解决方案.如果有人以任何方式解决了,非常感谢!!
I'm developing an application for managing ICODE SLIX-S tags under android. I'm finding problems regarding the "SET_PASSWORD" as defined in the data sheet (https://www.nxp.com/docs/en/data-sheet/SL2S2002_SL2S2102.pdf page 16). There is already a discussion about the problem(NFC-V SLIX-S write password) but it has not been solved. The problem I think is the format of the command passed to the transceive, I tried different formats but without solution. If someone had resolved in any way, thank you very much!
cmd = new byte[] {
(byte)0x00, // 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, 3, 8); // paste tag UID into command
System.arraycopy(exorPassword, 0, cmd, 4, 4);
response = nfcV.transceive(cmd);
W/System.err: android.nfc.TagLostException: Tag was lost.
at android.nfc.TransceiveResult.getResponseOrThrow(TransceiveResult.java:48) <- THIS ON TRANSCEIVE
推荐答案
NFC-V android堆栈无法正常工作.它在Android OS上退出超时问题. 因此,有时即使您获得了TagLost,命令也会在Icode SLIX2上执行. 我发现最好的解决方案是使用NXP TapLink库.它取代了NFC android堆栈,并与它们的NXP标签(从Mifare到ICode)配合得很好.
NFC-V android stack is not working properly. It exits a timeout issue on Android OS. So, sometime even if you get a TagLost the command is executed on the Icode SLIX2. The best solution, I found, is to use NXP TapLink library. It replaces NFC android stack and works great with their NXP tags (from Mifare to ICode).
设置的密码将变为:
byte[] rand = iCodeSLIX2.getRandomNumber();
byte[] pwd = Utilities.xor(password, Utilities.append(rand, rand));
iCodeSLIX2.setPasswordWrite(pwd);
这篇关于NFC-V ICODE SLIX(SL2S2002)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!