You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
66 <strong>HID</strong> <strong>Sensor</strong> <strong>Usage</strong>s<br />
Each Named Array takes on only one value (“radio button” style), so Report Count must be 1;<br />
Input Report Item or Feature Report Item must have “Array” flag (use Const_Arr_Abs or<br />
Data_Arr_Abs).<br />
See Also<br />
For more information about <strong>HID</strong> Selectors; please refer to Section 3.4.2.1, 3.4.3.1, and A.4 of the <strong>USB</strong> <strong>HID</strong><br />
<strong>Usage</strong> <strong>Tables</strong> specification (Reference Document [3]).<br />
3.8 <strong>HID</strong> <strong>Usage</strong> Page<br />
All <strong>HID</strong> <strong>Usage</strong>s for sensors are defined to occur on <strong>HID</strong> <strong>Usage</strong> Page 0x20.<br />
3.9 <strong>HID</strong> Units<br />
<strong>Usage</strong>s have by definition a default Unit of Measure, which will be mentioned in the <strong>Usage</strong>s Table.<br />
For example, a Thermometer sensor may have a Data Field (Input Report Item) <strong>Usage</strong> called “Current<br />
Temperature”, and its default Unit of Measure may be “Degrees Celsius”.<br />
If not explicitly overridden, the programmer should assume the default Unit of Measure.<br />
It is possible to override the default Unit of Measure by explicitly including a Unit() descriptor item in<br />
the <strong>HID</strong> Report Descriptor. For example, “Degrees Celsius” could be overridden by declaring<br />
Unit(Kelvin).<br />
See Also<br />
For more information about <strong>HID</strong> Units; please refer to Sections 6.2.2.7 of the Device Class Definition for<br />
Human Interface Devices specification (Reference Document [2]).<br />
<strong>Usage</strong>s state specifically whether Units are required to define a time base or other reference. A Units<br />
requirement implies the definition or Units, Physical Maximum, Physical Minimum and Unit Exponent<br />
descriptor items.<br />
Units are global items that persist from main item to main item. Units can be disabled by setting Units to<br />
“None”, and Physical Maximum, Physical Minimum and Unit Exponent equal to 0.<br />
Normalized <strong>Usage</strong>s use Logical Minimum and Logical Maximum to define their range of values. These<br />
values are automatically scaled by an application to fit the range of values required for the target operation<br />
and do not require Units. This is useful where, for example, the <strong>Usage</strong> is expressed as a Percent; use a<br />
Logical Minimum of 0 and a Logical Maximum of 100.<br />
To declare a vector (Vx, Vy, or Vz) as a linear velocity or acceleration, define the System field of the Unit<br />
item associated with the vector usage to be either SI Linear (1) or English Linear (3). To declare vectors as<br />
angular velocity or acceleration, define the System field of the Unit item to be either SI Rotation (2) or<br />
English Rotation (4).