31.08.2013 Views

HID Sensor Usage Tables - USB.org

HID Sensor Usage Tables - USB.org

HID Sensor Usage Tables - USB.org

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

61 <strong>HID</strong> <strong>Sensor</strong> <strong>Usage</strong>s<br />

Third 0x30 – 0x3f<br />

Table 7. A Report ID allocation scheme example<br />

Because the SETUP packet has fields describing the request type separate from the Report ID, it is OK to<br />

“re use” Report IDs for Input Reports, Output Reports, and Feature Reports. For example, a sensor can<br />

have an Input Report with Report ID 0x01, an Output Report with Report ID 0x01, and a Feature Report<br />

with Report ID 0x01. These are all separate Reports with different contents. If you find this too confusing,<br />

you may wish to assign different Report IDs, for example: an Input Report with Report ID 0x01, an Output<br />

Report with Report ID 0x02, and a Feature Report with Report ID 0x03. Either technique is allowed.<br />

If there is only one logical device, and that device only has a single Input Report, Output Report, and/or<br />

Feature Report, then the Report ID is not mandatory and must be filled with the special value zero.<br />

3.6 <strong>HID</strong> Report Items<br />

Each report may incorporate one or more pieces of data, called Items. The Items always follow the Report<br />

ID byte, i.e., the Items start at byte position 1 and work upward.<br />

See Also<br />

For more information about <strong>HID</strong> Report Items; please refer to Sections 5.2 and 5.3 of the Device Class<br />

Definition for Human Interface Devices specification (Reference Document [2]).<br />

Input Reports are sent from the device to the host. Input Reports may be sent “asynchronously” by the<br />

device to the host (in actuality, the host bus controller periodically polls for these). The host may also<br />

“demand” an Input Report by invoking a <strong>HID</strong> GET INPUT REPORT request. <strong>Sensor</strong> Data Fields, i.e.,<br />

real-time acquired sensor data samples, are equated to <strong>HID</strong> Input Report Items.<br />

Output Reports are sent from the host to the device. Output Reports are optional. In the context of<br />

<strong>Sensor</strong>s, Output Reports may be used to send functional commands to the <strong>Sensor</strong> by invoking the <strong>HID</strong> SET<br />

OUTPUT REPORT request. In practice, configuration of sensors is more commonly done using the <strong>HID</strong><br />

SET FEATURE REPORT request instead.<br />

See Also<br />

For more information about <strong>HID</strong> Output Reports that may optionally be supported by some sensor device<br />

implementations; please refer to the Device Class Definition for Physical Interface Devices (PID)<br />

specification (Reference Document [7]). In that document, it describes how various types of Output<br />

Reports could be used for advanced features such as downloading detailed Haptic feedback waveforms,<br />

waveform shape “envelopes”, and “condition” definitions that can be used as complex triggers. Please note<br />

that PID <strong>Usage</strong>s appear on <strong>Usage</strong> Page 0x0F, not the <strong>Sensor</strong> <strong>Usage</strong> Page 0x20.<br />

Feature Reports can be used to transfer non-real-time Properties between the device and the host. They are<br />

optional, meaning that it is possible to define a sensor collection that communicates solely with Input<br />

Reports. Feature Reports are also bi-directional, and sub-divided into Get Feature Reports and Set Feature<br />

Reports, depending upon direction.<br />

Get Feature Reports are sent from the device to the host. They are used to get Properties from a sensor by<br />

invoking the <strong>HID</strong> GET FEATURE REPORT request. This might include identifying information such as<br />

the sensor’s manufacturer and model number, or reading back previously set configuration settings. <strong>Sensor</strong><br />

Properties are equated to <strong>HID</strong> Feature Report Items.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!