Microscan HID Report Format
Size: 64 bytes, fixed-length. The USB HID standard defines all reports as being fixed-length.
Structure: REPORT ID (1) LENGTH (1) DATA (62)
Values in parentheses indicate the size, in bytes, of the field.
Field Descriptions
REPORT ID
Size: 1 byte
Value: 0x01
Note: Report ID is the method employed by USB HID to allow multiple report formats to be sent and received from the same interface.
LENGTH
Size: 1 byte
Value: 0-62
Note: Length indicates the number of valid data bytes in the fixed-length data field. This is necessary because the USB HID standards define HID Reports as fixed-length, yet the Imager or host may require a smaller data size in any given report.
DATA
Size: 62 bytes, fixed-length
Value: 0x00 to 0xFF
Note: The Data field is left-justified, meaning it begins immediately after the Length field. All unused data space is NUL (0x00) padded. Data values can be "binary", meaning that they span the entire 8 bit range of 0x00 to 0xFF.
Report Format Examples
For clarity, all report format examples are shown as follows: report fields separated by an underscore ( _ ), REPORT ID and LENGTH fields shown as decimal values, data fields shown as printable ASCII characters, and the number of NUL padding bytes shown as decimal values (nn).
IN report (to host)
1_11_A]002374938 (51)
REPORT ID = 1 = Microscan HID
LENGTH = 11
DATA = "A]02374938" = This is a Code 39 symbol.
NUL padding = 51 bytes
OUT report (from host to Imager)
1_27_<K200,3><K220,0,300><K714?> (35)
REPORT ID = 1 = Microscan HID
LENGTH = 27
DATA = "<K200,3><K220,0,300><K714?>" = These commands enable External Edge, set a 3 second timeout, and request the No Read configuration command.
NUL padding = 35 bytes
IN report (to host)
1_62_<K714,1, A LONG MESSAGE STREAMED OVER MULTIPLE MICROSCAN HID RE (0)
REPORT ID = 1 = Microscan HID
LENGTH = 62
DATA = "<K714,1, A LONG MESSAGE STREAMED OVER MULTIPLE MICROSCAN HID RE" = This shows the response to the <714?> command. Note that the command status response is not yet complete. See the next report example for the complete response.
NUL padding = 0 bytes
IN report (to host)
1_6_PORTS>(56)
REPORT ID = 1 = Microscan HID
LENGTH = 6
DATA = "PORTS>" = This is the end of the response to the <K714?> command from the previous example.
The entire <K714> command response is as follows:
DATA = "K714,1, A LONG MESSAGE STREAMED OVER MULTIPLE MICROSCAN HID REPORTS>" .
NUL padding = 56 bytes