Technical information

10/29/2014
Page 6 of 72
© 2014 The Code Corporation
12393 South Gateway Park Place Suite 600, Draper, UT 84020
(801) 495-2200
FAX (801) 495-0280
data-packet-number: any byte value in the range [0,7f]; increments with each packet; does not
increment with resends; used with z and a packets only
cmd-packet-number: any byte value in the range [80-ff]; increments with each packet; does not
increment with resends; used with all packets other than z and a
timestamp: big-endian 32-bit number, indicates timestamp in seconds (relative to Reader
power-up) (For all but z packets, the timestamp represents the time the packet
was sent to the Host; for z packets, the time the code was read.)
data-size: big-endian 16-bit number indicating size of the data field (in bytes)
codeXML-start: SOH ‘X’ RS tag_response ‘/’
tag_response: ap’
packet-type: Single ASCII-character in table below
data: character
| data character
character: byte
| keyboard-sequence
byte: any byte value in range [0x00,0xFF]
keyboard-sequence: key
| shift key shift
| alt decimal-code alt
key: ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | =
| q | w | e | r | t | y | u | i | o | p | [ | ] | \
| a | s | d | f | g | h | j | k | l | ; |
| z | x | c | v | b | n | m | , | . | /
| space
| esc | tab | shift | alt | ctrl | enter | backspace
| f1 | f2 | f3 | f4 | f5 | f6 | f7 | f8 | f9 | f10 | f11 | f12
| insert | delete | home | end | pageup | pagedown
| left | right | up | down | keypadenter
| digit
decimal-code: digit | digit digit | digit digit digit (range [0,255])
digit: keypad0 | keypad1 | keypad2 | keypad3 | keypad4
| keypad5 | keypad6 | keypad7 | keypad8 | keypad9
end: codeXML-end
nz
crc16
nr
codeXML-end: EOT
crc16: big-endian 16-bit number representing crc16 of the packet, calculated over the
entire packet, excluding the crc16 itself. See source files crc16.[hc] in Appendix B
for details on the crc16 algorithm and polynomials to be used.