Specifications

Section 4. USB Communications
39
Example Response (Hex):
Result Code
Data Len
Data
00
00
GET_KEYMAP_ITEM COMMAND
Command number: 0x03
Description: This command is used to get a key map item from the active key map. The
active key map is determined by the active key map property. Data from a
magnetic stripe card is a sequence of ASCII characters. These ASCII
characters are mapped to key strokes and these key strokes are sent to the
host to represent the ASCII character. The key map maps a single ASCII
character to a single USB key usage ID and USB key modifier byte. The
key usage ID and the key modifier byte are transmitted to the host via USB
to represent the ASCII character. The ASCII value is the value of the
ASCII character to be transmitted to the host. See an ASCII table for the
values of the ASCII character set. The USB key usage ID is a unique value
assigned to every keyboard key. For a list of all key usage IDs see
Appendix A. The key modifier byte modifies the meaning of the key usage
ID. The modifier byte indicates if any combination of the right or left Ctrl,
Shift, Alt or GUI keys are pressed at the same time as the key usage ID.
For a list and description of the key modifier byte see Appendix B.
Starting with the firmware release with software ID 21042812F01, when
both the key usage ID and the key modifier byte are set to 0xFF for a given
ASCII value, the ALT ASCII code is sent instead of the key map values.
The ALT ASCII code is a key press combination consisting of the decimal
value of the ASCII character combined with the ALT key modifier. For
example, to transmit the ASCII character ‘?’ (063 decimal), keypad ‘0’ is
sent combined with left ALT key modifier, next keypad ‘6’ is sent
combined with the left ALT key modifier, last keypad ‘3’ is sent combined
with the left ALT key modifier.
Data structure:
Request Data:
Offset
Field Name
Description
0
ASCII value
Value of the ASCII character to be
retrieved from the key map. This can be
any value between 0 and 127 (0x7F). For
example, to retrieve the key map item for
ASCII character ‘?’ (card data end
sentinel) use the ASCII value of ‘?which
is 63 (0x3F).