Smart Reader Operation NFC Templates ISO 15693 Memory
September 3, 2024 at 2:25 AMISO 15693 Memory Template
Description
Use the ISO 15693 Memory Template to read data from a VICC compliant with ISO 15693-3 or a NFC-V Tag (T5T).
The reader may either
-
Read arbitrary data; the data will be transmitted in hexadecimal format. To do so, select the RAW mode in TOF register.
-
Read a number (decimal output). To do so, select the decimal mode in TOF register.
-
Read a string (ASCII-encoded data). To do so, select either the Short String or the Long String mode in TOF register.
The target data is pointed to by an absolute block number (yet the data may occupy more than one block).
According to the standard, the size of every block depends of the card (its a manufacturer’s choice). Typical block sizes are 1, 2, 4 or 8 bytes.
The reader accepts block sizes up to 64 bytes. The block number is specified in the LOC register.
Registers
This Template uses 5 configuration registers:
Alias | Offset | Name | Description |
---|---|---|---|
LKL | 0 |
Lookup List | Set to 54 to use this Template |
LOC | 3 |
Location of Data | See details below |
TOF | 1 |
Output Size and Format | See details below |
OPT | 4 |
Options | Template-specific Options |
PFX | 2 |
Prefix | Template-specific Prefix |
LOC - Location of Data
Offset : 3
Size : 3
Byte 0 : Address
This is the Address of the 1st page to read.
Valid range depends on the memory size of the actual VICC
Byte 1 : Shift Bytes
Leading bytes to suppress; valid range is 0
to 32
(in decimal).
Byte 2 : Shift Bits
Leading bits to suppress; valid range is 0
to 7
.
TOF - Output Size and Format
Offset : 1
Size : 2
Byte 0 : RAW Mode
Condition : When RAW Mode is selected (Bit 6 in Byte 0 is 0
)
Bit | Role | Values |
---|---|---|
7 | Invert Data? | 0 : Transmit the sequence of bytes as is1 : Transmit the sequence of bytes in reverse order |
6 | Mode | 0 : RAW Mode (Data is a numerical value)1 : String Mode (Data is an ASCII string) |
5 | Padding if Data is shorted than specified length | 0 : Padd with 0 on the left1 : Padd with F on the right |
4 | Remove leading zeroes? | 0 : Keep all digits1 : Suppress 0 digits on the left of the Data |
3-0 | Length and Format | 0 : Decimal, 10 digits (truncation on 4-B)1 : Raw (hex), 4 bytes (32 bits)2 : Raw (hex), 8 bytes (64 bits)3 : Raw (hex), 5 bytes (40 bits)4 : Raw (hex), 10 bytes (80 bits)5 : Raw (hex), 7 bytes (56 bits)6 : Raw (hex), 11 bytes (88 bits)7 : RFU8 : Raw (hex), 16 bytes (128 bits)9 : Raw (hex), 20 bytes (160 bits)10 : Raw (hex), 24 bytes (196 bits)11 : Raw (hex), 32 bytes (256 bits)12 : Decimal, 12 digits (truncation on 5-B)13 : Decimal, 13 digits (truncation on 5-B)14 : Decimal, variable length15 : Raw (hex), variable length |
Byte 0 : String Mode
Condition : When String Mode is selected (Bit 6 in Byte 0 is 1
)
Bit | Role | Values |
---|---|---|
7 | Invert Data? | 0 : Transmit the sequence of characters as is1 : Transmit the sequence of characters in reverse order |
6 | Mode | 0 : RAW Mode (Data is a numerical value)1 : String Mode (Data is an ASCII string) |
5 | Padding if Data is shorted than specified length | 0 : Variable length (no padding)1 : Padd with (space characters) on the right until the specified length |
4 | Short string or Long string? | 0 : Short string (truncate to 16 characters or less)1 : Long string (more than 16 characters) |
3-0 | Length | 0 : 16 characters1 : 1 character2 : 2 characters3 : 3 characters4 : 4 characters5 : 5 characters6 : 6 characters7 : 7 characters8 : 8 characters9 : 9 characters10 : 10 characters11 : 11 characters12 : 12 characters13 : 13 characters14 : 14 characters15 : 15 characters |
Byte 1 : Options for Long String
Condition : When Long String Mode is selected (Bit 6 in Byte 0 is 1
and Bit 4 is 1
)
Use this byte to specify the exact length to read from the card. Valid range is 1
to 255
.
OPT - Options
Offset : 4
Size : 1
If this register is set, the Reader adds a token to its output to tell the receiver what kind of credential has been read.
Bit | Role | Values |
---|---|---|
7-4 | RFU | |
3-2 | Position of the Card Type Token | 0 : Before the Prefix1 : After the Prefix, before the Data2 : After the Data (before the Suffix)3 : RFU |
1-0 | Add a Card Type Token to the output stream? | 0 : Do not add a Card Type Token1 : Add Card Type Token in hex (54 )2 : Add Card Type Token as char (V )3 : RFU |
PFX - Prefix
Offset : 2
Size : 8
A Template-specific Prefix, that is added after the Reader’s global Prefix.
Remark : Use \t
for a Tab, \n
for Enter, \b
for Back space, \v
for Vertical space.