User's Manual

56 | P a g e www.eccel.co.uk
Example:
HOST=>READER: 0x9E – ICODE_GET_NXP_SYSTEM_INFORMATION
READER=>HOST: 0x00 – ACK byte
0x9E – related command code
ICODE_GET_NXP_SYSTEM_INFORMATION
0x0F 0x04 0x8F 0x7F 0x0A 0x01 0x24
0x16 0xE0 0x00 0x00 0x33 0x03 0x02 – result bytes
5.6.16 Get random number (0x9F)
This command requests a random number from the ICODE TAG. No arguments are required. The ACK response
contains a 16-bit random number. This value should be used with ICODE_SET_PASSWORD command.
Command description
Argument
Size
Value
Description
Command ID
1
0x9F
ICODE_GET_RANDOM_NUMBER
Response description
ACK
1
0x00
Command ID
1
0x9F
ICODE_GET_RANDOM_NUMBER
Random number
2
XXX
16
-
bits random number
Example:
HOST=>READER: 0x9F – ICODE_GET_RANDOM_NUMBER
READER=>HOST: 0x00 – ACK byte
0x9F – related command code ICODE_GET_RANDOM_NUMBER
0x7F 0x14 – result bytes
5.6.17 Set password (0xA0)
This command sets the password for the selected identifier. This command has to be executed just once for
the related passwords if the TAG is powered. The password is calculated as XOR with the random number
returned by the previously executed command ICODE_GET_RANDOM_NUMBER.
Here is an example how to calculate XOR password:
xorPassword[0] = password[0] ^ rnd[0];
xorPassword[1] = password[1] ^ rnd[1];
xorPassword[2] = password[2] ^ rnd[0];
xorPassword[3] = password[3] ^ rnd[1];
Command description
Argument
Size
Value
Description
Command ID
1
0xA0
ICODE_SET_PASSWORD
Password Identifier 1 X
0x01
Read password
0x02 – Write password
0x04 – Privacy password
0x08 – Destroy password