@@ -807,7 +807,9 @@ enum {
807807 HID_USAGE_PAGE_MEDICAL_INSTRUMENT = 0x40 ,
808808 HID_USAGE_PAGE_LIGHTING_AND_ILLUMINATION = 0x59 ,
809809 HID_USAGE_PAGE_MONITOR = 0x80 , // 0x80 - 0x83
810- HID_USAGE_PAGE_POWER = 0x84 , // 0x084 - 0x87
810+ HID_USAGE_PAGE_POWER = 0x84 ,
811+ HID_USAGE_PAGE_BATTERY = 0x85 ,
812+ // 0x86 - 0x87 is reserved for Power Device
811813 HID_USAGE_PAGE_BARCODE_SCANNER = 0x8c ,
812814 HID_USAGE_PAGE_SCALE = 0x8d ,
813815 HID_USAGE_PAGE_MSR = 0x8e ,
@@ -1595,6 +1597,200 @@ enum {
15951597 HID_USAGE_LIGHTING_AUTONOMOUS_MODE = 0x71 ,
15961598};
15971599
1600+ /// HID Usage Table: Power Device Page (0x84)
1601+ enum {
1602+ HID_USAGE_POWER_UNDEFINED = 0x00 ,
1603+ HID_USAGE_POWER_I_NAME = 0x01 ,
1604+ HID_USAGE_POWER_PRESENT_STATUS = 0x02 ,
1605+ HID_USAGE_POWER_CHANGED_STATUS = 0x03 ,
1606+ HID_USAGE_POWER_UPS = 0x04 ,
1607+ HID_USAGE_POWER_POWER_SUPPLY = 0x05 ,
1608+ // 06-0F Reserved
1609+ HID_USAGE_POWER_BATTERY_SYSTEM = 0x10 ,
1610+ HID_USAGE_POWER_BATTERY_SYSTEM_ID = 0x11 ,
1611+ HID_USAGE_POWER_BATTERY = 0x12 ,
1612+ HID_USAGE_POWER_BATTERY_ID = 0x13 ,
1613+ HID_USAGE_POWER_CHARGER = 0x14 ,
1614+ HID_USAGE_POWER_CHARGER_ID = 0x15 ,
1615+ HID_USAGE_POWER_POWER_CONVERTER = 0x16 ,
1616+ HID_USAGE_POWER_POWER_CONVERTER_ID = 0x17 ,
1617+ HID_USAGE_POWER_OUTLET_SYSTEM = 0x18 ,
1618+ HID_USAGE_POWER_OUTLET_SYSTEM_ID = 0x19 ,
1619+ HID_USAGE_POWER_INPUT = 0x1A ,
1620+ HID_USAGE_POWER_INPUT_ID = 0x1B ,
1621+ HID_USAGE_POWER_OUTPUT = 0x1C ,
1622+ HID_USAGE_POWER_OUTPUT_ID = 0x1D ,
1623+ HID_USAGE_POWER_FLOW = 0x1E ,
1624+ HID_USAGE_POWER_FLOW_ID = 0x1F ,
1625+ HID_USAGE_POWER_OUTLET = 0x20 ,
1626+ HID_USAGE_POWER_OUTLET_ID = 0x21 ,
1627+ HID_USAGE_POWER_GANG = 0x22 ,
1628+ HID_USAGE_POWER_GANG_ID = 0x23 ,
1629+ HID_USAGE_POWER_POWER_SUMMARY = 0x24 ,
1630+ HID_USAGE_POWER_POWER_SUMMARY_ID = 0x25 ,
1631+ // 26-2F Reserved
1632+ HID_USAGE_POWER_VOLTAGE = 0x30 ,
1633+ HID_USAGE_POWER_CURRENT = 0x31 ,
1634+ HID_USAGE_POWER_FREQUENCY = 0x32 ,
1635+ HID_USAGE_POWER_APPARENT_POWER = 0x33 ,
1636+ HID_USAGE_POWER_ACTIVE_POWER = 0x34 ,
1637+ HID_USAGE_POWER_PERCENT_LOAD = 0x35 ,
1638+ HID_USAGE_POWER_TEMPERATURE = 0x36 ,
1639+ HID_USAGE_POWER_HUMIDITY = 0x37 ,
1640+ HID_USAGE_POWER_BAD_COUNT = 0x38 ,
1641+ // 39-3F Reserved
1642+ HID_USAGE_POWER_CONFIG_VOLTAGE = 0x40 ,
1643+ HID_USAGE_POWER_CONFIG_CURRENT = 0x41 ,
1644+ HID_USAGE_POWER_CONFIG_FREQUENCY = 0x42 ,
1645+ HID_USAGE_POWER_CONFIG_APPARENT_POWER = 0x43 ,
1646+ HID_USAGE_POWER_CONFIG_ACTIVE_POWER = 0x44 ,
1647+ HID_USAGE_POWER_CONFIG_PERCENT_LOAD = 0x45 ,
1648+ HID_USAGE_POWER_CONFIG_TEMPERATURE = 0x46 ,
1649+ HID_USAGE_POWER_CONFIG_HUMIDITY = 0x47 ,
1650+ // 48-4F Reserved
1651+ HID_USAGE_POWER_SWITCH_ON_CONTROL = 0x50 ,
1652+ HID_USAGE_POWER_SWITCH_OFF_CONTROL = 0x51 ,
1653+ HID_USAGE_POWER_TOGGLE_CONTROL = 0x52 ,
1654+ HID_USAGE_POWER_LOW_VOLTAGE_TRANSFER = 0x53 ,
1655+ HID_USAGE_POWER_HIGH_VOLTAGE_TRANSFER = 0x54 ,
1656+ HID_USAGE_POWER_DELAY_BEFORE_REBOOT = 0x55 ,
1657+ HID_USAGE_POWER_DELAY_BEFORE_STARTUP = 0x56 ,
1658+ HID_USAGE_POWER_DELAY_BEFORE_SHUTDOWN = 0x57 ,
1659+ HID_USAGE_POWER_TEST = 0x58 ,
1660+ HID_USAGE_POWER_MODULE_RESET = 0x59 ,
1661+ HID_USAGE_POWER_AUDIBLE_ALARM_CONTROL = 0x5A ,
1662+ // 5B-5F Reserved
1663+ HID_USAGE_POWER_PRESENT = 0x60 ,
1664+ HID_USAGE_POWER_GOOD = 0x61 ,
1665+ HID_USAGE_POWER_INTERNAL_FAILURE = 0x62 ,
1666+ HID_USAGE_POWER_VOLTAGE_OUT_OF_RANGE = 0x63 ,
1667+ HID_USAGE_POWER_FREQUENCY_OUT_OF_RANGE = 0x64 ,
1668+ HID_USAGE_POWER_OVERLOAD = 0x65 ,
1669+ HID_USAGE_POWER_OVER_CHARGED = 0x66 ,
1670+ HID_USAGE_POWER_OVER_TEMPERATURE = 0x67 ,
1671+ HID_USAGE_POWER_SHUTDOWN_REQUESTED = 0x68 ,
1672+ HID_USAGE_POWER_SHUTDOWN_IMMINENT = 0x69 ,
1673+ // 6A Reserved
1674+ HID_USAGE_POWER_SWITCH_ON_OFF = 0x6B ,
1675+ HID_USAGE_POWER_SWITCHABLE = 0x6C ,
1676+ HID_USAGE_POWER_USED = 0x6D ,
1677+ HID_USAGE_POWER_BOOST = 0x6E ,
1678+ HID_USAGE_POWER_BUCK = 0x6F ,
1679+ HID_USAGE_POWER_INITIALIZED = 0x70 ,
1680+ HID_USAGE_POWER_TESTED = 0x71 ,
1681+ HID_USAGE_POWER_AWAITING_POWER = 0x72 ,
1682+ HID_USAGE_POWER_COMMUNICATION_LOST = 0x73 ,
1683+ // 74-FC Reserved
1684+ HID_USAGE_POWER_I_MANUFACTURER = 0xFD ,
1685+ HID_USAGE_POWER_I_PRODUCT = 0xFE ,
1686+ HID_USAGE_POWER_I_SERIAL_NUMBER = 0xFF
1687+ };
1688+
1689+ /// HID Usage Table: Battery System Page (0x85)
1690+ enum {
1691+ HID_USAGE_BATTERY_UNDEFINED = 0x00 ,
1692+ HID_USAGE_BATTERY_SMB_BATTERY_MODE = 0x01 ,
1693+ HID_USAGE_BATTERY_SMB_BATTERY_STATUS = 0x02 ,
1694+ HID_USAGE_BATTERY_SMB_ALARM_WARNING = 0x03 ,
1695+ HID_USAGE_BATTERY_SMB_CHARGER_MODE = 0x04 ,
1696+ HID_USAGE_BATTERY_SMB_CHARGER_STATUS = 0x05 ,
1697+ HID_USAGE_BATTERY_SMB_CHARGER_SPEC_INFO = 0x06 ,
1698+ HID_USAGE_BATTERY_SMB_SELECTOR_STATE = 0x07 ,
1699+ HID_USAGE_BATTERY_SMB_SELECTOR_PRESETS = 0x08 ,
1700+ HID_USAGE_BATTERY_SMB_SELECTOR_INFO = 0x09 ,
1701+ // 0A-0F Reserved
1702+ HID_USAGE_BATTERY_OPTIONAL_MFG_FUNCTION_1 = 0x10 ,
1703+ HID_USAGE_BATTERY_OPTIONAL_MFG_FUNCTION_2 = 0x11 ,
1704+ HID_USAGE_BATTERY_OPTIONAL_MFG_FUNCTION_3 = 0x12 ,
1705+ HID_USAGE_BATTERY_OPTIONAL_MFG_FUNCTION_4 = 0x13 ,
1706+ HID_USAGE_BATTERY_OPTIONAL_MFG_FUNCTION_5 = 0x14 ,
1707+ HID_USAGE_BATTERY_CONNECTION_TO_SMBUS = 0x15 ,
1708+ HID_USAGE_BATTERY_OUTPUT_CONNECTION = 0x16 ,
1709+ HID_USAGE_BATTERY_CHARGER_CONNECTION = 0x17 ,
1710+ HID_USAGE_BATTERY_BATTERY_INSERTION = 0x18 ,
1711+ HID_USAGE_BATTERY_USE_NEXT = 0x19 ,
1712+ HID_USAGE_BATTERY_OK_TO_USE = 0x1A ,
1713+ HID_USAGE_BATTERY_BATTERY_SUPPORTED = 0x1B ,
1714+ HID_USAGE_BATTERY_SELECTOR_REVISION = 0x1C ,
1715+ HID_USAGE_BATTERY_CHARGING_INDICATOR = 0x1D ,
1716+ // 1E-27 Reserved
1717+ HID_USAGE_BATTERY_MANUFACTURER_ACCESS = 0x28 ,
1718+ HID_USAGE_BATTERY_REMAINING_CAPACITY_LIMIT = 0x29 ,
1719+ HID_USAGE_BATTERY_REMAINING_TIME_LIMIT = 0x2A ,
1720+ HID_USAGE_BATTERY_AT_RATE = 0x2B ,
1721+ HID_USAGE_BATTERY_CAPACITY_MODE = 0x2C ,
1722+ HID_USAGE_BATTERY_BROADCAST_TO_CHARGER = 0x2D ,
1723+ HID_USAGE_BATTERY_PRIMARY_BATTERY = 0x2E ,
1724+ HID_USAGE_BATTERY_CHARGE_CONTROLLER = 0x2F ,
1725+ // 30-3F Reserved
1726+ HID_USAGE_BATTERY_TERMINATE_CHARGE = 0x40 ,
1727+ HID_USAGE_BATTERY_TERMINATE_DISCHARGE = 0x41 ,
1728+ HID_USAGE_BATTERY_BELOW_REMAINING_CAPACITY_LIMIT = 0x42 ,
1729+ HID_USAGE_BATTERY_REMAINING_TIME_LIMIT_EXPIRED = 0x43 ,
1730+ HID_USAGE_BATTERY_CHARGING = 0x44 ,
1731+ HID_USAGE_BATTERY_DISCHARGING = 0x45 ,
1732+ HID_USAGE_BATTERY_FULLY_CHARGED = 0x46 ,
1733+ HID_USAGE_BATTERY_FULLY_DISCHARGED = 0x47 ,
1734+ HID_USAGE_BATTERY_CONDITIONING_FLAG = 0x48 ,
1735+ HID_USAGE_BATTERY_AT_RATE_OK = 0x49 ,
1736+ HID_USAGE_BATTERY_SMB_ERROR_CODE = 0x4A ,
1737+ HID_USAGE_BATTERY_NEED_REPLACEMENT = 0x4B ,
1738+ // 4C-5F Reserved
1739+ HID_USAGE_BATTERY_AT_RATE_TIME_TO_FULL = 0x60 ,
1740+ HID_USAGE_BATTERY_AT_RATE_TIME_TO_EMPTY = 0x61 ,
1741+ HID_USAGE_BATTERY_AVERAGE_CURRENT = 0x62 ,
1742+ HID_USAGE_BATTERY_MAX_ERROR = 0x63 ,
1743+ HID_USAGE_BATTERY_RELATIVE_STATE_OF_CHARGE = 0x64 ,
1744+ HID_USAGE_BATTERY_ABSOLUTE_STATE_OF_CHARGE = 0x65 ,
1745+ HID_USAGE_BATTERY_REMAINING_CAPACITY = 0x66 ,
1746+ HID_USAGE_BATTERY_FULL_CHARGE_CAPACITY = 0x67 ,
1747+ HID_USAGE_BATTERY_RUN_TIME_TO_EMPTY = 0x68 ,
1748+ HID_USAGE_BATTERY_AVERAGE_TIME_TO_EMPTY = 0x69 ,
1749+ HID_USAGE_BATTERY_AVERAGE_TIME_TO_FULL = 0x6A ,
1750+ HID_USAGE_BATTERY_CYCLE_COUNT = 0x6B ,
1751+ // 6C-7F Reserved
1752+ HID_USAGE_BATTERY_BATT_PACK_MODEL_LEVEL = 0x80 ,
1753+ HID_USAGE_BATTERY_INTERNAL_CHARGE_CONTROLLER = 0x81 ,
1754+ HID_USAGE_BATTERY_PRIMARY_BATTERY_SUPPORT = 0x82 ,
1755+ HID_USAGE_BATTERY_DESIGN_CAPACITY = 0x83 ,
1756+ HID_USAGE_BATTERY_SPECIFICATION_INFO = 0x84 ,
1757+ HID_USAGE_BATTERY_MANUFACTURER_DATE = 0x85 ,
1758+ HID_USAGE_BATTERY_SERIAL_NUMBER = 0x86 ,
1759+ HID_USAGE_BATTERY_I_MANUFACTURER_NAME = 0x87 ,
1760+ HID_USAGE_BATTERY_I_DEVICE_NAME = 0x88 ,
1761+ HID_USAGE_BATTERY_I_DEVICE_CHEMISTRY = 0x89 ,
1762+ HID_USAGE_BATTERY_MANUFACTURER_DATA = 0x8A ,
1763+ HID_USAGE_BATTERY_RECHARGEABLE = 0x8B ,
1764+ HID_USAGE_BATTERY_WARNING_CAPACITY_LIMIT = 0x8C ,
1765+ HID_USAGE_BATTERY_CAPACITY_GRANULARITY_1 = 0x8D ,
1766+ HID_USAGE_BATTERY_CAPACITY_GRANULARITY_2 = 0x8E ,
1767+ HID_USAGE_BATTERY_I_OEMINFORMATION = 0x8F ,
1768+ // 90-BF Reserved
1769+ HID_USAGE_BATTERY_INHIBIT_CHARGE = 0xC0 ,
1770+ HID_USAGE_BATTERY_ENABLE_POLLING = 0xC1 ,
1771+ HID_USAGE_BATTERY_RESET_TO_ZERO = 0xC2 ,
1772+ // C3-CF Reserved
1773+ HID_USAGE_BATTERY_AC_PRESENT = 0xD0 ,
1774+ HID_USAGE_BATTERY_BATTERY_PRESENT = 0xD1 ,
1775+ HID_USAGE_BATTERY_POWER_FAIL = 0xD2 ,
1776+ HID_USAGE_BATTERY_ALARM_INHIBITED = 0xD3 ,
1777+ HID_USAGE_BATTERY_THERMISTOR_UNDER_RANGE = 0xD4 ,
1778+ HID_USAGE_BATTERY_THERMISTOR_HOT = 0xD5 ,
1779+ HID_USAGE_BATTERY_THERMISTOR_COLD = 0xD6 ,
1780+ HID_USAGE_BATTERY_THERMISTOR_OVER_RANGE = 0xD7 ,
1781+ HID_USAGE_BATTERY_VOLTAGE_OUT_OF_RANGE = 0xD8 ,
1782+ HID_USAGE_BATTERY_CURRENT_OUT_OF_RANGE = 0xD9 ,
1783+ HID_USAGE_BATTERY_CURRENT_NOT_REGULATED = 0xDA ,
1784+ HID_USAGE_BATTERY_VOLTAGE_NOT_REGULATED = 0xDB ,
1785+ HID_USAGE_BATTERY_MASTER_MODE = 0xDC ,
1786+ // DD-EF Reserved
1787+ HID_USAGE_BATTERY_CHARGER_SELECTOR_SUPPORT = 0xF0 ,
1788+ HID_USAGE_BATTERY_CHARGER_SPEC = 0xF1 ,
1789+ HID_USAGE_BATTERY_LEVEL_2 = 0xF2 ,
1790+ HID_USAGE_BATTERY_LEVEL_3 = 0xF3
1791+ // F2-CF Reserved
1792+ };
1793+
15981794/// HID Usage Table: FIDO Alliance Page (0xF1D0)
15991795enum {
16001796 HID_USAGE_FIDO_U2FHID = 0x01 , // U2FHID usage for top-level collection
0 commit comments