Added support for Streamdeck Pedal and updated UI to better fit the Packed UI style
This commit is contained in:
420
node_modules/node-hid/hidapi/windows/test/data/045E_02FF_0005_0001.pp_data
generated
vendored
Normal file
420
node_modules/node-hid/hidapi/windows/test/data/045E_02FF_0005_0001.pp_data
generated
vendored
Normal file
@@ -0,0 +1,420 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x045E
|
||||
dev->product_id = 0x02FF
|
||||
dev->manufacturer_string = ""
|
||||
dev->product_string = "Controller (Xbox One For Windows)"
|
||||
dev->release_number = 0x0000
|
||||
dev->interface_number = -1
|
||||
dev->usage = 0x0005
|
||||
dev->usage_page = 0x0001
|
||||
dev->path = "\\?\HID#VID_045E&PID_02FF&IG_00#7&5ea4a81&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0005
|
||||
pp_data->UsagePage = 0x0001
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 7
|
||||
pp_data->caps_info[0]->NumberOfCaps = 7
|
||||
pp_data->caps_info[0]->ReportByteLength = 16
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 7
|
||||
pp_data->caps_info[1]->LastCap = 7
|
||||
pp_data->caps_info[1]->NumberOfCaps = 0
|
||||
pp_data->caps_info[1]->ReportByteLength = 0
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 7
|
||||
pp_data->caps_info[2]->LastCap = 7
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x02D8
|
||||
pp_data->NumberLinkCollectionNodes = 4
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x0001
|
||||
pp_data->cap[0]->ReportID = 0x00
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 16
|
||||
pp_data->cap[0]->ReportCount = 1
|
||||
pp_data->cap[0]->BytePosition = 0x0003
|
||||
pp_data->cap[0]->BitCount = 16
|
||||
pp_data->cap[0]->BitField = 0x02
|
||||
pp_data->cap[0]->NextBytePosition = 0x0005
|
||||
pp_data->cap[0]->LinkCollection = 0x0001
|
||||
pp_data->cap[0]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[0]->LinkUsage = 0x0000
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 0
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 0
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->NotRange.Usage = 0x0031
|
||||
pp_data->cap[0]->NotRange.Reserved1 = 0x0031
|
||||
pp_data->cap[0]->NotRange.StringIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[0]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[0]->NotRange.DataIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[0]->NotButton.HasNull = 0
|
||||
pp_data->cap[0]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[0]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[0]->NotButton.LogicalMax = -1
|
||||
pp_data->cap[0]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[0]->NotButton.PhysicalMax = -1
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0x0001
|
||||
pp_data->cap[1]->ReportID = 0x00
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 16
|
||||
pp_data->cap[1]->ReportCount = 1
|
||||
pp_data->cap[1]->BytePosition = 0x0001
|
||||
pp_data->cap[1]->BitCount = 16
|
||||
pp_data->cap[1]->BitField = 0x02
|
||||
pp_data->cap[1]->NextBytePosition = 0x0003
|
||||
pp_data->cap[1]->LinkCollection = 0x0001
|
||||
pp_data->cap[1]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[1]->LinkUsage = 0x0000
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 0
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0030
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0030
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 1
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 1
|
||||
pp_data->cap[1]->NotButton.HasNull = 0
|
||||
pp_data->cap[1]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[1]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[1]->NotButton.LogicalMax = -1
|
||||
pp_data->cap[1]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[1]->NotButton.PhysicalMax = -1
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[2]->UsagePage = 0x0001
|
||||
pp_data->cap[2]->ReportID = 0x00
|
||||
pp_data->cap[2]->BitPosition = 0
|
||||
pp_data->cap[2]->BitSize = 16
|
||||
pp_data->cap[2]->ReportCount = 1
|
||||
pp_data->cap[2]->BytePosition = 0x0007
|
||||
pp_data->cap[2]->BitCount = 16
|
||||
pp_data->cap[2]->BitField = 0x02
|
||||
pp_data->cap[2]->NextBytePosition = 0x0009
|
||||
pp_data->cap[2]->LinkCollection = 0x0002
|
||||
pp_data->cap[2]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[2]->LinkUsage = 0x0000
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 0
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 1
|
||||
pp_data->cap[2]->IsRange = 0
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->NotRange.Usage = 0x0034
|
||||
pp_data->cap[2]->NotRange.Reserved1 = 0x0034
|
||||
pp_data->cap[2]->NotRange.StringIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[2]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[2]->NotRange.DataIndex = 2
|
||||
pp_data->cap[2]->NotRange.Reserved4 = 2
|
||||
pp_data->cap[2]->NotButton.HasNull = 0
|
||||
pp_data->cap[2]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[2]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[2]->NotButton.LogicalMax = -1
|
||||
pp_data->cap[2]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[2]->NotButton.PhysicalMax = -1
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[3]->UsagePage = 0x0001
|
||||
pp_data->cap[3]->ReportID = 0x00
|
||||
pp_data->cap[3]->BitPosition = 0
|
||||
pp_data->cap[3]->BitSize = 16
|
||||
pp_data->cap[3]->ReportCount = 1
|
||||
pp_data->cap[3]->BytePosition = 0x0005
|
||||
pp_data->cap[3]->BitCount = 16
|
||||
pp_data->cap[3]->BitField = 0x02
|
||||
pp_data->cap[3]->NextBytePosition = 0x0007
|
||||
pp_data->cap[3]->LinkCollection = 0x0002
|
||||
pp_data->cap[3]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[3]->LinkUsage = 0x0000
|
||||
pp_data->cap[3]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[3]->IsButtonCap = 0
|
||||
pp_data->cap[3]->IsPadding = 0
|
||||
pp_data->cap[3]->IsAbsolute = 1
|
||||
pp_data->cap[3]->IsRange = 0
|
||||
pp_data->cap[3]->IsAlias = 0
|
||||
pp_data->cap[3]->IsStringRange = 0
|
||||
pp_data->cap[3]->IsDesignatorRange = 0
|
||||
pp_data->cap[3]->Reserved1 = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[3]->NotRange.Usage = 0x0033
|
||||
pp_data->cap[3]->NotRange.Reserved1 = 0x0033
|
||||
pp_data->cap[3]->NotRange.StringIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[3]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[3]->NotRange.DataIndex = 3
|
||||
pp_data->cap[3]->NotRange.Reserved4 = 3
|
||||
pp_data->cap[3]->NotButton.HasNull = 0
|
||||
pp_data->cap[3]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[3]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[3]->NotButton.LogicalMax = -1
|
||||
pp_data->cap[3]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[3]->NotButton.PhysicalMax = -1
|
||||
pp_data->cap[3]->Units = 0
|
||||
pp_data->cap[3]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[4]->UsagePage = 0x0001
|
||||
pp_data->cap[4]->ReportID = 0x00
|
||||
pp_data->cap[4]->BitPosition = 0
|
||||
pp_data->cap[4]->BitSize = 16
|
||||
pp_data->cap[4]->ReportCount = 1
|
||||
pp_data->cap[4]->BytePosition = 0x0009
|
||||
pp_data->cap[4]->BitCount = 16
|
||||
pp_data->cap[4]->BitField = 0x02
|
||||
pp_data->cap[4]->NextBytePosition = 0x000B
|
||||
pp_data->cap[4]->LinkCollection = 0x0003
|
||||
pp_data->cap[4]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[4]->LinkUsage = 0x0000
|
||||
pp_data->cap[4]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[4]->IsButtonCap = 0
|
||||
pp_data->cap[4]->IsPadding = 0
|
||||
pp_data->cap[4]->IsAbsolute = 1
|
||||
pp_data->cap[4]->IsRange = 0
|
||||
pp_data->cap[4]->IsAlias = 0
|
||||
pp_data->cap[4]->IsStringRange = 0
|
||||
pp_data->cap[4]->IsDesignatorRange = 0
|
||||
pp_data->cap[4]->Reserved1 = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[4]->NotRange.Usage = 0x0032
|
||||
pp_data->cap[4]->NotRange.Reserved1 = 0x0032
|
||||
pp_data->cap[4]->NotRange.StringIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[4]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[4]->NotRange.DataIndex = 4
|
||||
pp_data->cap[4]->NotRange.Reserved4 = 4
|
||||
pp_data->cap[4]->NotButton.HasNull = 0
|
||||
pp_data->cap[4]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[4]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[4]->NotButton.LogicalMax = -1
|
||||
pp_data->cap[4]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[4]->NotButton.PhysicalMax = -1
|
||||
pp_data->cap[4]->Units = 0
|
||||
pp_data->cap[4]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[5]->UsagePage = 0x0009
|
||||
pp_data->cap[5]->ReportID = 0x00
|
||||
pp_data->cap[5]->BitPosition = 0
|
||||
pp_data->cap[5]->BitSize = 1
|
||||
pp_data->cap[5]->ReportCount = 16
|
||||
pp_data->cap[5]->BytePosition = 0x000B
|
||||
pp_data->cap[5]->BitCount = 16
|
||||
pp_data->cap[5]->BitField = 0x02
|
||||
pp_data->cap[5]->NextBytePosition = 0x000D
|
||||
pp_data->cap[5]->LinkCollection = 0x0000
|
||||
pp_data->cap[5]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[5]->LinkUsage = 0x0005
|
||||
pp_data->cap[5]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[5]->IsButtonCap = 1
|
||||
pp_data->cap[5]->IsPadding = 0
|
||||
pp_data->cap[5]->IsAbsolute = 1
|
||||
pp_data->cap[5]->IsRange = 1
|
||||
pp_data->cap[5]->IsAlias = 0
|
||||
pp_data->cap[5]->IsStringRange = 0
|
||||
pp_data->cap[5]->IsDesignatorRange = 0
|
||||
pp_data->cap[5]->Reserved1 = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[5]->Range.UsageMin = 0x0001
|
||||
pp_data->cap[5]->Range.UsageMax = 0x0010
|
||||
pp_data->cap[5]->Range.StringMin = 0
|
||||
pp_data->cap[5]->Range.StringMax = 0
|
||||
pp_data->cap[5]->Range.DesignatorMin = 0
|
||||
pp_data->cap[5]->Range.DesignatorMax = 0
|
||||
pp_data->cap[5]->Range.DataIndexMin = 5
|
||||
pp_data->cap[5]->Range.DataIndexMax = 20
|
||||
pp_data->cap[5]->Button.LogicalMin = 0
|
||||
pp_data->cap[5]->Button.LogicalMax = 0
|
||||
pp_data->cap[5]->Units = 0
|
||||
pp_data->cap[5]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[6]->UsagePage = 0x0001
|
||||
pp_data->cap[6]->ReportID = 0x00
|
||||
pp_data->cap[6]->BitPosition = 0
|
||||
pp_data->cap[6]->BitSize = 4
|
||||
pp_data->cap[6]->ReportCount = 1
|
||||
pp_data->cap[6]->BytePosition = 0x000D
|
||||
pp_data->cap[6]->BitCount = 4
|
||||
pp_data->cap[6]->BitField = 0x42
|
||||
pp_data->cap[6]->NextBytePosition = 0x000E
|
||||
pp_data->cap[6]->LinkCollection = 0x0000
|
||||
pp_data->cap[6]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[6]->LinkUsage = 0x0005
|
||||
pp_data->cap[6]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[6]->IsButtonCap = 0
|
||||
pp_data->cap[6]->IsPadding = 0
|
||||
pp_data->cap[6]->IsAbsolute = 1
|
||||
pp_data->cap[6]->IsRange = 0
|
||||
pp_data->cap[6]->IsAlias = 0
|
||||
pp_data->cap[6]->IsStringRange = 0
|
||||
pp_data->cap[6]->IsDesignatorRange = 0
|
||||
pp_data->cap[6]->Reserved1 = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[6]->NotRange.Usage = 0x0039
|
||||
pp_data->cap[6]->NotRange.Reserved1 = 0x0039
|
||||
pp_data->cap[6]->NotRange.StringIndex = 0
|
||||
pp_data->cap[6]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[6]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[6]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[6]->NotRange.DataIndex = 21
|
||||
pp_data->cap[6]->NotRange.Reserved4 = 21
|
||||
pp_data->cap[6]->NotButton.HasNull = 1
|
||||
pp_data->cap[6]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[6]->NotButton.LogicalMin = 1
|
||||
pp_data->cap[6]->NotButton.LogicalMax = 8
|
||||
pp_data->cap[6]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[6]->NotButton.PhysicalMax = 4155
|
||||
pp_data->cap[6]->Units = 14
|
||||
pp_data->cap[6]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0005
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 3
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 3
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
pp_data->LinkCollectionArray[1]->LinkUsage = 0x0000
|
||||
pp_data->LinkCollectionArray[1]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[1]->Parent = 0
|
||||
pp_data->LinkCollectionArray[1]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[1]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[1]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[1]->CollectionType = 0
|
||||
pp_data->LinkCollectionArray[1]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[1]->Reserved = 0x00000000
|
||||
pp_data->LinkCollectionArray[2]->LinkUsage = 0x0000
|
||||
pp_data->LinkCollectionArray[2]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[2]->Parent = 0
|
||||
pp_data->LinkCollectionArray[2]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[2]->NextSibling = 1
|
||||
pp_data->LinkCollectionArray[2]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[2]->CollectionType = 0
|
||||
pp_data->LinkCollectionArray[2]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[2]->Reserved = 0x00000000
|
||||
pp_data->LinkCollectionArray[3]->LinkUsage = 0x0000
|
||||
pp_data->LinkCollectionArray[3]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[3]->Parent = 0
|
||||
pp_data->LinkCollectionArray[3]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[3]->NextSibling = 2
|
||||
pp_data->LinkCollectionArray[3]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[3]->CollectionType = 0
|
||||
pp_data->LinkCollectionArray[3]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[3]->Reserved = 0x00000000
|
||||
12
node_modules/node-hid/hidapi/windows/test/data/045E_02FF_0005_0001_expected.rpt_desc
generated
vendored
Normal file
12
node_modules/node-hid/hidapi/windows/test/data/045E_02FF_0005_0001_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
0x05, 0x01, 0x09, 0x05, 0xA1, 0x01, 0x09, 0x00, 0xA1, 0x00,
|
||||
0x09, 0x30, 0x09, 0x31, 0x15, 0x00, 0x25, 0xFF, 0x35, 0x00,
|
||||
0x45, 0xFF, 0x75, 0x10, 0x95, 0x02, 0x81, 0x02, 0xC0, 0x09,
|
||||
0x00, 0xA1, 0x00, 0x09, 0x33, 0x09, 0x34, 0x15, 0x00, 0x25,
|
||||
0xFF, 0x75, 0x10, 0x95, 0x02, 0x81, 0x02, 0xC0, 0x09, 0x00,
|
||||
0xA1, 0x00, 0x09, 0x32, 0x15, 0x00, 0x25, 0xFF, 0x75, 0x10,
|
||||
0x95, 0x01, 0x81, 0x02, 0xC0, 0x05, 0x09, 0x19, 0x01, 0x29,
|
||||
0x10, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x10, 0x45,
|
||||
0x00, 0x81, 0x02, 0x05, 0x01, 0x09, 0x39, 0x15, 0x01, 0x25,
|
||||
0x08, 0x35, 0x00, 0x46, 0x3B, 0x10, 0x65, 0x0E, 0x75, 0x04,
|
||||
0x95, 0x01, 0x81, 0x42, 0x75, 0x04, 0x95, 0x01, 0x81, 0x03,
|
||||
0x75, 0x08, 0x95, 0x02, 0x81, 0x03, 0xC0,
|
||||
64
node_modules/node-hid/hidapi/windows/test/data/045E_02FF_0005_0001_real.rpt_desc
generated
vendored
Normal file
64
node_modules/node-hid/hidapi/windows/test/data/045E_02FF_0005_0001_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,64 @@
|
||||
// Special cases of this device:
|
||||
// 2 full padding bytes at the end
|
||||
// Multiple child collections inside of the same report (byte position of Input items defines collection order)
|
||||
|
||||
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
|
||||
0x09, 0x05, // Usage (Game Pad)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0xA1, 0x00, // Collection (Physical)
|
||||
0x09, 0x30, // Usage (X)
|
||||
0x09, 0x31, // Usage (Y)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x26, 0xFF, 0xFF, // Logical Maximum (-1)
|
||||
0x35, 0x00, // Physical Minimum (0)
|
||||
0x46, 0xFF, 0xFF, // Physical Maximum (-1)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x75, 0x10, // Report Size (16)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
0xA1, 0x00, // Collection (Physical)
|
||||
0x09, 0x33, // Usage (Rx)
|
||||
0x09, 0x34, // Usage (Ry)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x26, 0xFF, 0xFF, // Logical Maximum (-1)
|
||||
0x35, 0x00, // Physical Minimum (0)
|
||||
0x46, 0xFF, 0xFF, // Physical Maximum (-1)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x75, 0x10, // Report Size (16)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
0xA1, 0x00, // Collection (Physical)
|
||||
0x09, 0x32, // Usage (Z)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x26, 0xFF, 0xFF, // Logical Maximum (-1)
|
||||
0x35, 0x00, // Physical Minimum (0)
|
||||
0x46, 0xFF, 0xFF, // Physical Maximum (-1)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x75, 0x10, // Report Size (16)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
0x05, 0x09, // Usage Page (Button)
|
||||
0x19, 0x01, // Usage Minimum (0x01)
|
||||
0x29, 0x10, // Usage Maximum (0x10)
|
||||
0x95, 0x10, // Report Count (16)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
|
||||
0x09, 0x39, // Usage (Hat switch)
|
||||
0x15, 0x01, // Logical Minimum (1)
|
||||
0x25, 0x08, // Logical Maximum (8)
|
||||
0x35, 0x00, // Physical Minimum (0)
|
||||
0x46, 0x3B, 0x10, // Physical Maximum (4155)
|
||||
0x66, 0x0E, 0x00, // Unit (None)
|
||||
0x75, 0x04, // Report Size (4)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x81, 0x42, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,Null State)
|
||||
0x75, 0x04, // Report Size (4)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
|
||||
// 120 bytes
|
||||
183
node_modules/node-hid/hidapi/windows/test/data/046A_0011_0006_0001.pp_data
generated
vendored
Normal file
183
node_modules/node-hid/hidapi/windows/test/data/046A_0011_0006_0001.pp_data
generated
vendored
Normal file
@@ -0,0 +1,183 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046A
|
||||
dev->product_id = 0x0011
|
||||
dev->manufacturer_string = "dev->product_string = "dev->release_number = 0x0100
|
||||
dev->interface_number = -1
|
||||
dev->usage = 0x0006
|
||||
dev->usage_page = 0x0001
|
||||
dev->path = "\\?\hid#vid_046a&pid_0011#7&2c7fd0a5&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0006
|
||||
pp_data->UsagePage = 0x0001
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 2
|
||||
pp_data->caps_info[0]->NumberOfCaps = 2
|
||||
pp_data->caps_info[0]->ReportByteLength = 9
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 2
|
||||
pp_data->caps_info[1]->LastCap = 3
|
||||
pp_data->caps_info[1]->NumberOfCaps = 1
|
||||
pp_data->caps_info[1]->ReportByteLength = 2
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 3
|
||||
pp_data->caps_info[2]->LastCap = 3
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x0138
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x0007
|
||||
pp_data->cap[0]->ReportID = 0x00
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 1
|
||||
pp_data->cap[0]->ReportCount = 8
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 8
|
||||
pp_data->cap[0]->BitField = 0x02
|
||||
pp_data->cap[0]->NextBytePosition = 0x0002
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[0]->LinkUsage = 0x0006
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 1
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->Range.UsageMin = 0x00E0
|
||||
pp_data->cap[0]->Range.UsageMax = 0x00E7
|
||||
pp_data->cap[0]->Range.StringMin = 0
|
||||
pp_data->cap[0]->Range.StringMax = 0
|
||||
pp_data->cap[0]->Range.DesignatorMin = 0
|
||||
pp_data->cap[0]->Range.DesignatorMax = 0
|
||||
pp_data->cap[0]->Range.DataIndexMin = 0
|
||||
pp_data->cap[0]->Range.DataIndexMax = 7
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 0
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0x0007
|
||||
pp_data->cap[1]->ReportID = 0x00
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 8
|
||||
pp_data->cap[1]->ReportCount = 6
|
||||
pp_data->cap[1]->BytePosition = 0x0003
|
||||
pp_data->cap[1]->BitCount = 48
|
||||
pp_data->cap[1]->BitField = 0x00
|
||||
pp_data->cap[1]->NextBytePosition = 0x0009
|
||||
pp_data->cap[1]->LinkCollection = 0x0000
|
||||
pp_data->cap[1]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[1]->LinkUsage = 0x0006
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 1
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 1
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->Range.UsageMin = 0x0000
|
||||
pp_data->cap[1]->Range.UsageMax = 0x00DD
|
||||
pp_data->cap[1]->Range.StringMin = 0
|
||||
pp_data->cap[1]->Range.StringMax = 0
|
||||
pp_data->cap[1]->Range.DesignatorMin = 0
|
||||
pp_data->cap[1]->Range.DesignatorMax = 0
|
||||
pp_data->cap[1]->Range.DataIndexMin = 8
|
||||
pp_data->cap[1]->Range.DataIndexMax = 229
|
||||
pp_data->cap[1]->Button.LogicalMin = 0
|
||||
pp_data->cap[1]->Button.LogicalMax = 221
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
pp_data->cap[2]->UsagePage = 0x0008
|
||||
pp_data->cap[2]->ReportID = 0x00
|
||||
pp_data->cap[2]->BitPosition = 0
|
||||
pp_data->cap[2]->BitSize = 1
|
||||
pp_data->cap[2]->ReportCount = 3
|
||||
pp_data->cap[2]->BytePosition = 0x0001
|
||||
pp_data->cap[2]->BitCount = 3
|
||||
pp_data->cap[2]->BitField = 0x02
|
||||
pp_data->cap[2]->NextBytePosition = 0x0002
|
||||
pp_data->cap[2]->LinkCollection = 0x0000
|
||||
pp_data->cap[2]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[2]->LinkUsage = 0x0006
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 1
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 1
|
||||
pp_data->cap[2]->IsRange = 1
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->Range.UsageMin = 0x0001
|
||||
pp_data->cap[2]->Range.UsageMax = 0x0003
|
||||
pp_data->cap[2]->Range.StringMin = 0
|
||||
pp_data->cap[2]->Range.StringMax = 0
|
||||
pp_data->cap[2]->Range.DesignatorMin = 0
|
||||
pp_data->cap[2]->Range.DesignatorMax = 0
|
||||
pp_data->cap[2]->Range.DataIndexMin = 0
|
||||
pp_data->cap[2]->Range.DataIndexMax = 2
|
||||
pp_data->cap[2]->Button.LogicalMin = 0
|
||||
pp_data->cap[2]->Button.LogicalMax = 0
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0006
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
7
node_modules/node-hid/hidapi/windows/test/data/046A_0011_0006_0001_expected.rpt_desc
generated
vendored
Normal file
7
node_modules/node-hid/hidapi/windows/test/data/046A_0011_0006_0001_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
0x05, 0x01, 0x09, 0x06, 0xA1, 0x01, 0x05, 0x07, 0x19, 0xE0,
|
||||
0x29, 0xE7, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x08,
|
||||
0x81, 0x02, 0x75, 0x08, 0x95, 0x01, 0x81, 0x03, 0x19, 0x00,
|
||||
0x29, 0xDD, 0x15, 0x00, 0x26, 0xDD, 0x00, 0x75, 0x08, 0x95,
|
||||
0x06, 0x81, 0x00, 0x05, 0x08, 0x19, 0x01, 0x29, 0x03, 0x15,
|
||||
0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x03, 0x91, 0x02, 0x75,
|
||||
0x05, 0x95, 0x01, 0x91, 0x03, 0xC0,
|
||||
7
node_modules/node-hid/hidapi/windows/test/data/046A_0011_0006_0001_real.rpt_desc
generated
vendored
Normal file
7
node_modules/node-hid/hidapi/windows/test/data/046A_0011_0006_0001_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
0x05, 0x01, 0x09, 0x06, 0xA1, 0x01, 0x05, 0x07, 0x19, 0xE0,
|
||||
0x29, 0xE7, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x08,
|
||||
0x81, 0x02, 0x75, 0x08, 0x95, 0x01, 0x81, 0x03, 0x19, 0x00,
|
||||
0x29, 0xDD, 0x15, 0x00, 0x26, 0xDD, 0x00, 0x75, 0x08, 0x95,
|
||||
0x06, 0x81, 0x00, 0x05, 0x08, 0x19, 0x01, 0x29, 0x03, 0x15,
|
||||
0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x03, 0x91, 0x02, 0x75,
|
||||
0x05, 0x95, 0x01, 0x91, 0x03, 0xC0,
|
||||
532
node_modules/node-hid/hidapi/windows/test/data/046D_0A37_0001_000C.pp_data
generated
vendored
Normal file
532
node_modules/node-hid/hidapi/windows/test/data/046D_0A37_0001_000C.pp_data
generated
vendored
Normal file
@@ -0,0 +1,532 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0x0A37
|
||||
dev->manufacturer_string = "Logitech Inc "
|
||||
dev->product_string = "Logitech USB Headset H540"
|
||||
dev->release_number = 0x0122
|
||||
dev->interface_number = 3
|
||||
dev->usage = 0x0001
|
||||
dev->usage_page = 0x000C
|
||||
dev->path = "\\?\hid#vid_046d&pid_0a37&mi_03#8&1717f300&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0001
|
||||
pp_data->UsagePage = 0x000C
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 7
|
||||
pp_data->caps_info[0]->NumberOfCaps = 9
|
||||
pp_data->caps_info[0]->ReportByteLength = 33
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 9
|
||||
pp_data->caps_info[1]->LastCap = 12
|
||||
pp_data->caps_info[1]->NumberOfCaps = 3
|
||||
pp_data->caps_info[1]->ReportByteLength = 37
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 12
|
||||
pp_data->caps_info[2]->LastCap = 12
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x04E0
|
||||
pp_data->NumberLinkCollectionNodes = 2
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x000C
|
||||
pp_data->cap[0]->ReportID = 0x01
|
||||
pp_data->cap[0]->BitPosition = 1
|
||||
pp_data->cap[0]->BitSize = 1
|
||||
pp_data->cap[0]->ReportCount = 1
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 1
|
||||
pp_data->cap[0]->BitField = 0x02
|
||||
pp_data->cap[0]->NextBytePosition = 0x0002
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 0
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->NotRange.Usage = 0x00EA
|
||||
pp_data->cap[0]->NotRange.Reserved1 = 0x00EA
|
||||
pp_data->cap[0]->NotRange.StringIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[0]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[0]->NotRange.DataIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 0
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0x000C
|
||||
pp_data->cap[1]->ReportID = 0x01
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 1
|
||||
pp_data->cap[1]->ReportCount = 1
|
||||
pp_data->cap[1]->BytePosition = 0x0001
|
||||
pp_data->cap[1]->BitCount = 1
|
||||
pp_data->cap[1]->BitField = 0x02
|
||||
pp_data->cap[1]->NextBytePosition = 0x0002
|
||||
pp_data->cap[1]->LinkCollection = 0x0000
|
||||
pp_data->cap[1]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[1]->LinkUsage = 0x0001
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 1
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x00E9
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x00E9
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 1
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 1
|
||||
pp_data->cap[1]->Button.LogicalMin = 0
|
||||
pp_data->cap[1]->Button.LogicalMax = 0
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[2]->UsagePage = 0x000C
|
||||
pp_data->cap[2]->ReportID = 0x01
|
||||
pp_data->cap[2]->BitPosition = 2
|
||||
pp_data->cap[2]->BitSize = 1
|
||||
pp_data->cap[2]->ReportCount = 1
|
||||
pp_data->cap[2]->BytePosition = 0x0001
|
||||
pp_data->cap[2]->BitCount = 1
|
||||
pp_data->cap[2]->BitField = 0x06
|
||||
pp_data->cap[2]->NextBytePosition = 0x0002
|
||||
pp_data->cap[2]->LinkCollection = 0x0000
|
||||
pp_data->cap[2]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[2]->LinkUsage = 0x0001
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 1
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 0
|
||||
pp_data->cap[2]->IsRange = 0
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->NotRange.Usage = 0x00E2
|
||||
pp_data->cap[2]->NotRange.Reserved1 = 0x00E2
|
||||
pp_data->cap[2]->NotRange.StringIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[2]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[2]->NotRange.DataIndex = 2
|
||||
pp_data->cap[2]->NotRange.Reserved4 = 2
|
||||
pp_data->cap[2]->Button.LogicalMin = 0
|
||||
pp_data->cap[2]->Button.LogicalMax = 0
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[3]->UsagePage = 0x0009
|
||||
pp_data->cap[3]->ReportID = 0x01
|
||||
pp_data->cap[3]->BitPosition = 5
|
||||
pp_data->cap[3]->BitSize = 2
|
||||
pp_data->cap[3]->ReportCount = 1
|
||||
pp_data->cap[3]->BytePosition = 0x0001
|
||||
pp_data->cap[3]->BitCount = 2
|
||||
pp_data->cap[3]->BitField = 0x40
|
||||
pp_data->cap[3]->NextBytePosition = 0x0002
|
||||
pp_data->cap[3]->LinkCollection = 0x0001
|
||||
pp_data->cap[3]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[3]->LinkUsage = 0x0036
|
||||
pp_data->cap[3]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[3]->IsButtonCap = 1
|
||||
pp_data->cap[3]->IsPadding = 0
|
||||
pp_data->cap[3]->IsAbsolute = 1
|
||||
pp_data->cap[3]->IsRange = 1
|
||||
pp_data->cap[3]->IsAlias = 0
|
||||
pp_data->cap[3]->IsStringRange = 0
|
||||
pp_data->cap[3]->IsDesignatorRange = 0
|
||||
pp_data->cap[3]->Reserved1 = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[3]->Range.UsageMin = 0x0001
|
||||
pp_data->cap[3]->Range.UsageMax = 0x0002
|
||||
pp_data->cap[3]->Range.StringMin = 0
|
||||
pp_data->cap[3]->Range.StringMax = 0
|
||||
pp_data->cap[3]->Range.DesignatorMin = 0
|
||||
pp_data->cap[3]->Range.DesignatorMax = 0
|
||||
pp_data->cap[3]->Range.DataIndexMin = 3
|
||||
pp_data->cap[3]->Range.DataIndexMax = 4
|
||||
pp_data->cap[3]->Button.LogicalMin = 1
|
||||
pp_data->cap[3]->Button.LogicalMax = 2
|
||||
pp_data->cap[3]->Units = 0
|
||||
pp_data->cap[3]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[4]->UsagePage = 0x000C
|
||||
pp_data->cap[4]->ReportID = 0x02
|
||||
pp_data->cap[4]->BitPosition = 0
|
||||
pp_data->cap[4]->BitSize = 1
|
||||
pp_data->cap[4]->ReportCount = 16
|
||||
pp_data->cap[4]->BytePosition = 0x0001
|
||||
pp_data->cap[4]->BitCount = 16
|
||||
pp_data->cap[4]->BitField = 0x02
|
||||
pp_data->cap[4]->NextBytePosition = 0x0003
|
||||
pp_data->cap[4]->LinkCollection = 0x0000
|
||||
pp_data->cap[4]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[4]->LinkUsage = 0x0001
|
||||
pp_data->cap[4]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[4]->IsButtonCap = 1
|
||||
pp_data->cap[4]->IsPadding = 0
|
||||
pp_data->cap[4]->IsAbsolute = 1
|
||||
pp_data->cap[4]->IsRange = 0
|
||||
pp_data->cap[4]->IsAlias = 0
|
||||
pp_data->cap[4]->IsStringRange = 0
|
||||
pp_data->cap[4]->IsDesignatorRange = 0
|
||||
pp_data->cap[4]->Reserved1 = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[4]->NotRange.Usage = 0x0000
|
||||
pp_data->cap[4]->NotRange.Reserved1 = 0x0000
|
||||
pp_data->cap[4]->NotRange.StringIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[4]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[4]->NotRange.DataIndex = 5
|
||||
pp_data->cap[4]->NotRange.Reserved4 = 5
|
||||
pp_data->cap[4]->Button.LogicalMin = 0
|
||||
pp_data->cap[4]->Button.LogicalMax = 0
|
||||
pp_data->cap[4]->Units = 0
|
||||
pp_data->cap[4]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[5]->UsagePage = 0x000C
|
||||
pp_data->cap[5]->ReportID = 0x05
|
||||
pp_data->cap[5]->BitPosition = 0
|
||||
pp_data->cap[5]->BitSize = 8
|
||||
pp_data->cap[5]->ReportCount = 32
|
||||
pp_data->cap[5]->BytePosition = 0x0001
|
||||
pp_data->cap[5]->BitCount = 256
|
||||
pp_data->cap[5]->BitField = 0x02
|
||||
pp_data->cap[5]->NextBytePosition = 0x0021
|
||||
pp_data->cap[5]->LinkCollection = 0x0000
|
||||
pp_data->cap[5]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[5]->LinkUsage = 0x0001
|
||||
pp_data->cap[5]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[5]->IsButtonCap = 0
|
||||
pp_data->cap[5]->IsPadding = 0
|
||||
pp_data->cap[5]->IsAbsolute = 1
|
||||
pp_data->cap[5]->IsRange = 0
|
||||
pp_data->cap[5]->IsAlias = 0
|
||||
pp_data->cap[5]->IsStringRange = 0
|
||||
pp_data->cap[5]->IsDesignatorRange = 0
|
||||
pp_data->cap[5]->Reserved1 = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[5]->NotRange.Usage = 0x0000
|
||||
pp_data->cap[5]->NotRange.Reserved1 = 0x0000
|
||||
pp_data->cap[5]->NotRange.StringIndex = 0
|
||||
pp_data->cap[5]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[5]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[5]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[5]->NotRange.DataIndex = 6
|
||||
pp_data->cap[5]->NotRange.Reserved4 = 6
|
||||
pp_data->cap[5]->NotButton.HasNull = 0
|
||||
pp_data->cap[5]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[5]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[5]->NotButton.LogicalMax = 1
|
||||
pp_data->cap[5]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[5]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[5]->Units = 0
|
||||
pp_data->cap[5]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[6]->UsagePage = 0x000C
|
||||
pp_data->cap[6]->ReportID = 0x07
|
||||
pp_data->cap[6]->BitPosition = 0
|
||||
pp_data->cap[6]->BitSize = 8
|
||||
pp_data->cap[6]->ReportCount = 32
|
||||
pp_data->cap[6]->BytePosition = 0x0001
|
||||
pp_data->cap[6]->BitCount = 256
|
||||
pp_data->cap[6]->BitField = 0x02
|
||||
pp_data->cap[6]->NextBytePosition = 0x0021
|
||||
pp_data->cap[6]->LinkCollection = 0x0000
|
||||
pp_data->cap[6]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[6]->LinkUsage = 0x0001
|
||||
pp_data->cap[6]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[6]->IsButtonCap = 0
|
||||
pp_data->cap[6]->IsPadding = 0
|
||||
pp_data->cap[6]->IsAbsolute = 1
|
||||
pp_data->cap[6]->IsRange = 0
|
||||
pp_data->cap[6]->IsAlias = 0
|
||||
pp_data->cap[6]->IsStringRange = 0
|
||||
pp_data->cap[6]->IsDesignatorRange = 0
|
||||
pp_data->cap[6]->Reserved1 = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[6]->NotRange.Usage = 0x0000
|
||||
pp_data->cap[6]->NotRange.Reserved1 = 0x0000
|
||||
pp_data->cap[6]->NotRange.StringIndex = 0
|
||||
pp_data->cap[6]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[6]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[6]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[6]->NotRange.DataIndex = 7
|
||||
pp_data->cap[6]->NotRange.Reserved4 = 7
|
||||
pp_data->cap[6]->NotButton.HasNull = 0
|
||||
pp_data->cap[6]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[6]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[6]->NotButton.LogicalMax = 1
|
||||
pp_data->cap[6]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[6]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[6]->Units = 0
|
||||
pp_data->cap[6]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
pp_data->cap[9]->UsagePage = 0x000C
|
||||
pp_data->cap[9]->ReportID = 0x03
|
||||
pp_data->cap[9]->BitPosition = 0
|
||||
pp_data->cap[9]->BitSize = 1
|
||||
pp_data->cap[9]->ReportCount = 16
|
||||
pp_data->cap[9]->BytePosition = 0x0001
|
||||
pp_data->cap[9]->BitCount = 16
|
||||
pp_data->cap[9]->BitField = 0x02
|
||||
pp_data->cap[9]->NextBytePosition = 0x0003
|
||||
pp_data->cap[9]->LinkCollection = 0x0000
|
||||
pp_data->cap[9]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[9]->LinkUsage = 0x0001
|
||||
pp_data->cap[9]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[9]->IsButtonCap = 1
|
||||
pp_data->cap[9]->IsPadding = 0
|
||||
pp_data->cap[9]->IsAbsolute = 1
|
||||
pp_data->cap[9]->IsRange = 0
|
||||
pp_data->cap[9]->IsAlias = 0
|
||||
pp_data->cap[9]->IsStringRange = 0
|
||||
pp_data->cap[9]->IsDesignatorRange = 0
|
||||
pp_data->cap[9]->Reserved1 = 0x000000
|
||||
pp_data->cap[9]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[9]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[9]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[9]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[9]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[9]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[9]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[9]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[9]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[9]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[9]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[9]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[9]->NotRange.Usage = 0x0000
|
||||
pp_data->cap[9]->NotRange.Reserved1 = 0x0000
|
||||
pp_data->cap[9]->NotRange.StringIndex = 0
|
||||
pp_data->cap[9]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[9]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[9]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[9]->NotRange.DataIndex = 0
|
||||
pp_data->cap[9]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[9]->Button.LogicalMin = 0
|
||||
pp_data->cap[9]->Button.LogicalMax = 0
|
||||
pp_data->cap[9]->Units = 0
|
||||
pp_data->cap[9]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[10]->UsagePage = 0x000C
|
||||
pp_data->cap[10]->ReportID = 0x04
|
||||
pp_data->cap[10]->BitPosition = 0
|
||||
pp_data->cap[10]->BitSize = 8
|
||||
pp_data->cap[10]->ReportCount = 36
|
||||
pp_data->cap[10]->BytePosition = 0x0001
|
||||
pp_data->cap[10]->BitCount = 288
|
||||
pp_data->cap[10]->BitField = 0x02
|
||||
pp_data->cap[10]->NextBytePosition = 0x0025
|
||||
pp_data->cap[10]->LinkCollection = 0x0000
|
||||
pp_data->cap[10]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[10]->LinkUsage = 0x0001
|
||||
pp_data->cap[10]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[10]->IsButtonCap = 0
|
||||
pp_data->cap[10]->IsPadding = 0
|
||||
pp_data->cap[10]->IsAbsolute = 1
|
||||
pp_data->cap[10]->IsRange = 0
|
||||
pp_data->cap[10]->IsAlias = 0
|
||||
pp_data->cap[10]->IsStringRange = 0
|
||||
pp_data->cap[10]->IsDesignatorRange = 0
|
||||
pp_data->cap[10]->Reserved1 = 0x000000
|
||||
pp_data->cap[10]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[10]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[10]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[10]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[10]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[10]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[10]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[10]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[10]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[10]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[10]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[10]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[10]->NotRange.Usage = 0x0000
|
||||
pp_data->cap[10]->NotRange.Reserved1 = 0x0000
|
||||
pp_data->cap[10]->NotRange.StringIndex = 0
|
||||
pp_data->cap[10]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[10]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[10]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[10]->NotRange.DataIndex = 1
|
||||
pp_data->cap[10]->NotRange.Reserved4 = 1
|
||||
pp_data->cap[10]->NotButton.HasNull = 0
|
||||
pp_data->cap[10]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[10]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[10]->NotButton.LogicalMax = 1
|
||||
pp_data->cap[10]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[10]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[10]->Units = 0
|
||||
pp_data->cap[10]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[11]->UsagePage = 0x000C
|
||||
pp_data->cap[11]->ReportID = 0x06
|
||||
pp_data->cap[11]->BitPosition = 0
|
||||
pp_data->cap[11]->BitSize = 8
|
||||
pp_data->cap[11]->ReportCount = 36
|
||||
pp_data->cap[11]->BytePosition = 0x0001
|
||||
pp_data->cap[11]->BitCount = 288
|
||||
pp_data->cap[11]->BitField = 0x02
|
||||
pp_data->cap[11]->NextBytePosition = 0x0025
|
||||
pp_data->cap[11]->LinkCollection = 0x0000
|
||||
pp_data->cap[11]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[11]->LinkUsage = 0x0001
|
||||
pp_data->cap[11]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[11]->IsButtonCap = 0
|
||||
pp_data->cap[11]->IsPadding = 0
|
||||
pp_data->cap[11]->IsAbsolute = 1
|
||||
pp_data->cap[11]->IsRange = 0
|
||||
pp_data->cap[11]->IsAlias = 0
|
||||
pp_data->cap[11]->IsStringRange = 0
|
||||
pp_data->cap[11]->IsDesignatorRange = 0
|
||||
pp_data->cap[11]->Reserved1 = 0x000000
|
||||
pp_data->cap[11]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[11]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[11]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[11]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[11]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[11]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[11]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[11]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[11]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[11]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[11]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[11]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[11]->NotRange.Usage = 0x0000
|
||||
pp_data->cap[11]->NotRange.Reserved1 = 0x0000
|
||||
pp_data->cap[11]->NotRange.StringIndex = 0
|
||||
pp_data->cap[11]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[11]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[11]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[11]->NotRange.DataIndex = 2
|
||||
pp_data->cap[11]->NotRange.Reserved4 = 2
|
||||
pp_data->cap[11]->NotButton.HasNull = 0
|
||||
pp_data->cap[11]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[11]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[11]->NotButton.LogicalMax = 1
|
||||
pp_data->cap[11]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[11]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[11]->Units = 0
|
||||
pp_data->cap[11]->UnitsExp = 0
|
||||
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x000C
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 1
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 1
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
pp_data->LinkCollectionArray[1]->LinkUsage = 0x0036
|
||||
pp_data->LinkCollectionArray[1]->LinkUsagePage = 0x000C
|
||||
pp_data->LinkCollectionArray[1]->Parent = 0
|
||||
pp_data->LinkCollectionArray[1]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[1]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[1]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[1]->CollectionType = 2
|
||||
pp_data->LinkCollectionArray[1]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[1]->Reserved = 0x00000000
|
||||
16
node_modules/node-hid/hidapi/windows/test/data/046D_0A37_0001_000C_expected.rpt_desc
generated
vendored
Normal file
16
node_modules/node-hid/hidapi/windows/test/data/046D_0A37_0001_000C_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
0x05, 0x0C, 0x09, 0x01, 0xA1, 0x01, 0x85, 0x01, 0x09, 0xE9,
|
||||
0x09, 0xEA, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x02,
|
||||
0x81, 0x02, 0x09, 0xE2, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01,
|
||||
0x95, 0x01, 0x81, 0x06, 0x75, 0x02, 0x95, 0x01, 0x81, 0x03,
|
||||
0x09, 0x36, 0xA1, 0x02, 0x05, 0x09, 0x19, 0x01, 0x29, 0x02,
|
||||
0x15, 0x01, 0x25, 0x02, 0x75, 0x02, 0x95, 0x01, 0x81, 0x40,
|
||||
0x75, 0x01, 0x95, 0x01, 0x81, 0x03, 0xC0, 0x85, 0x02, 0x05,
|
||||
0x0C, 0x09, 0x00, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95,
|
||||
0x10, 0x81, 0x02, 0x85, 0x05, 0x09, 0x00, 0x15, 0x00, 0x25,
|
||||
0x01, 0x75, 0x08, 0x95, 0x20, 0x81, 0x02, 0x85, 0x07, 0x09,
|
||||
0x00, 0x15, 0x00, 0x25, 0x01, 0x75, 0x08, 0x95, 0x20, 0x81,
|
||||
0x02, 0x85, 0x03, 0x09, 0x00, 0x15, 0x00, 0x25, 0x01, 0x75,
|
||||
0x01, 0x95, 0x10, 0x91, 0x02, 0x85, 0x04, 0x09, 0x00, 0x15,
|
||||
0x00, 0x25, 0x01, 0x75, 0x08, 0x95, 0x24, 0x91, 0x02, 0x85,
|
||||
0x06, 0x09, 0x00, 0x15, 0x00, 0x25, 0x01, 0x75, 0x08, 0x95,
|
||||
0x24, 0x91, 0x02, 0xC0,
|
||||
61
node_modules/node-hid/hidapi/windows/test/data/046D_0A37_0001_000C_real.rpt_desc
generated
vendored
Normal file
61
node_modules/node-hid/hidapi/windows/test/data/046D_0A37_0001_000C_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,61 @@
|
||||
Usage Page (Consumer Devices) 05 0C
|
||||
Usage (Consumer Control) 09 01
|
||||
Collection (Application) A1 01
|
||||
Report ID (1) 85 01
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (1) 25 01
|
||||
Usage (Volume Increment) 09 E9
|
||||
Usage (Volume Decrement) 09 EA
|
||||
Report Size (1) 75 01
|
||||
Report Count (2) 95 02
|
||||
Input (Data,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 02
|
||||
Usage (Mute) 09 E2
|
||||
Report Count (1) 95 01
|
||||
Input (Data,Var,Rel,NWrp,Lin,Pref,NNul,Bit) 81 06
|
||||
Usage (Undefined) 09 00
|
||||
Report Count (2) 95 02
|
||||
Input (Cnst,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 03
|
||||
Usage (Function Buttons) 09 36
|
||||
Collection (Logical) A1 02
|
||||
Usage Page (Button) 05 09
|
||||
Usage Minimum (Button 1) 19 01
|
||||
Usage Maximum (Button 2) 29 02
|
||||
Report Size (2) 75 02
|
||||
Report Count (1) 95 01
|
||||
Logical Minimum (1) 15 01
|
||||
Logical Maximum (2) 25 02
|
||||
Input (Data,Ary,Abs) 81 40
|
||||
End Collection C0
|
||||
Usage Page (Consumer Devices) 05 0C
|
||||
Usage (Undefined) 09 00
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (1) 25 01
|
||||
Report Size (1) 75 01
|
||||
Report Count (1) 95 01
|
||||
Input (Cnst,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 03
|
||||
Report ID (2) 85 02
|
||||
Usage Page (Consumer Devices) 05 0C
|
||||
Usage (Undefined) 09 00
|
||||
Report Count (16) 95 10
|
||||
Input (Data,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 02
|
||||
Report ID (3) 85 03
|
||||
Usage (Undefined) 09 00
|
||||
Output (Data,Var,Abs,NWrp,Lin,Pref,NNul,NVol,Bit) 91 02
|
||||
Report ID (4) 85 04
|
||||
Usage (Undefined) 09 00
|
||||
Report Size (8) 75 08
|
||||
Report Count (36) 95 24
|
||||
Output (Data,Var,Abs,NWrp,Lin,Pref,NNul,NVol,Bit) 91 02
|
||||
Report ID (5) 85 05
|
||||
Usage (Undefined) 09 00
|
||||
Report Count (32) 95 20
|
||||
Input (Data,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 02
|
||||
Report ID (6) 85 06
|
||||
Usage (Undefined) 09 00
|
||||
Report Count (36) 95 24
|
||||
Output (Data,Var,Abs,NWrp,Lin,Pref,NNul,NVol,Bit) 91 02
|
||||
Report ID (7) 85 07
|
||||
Usage (Undefined) 09 00
|
||||
Report Count (32) 95 20
|
||||
Input (Data,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 02
|
||||
End Collection C0
|
||||
97
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0001_000C.pp_data
generated
vendored
Normal file
97
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0001_000C.pp_data
generated
vendored
Normal file
@@ -0,0 +1,97 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xB010
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "Logitech Bluetooth Wireless Mouse"
|
||||
dev->release_number = 0x0000
|
||||
dev->interface_number = -1
|
||||
dev->usage = 0x0001
|
||||
dev->usage_page = 0x000C
|
||||
dev->path = "\\?\hid#{00001124-0000-1000-8000-00805f9b34fb}_vid&0002046d_pid&b010&col02#8&1cf1c1b9&3&0001#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0001
|
||||
pp_data->UsagePage = 0x000C
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 1
|
||||
pp_data->caps_info[0]->NumberOfCaps = 1
|
||||
pp_data->caps_info[0]->ReportByteLength = 2
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 1
|
||||
pp_data->caps_info[1]->LastCap = 1
|
||||
pp_data->caps_info[1]->NumberOfCaps = 0
|
||||
pp_data->caps_info[1]->ReportByteLength = 0
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 1
|
||||
pp_data->caps_info[2]->LastCap = 1
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x0068
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x0006
|
||||
pp_data->cap[0]->ReportID = 0x03
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 8
|
||||
pp_data->cap[0]->ReportCount = 1
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 8
|
||||
pp_data->cap[0]->BitField = 0x02
|
||||
pp_data->cap[0]->NextBytePosition = 0x0002
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 0
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 0
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->NotRange.Usage = 0x0020
|
||||
pp_data->cap[0]->NotRange.Reserved1 = 0x0020
|
||||
pp_data->cap[0]->NotRange.StringIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[0]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[0]->NotRange.DataIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[0]->NotButton.HasNull = 0
|
||||
pp_data->cap[0]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[0]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[0]->NotButton.LogicalMax = 100
|
||||
pp_data->cap[0]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[0]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x000C
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
3
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0001_000C_expected.rpt_desc
generated
vendored
Normal file
3
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0001_000C_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
0x05, 0x0C, 0x09, 0x01, 0xA1, 0x01, 0x85, 0x03, 0x05, 0x06,
|
||||
0x09, 0x20, 0x15, 0x00, 0x25, 0x64, 0x75, 0x08, 0x95, 0x01,
|
||||
0x81, 0x02, 0xC0,
|
||||
38
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0001_000C_real.rpt_desc
generated
vendored
Normal file
38
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0001_000C_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
|
||||
mac-hid-dump on main ❯ ./mac-hid-dump
|
||||
mac-hid-dump:
|
||||
...
|
||||
046D B010: Unknown - Bluetooth Mouse M557
|
||||
DESCRIPTOR:
|
||||
05 01 09 02 a1 01 85 02 09 01 a1 00 05 09 19 01
|
||||
29 08 15 00 25 01 75 01 95 08 81 02 05 01 09 30
|
||||
09 31 16 01 f8 26 ff 07 75 0c 95 02 81 06 09 38
|
||||
15 81 25 7f 75 08 95 01 81 06 05 0c 0a 38 02 75
|
||||
08 95 01 81 06 c0 c0 05 0c 09 01 a1 01 85 03 05
|
||||
06 09 20 15 00 26 64 00 75 08 95 01 81 02 c0 06
|
||||
00 ff 09 01 a1 01 85 10 75 08 95 06 15 00 26 ff
|
||||
00 09 01 81 00 09 01 91 00 c0 06 00 ff 09 02 a1
|
||||
01 85 11 75 08 95 13 15 00 26 ff 00 09 02 81 00
|
||||
09 02 91 00 c0 05 01 09 06 a1 01 85 04 75 01 95
|
||||
08 05 07 19 e0 29 e7 15 00 25 01 81 02 95 01 75
|
||||
08 81 03 95 05 75 01 05 08 19 01 29 05 91 02 95
|
||||
01 75 03 91 03 95 06 75 08 15 00 26 ff 00 05 07
|
||||
19 00 29 ff 81 00 c0 05 0c 09 01 a1 01 85 05 15
|
||||
00 25 01 75 01 95 02 0a 25 02 0a 24 02 81 02 95
|
||||
01 75 06 81 03 c0
|
||||
(246 bytes)
|
||||
|
||||
Parser output:
|
||||
|
||||
0x05, 0x0C, // Usage Page (Consumer)
|
||||
0x09, 0x01, // Usage (Consumer Control)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x85, 0x03, // Report ID (3)
|
||||
0x05, 0x06, // Usage Page (Generic Dev Ctrls)
|
||||
0x09, 0x20, // Usage (Battery Strength)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x26, 0x64, 0x00, // Logical Maximum (100)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
139
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0001_FF00.pp_data
generated
vendored
Normal file
139
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0001_FF00.pp_data
generated
vendored
Normal file
@@ -0,0 +1,139 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xB010
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "Logitech Bluetooth Wireless Mouse"
|
||||
dev->release_number = 0x0000
|
||||
dev->interface_number = -1
|
||||
dev->usage = 0x0001
|
||||
dev->usage_page = 0xFF00
|
||||
dev->path = "\\?\hid#{00001124-0000-1000-8000-00805f9b34fb}_vid&0002046d_pid&b010&col03#8&1cf1c1b9&3&0002#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0001
|
||||
pp_data->UsagePage = 0xFF00
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 1
|
||||
pp_data->caps_info[0]->NumberOfCaps = 1
|
||||
pp_data->caps_info[0]->ReportByteLength = 7
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 1
|
||||
pp_data->caps_info[1]->LastCap = 2
|
||||
pp_data->caps_info[1]->NumberOfCaps = 1
|
||||
pp_data->caps_info[1]->ReportByteLength = 7
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 2
|
||||
pp_data->caps_info[2]->LastCap = 2
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x00D0
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0xFF00
|
||||
pp_data->cap[0]->ReportID = 0x10
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 8
|
||||
pp_data->cap[0]->ReportCount = 6
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 48
|
||||
pp_data->cap[0]->BitField = 0x00
|
||||
pp_data->cap[0]->NextBytePosition = 0x0007
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0xFF00
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 0
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->NotRange.Usage = 0x0001
|
||||
pp_data->cap[0]->NotRange.Reserved1 = 0x0001
|
||||
pp_data->cap[0]->NotRange.StringIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[0]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[0]->NotRange.DataIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 255
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
pp_data->cap[1]->UsagePage = 0xFF00
|
||||
pp_data->cap[1]->ReportID = 0x10
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 8
|
||||
pp_data->cap[1]->ReportCount = 6
|
||||
pp_data->cap[1]->BytePosition = 0x0001
|
||||
pp_data->cap[1]->BitCount = 48
|
||||
pp_data->cap[1]->BitField = 0x00
|
||||
pp_data->cap[1]->NextBytePosition = 0x0007
|
||||
pp_data->cap[1]->LinkCollection = 0x0000
|
||||
pp_data->cap[1]->LinkUsagePage = 0xFF00
|
||||
pp_data->cap[1]->LinkUsage = 0x0001
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 1
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0001
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0001
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[1]->Button.LogicalMin = 0
|
||||
pp_data->cap[1]->Button.LogicalMax = 255
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0xFF00
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
4
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0001_FF00_expected.rpt_desc
generated
vendored
Normal file
4
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0001_FF00_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
0x06, 0x00, 0xFF, 0x09, 0x01, 0xA1, 0x01, 0x85, 0x10, 0x09,
|
||||
0x01, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75, 0x08, 0x95, 0x06,
|
||||
0x81, 0x00, 0x09, 0x01, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x06, 0x91, 0x00, 0xC0,
|
||||
39
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0001_FF00_real.rpt_desc
generated
vendored
Normal file
39
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0001_FF00_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
|
||||
mac-hid-dump on main ❯ ./mac-hid-dump
|
||||
mac-hid-dump:
|
||||
...
|
||||
046D B010: Unknown - Bluetooth Mouse M557
|
||||
DESCRIPTOR:
|
||||
05 01 09 02 a1 01 85 02 09 01 a1 00 05 09 19 01
|
||||
29 08 15 00 25 01 75 01 95 08 81 02 05 01 09 30
|
||||
09 31 16 01 f8 26 ff 07 75 0c 95 02 81 06 09 38
|
||||
15 81 25 7f 75 08 95 01 81 06 05 0c 0a 38 02 75
|
||||
08 95 01 81 06 c0 c0 05 0c 09 01 a1 01 85 03 05
|
||||
06 09 20 15 00 26 64 00 75 08 95 01 81 02 c0 06
|
||||
00 ff 09 01 a1 01 85 10 75 08 95 06 15 00 26 ff
|
||||
00 09 01 81 00 09 01 91 00 c0 06 00 ff 09 02 a1
|
||||
01 85 11 75 08 95 13 15 00 26 ff 00 09 02 81 00
|
||||
09 02 91 00 c0 05 01 09 06 a1 01 85 04 75 01 95
|
||||
08 05 07 19 e0 29 e7 15 00 25 01 81 02 95 01 75
|
||||
08 81 03 95 05 75 01 05 08 19 01 29 05 91 02 95
|
||||
01 75 03 91 03 95 06 75 08 15 00 26 ff 00 05 07
|
||||
19 00 29 ff 81 00 c0 05 0c 09 01 a1 01 85 05 15
|
||||
00 25 01 75 01 95 02 0a 25 02 0a 24 02 81 02 95
|
||||
01 75 06 81 03 c0
|
||||
(246 bytes)
|
||||
|
||||
Parser output:
|
||||
|
||||
0x06, 0x00, 0xFF, // Usage Page (Vendor Defined 0xFF00)
|
||||
0x09, 0x01, // Usage (0x01)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x85, 0x10, // Report ID (16)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x06, // Report Count (6)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x26, 0xFF, 0x00, // Logical Maximum (255)
|
||||
0x09, 0x01, // Usage (0x01)
|
||||
0x81, 0x00, // Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x09, 0x01, // Usage (0x01)
|
||||
0x91, 0x00, // Output (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0xC0, // End Collection
|
||||
302
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0002_0001.pp_data
generated
vendored
Normal file
302
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0002_0001.pp_data
generated
vendored
Normal file
@@ -0,0 +1,302 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xB010
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "Logitech Bluetooth Wireless Mouse"
|
||||
dev->release_number = 0x0000
|
||||
dev->interface_number = -1
|
||||
dev->usage = 0x0002
|
||||
dev->usage_page = 0x0001
|
||||
dev->path = "\\?\hid#{00001124-0000-1000-8000-00805f9b34fb}_vid&0002046d_pid&b010&col01#8&1cf1c1b9&3&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0002
|
||||
pp_data->UsagePage = 0x0001
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 5
|
||||
pp_data->caps_info[0]->NumberOfCaps = 5
|
||||
pp_data->caps_info[0]->ReportByteLength = 7
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 5
|
||||
pp_data->caps_info[1]->LastCap = 5
|
||||
pp_data->caps_info[1]->NumberOfCaps = 0
|
||||
pp_data->caps_info[1]->ReportByteLength = 0
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 5
|
||||
pp_data->caps_info[2]->LastCap = 5
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x0208
|
||||
pp_data->NumberLinkCollectionNodes = 2
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x0009
|
||||
pp_data->cap[0]->ReportID = 0x02
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 1
|
||||
pp_data->cap[0]->ReportCount = 8
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 8
|
||||
pp_data->cap[0]->BitField = 0x02
|
||||
pp_data->cap[0]->NextBytePosition = 0x0002
|
||||
pp_data->cap[0]->LinkCollection = 0x0001
|
||||
pp_data->cap[0]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 1
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->Range.UsageMin = 0x0001
|
||||
pp_data->cap[0]->Range.UsageMax = 0x0008
|
||||
pp_data->cap[0]->Range.StringMin = 0
|
||||
pp_data->cap[0]->Range.StringMax = 0
|
||||
pp_data->cap[0]->Range.DesignatorMin = 0
|
||||
pp_data->cap[0]->Range.DesignatorMax = 0
|
||||
pp_data->cap[0]->Range.DataIndexMin = 0
|
||||
pp_data->cap[0]->Range.DataIndexMax = 7
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 0
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0x0001
|
||||
pp_data->cap[1]->ReportID = 0x02
|
||||
pp_data->cap[1]->BitPosition = 4
|
||||
pp_data->cap[1]->BitSize = 12
|
||||
pp_data->cap[1]->ReportCount = 1
|
||||
pp_data->cap[1]->BytePosition = 0x0003
|
||||
pp_data->cap[1]->BitCount = 12
|
||||
pp_data->cap[1]->BitField = 0x06
|
||||
pp_data->cap[1]->NextBytePosition = 0x0005
|
||||
pp_data->cap[1]->LinkCollection = 0x0001
|
||||
pp_data->cap[1]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[1]->LinkUsage = 0x0001
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 0
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 0
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0031
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0031
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 8
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 8
|
||||
pp_data->cap[1]->NotButton.HasNull = 0
|
||||
pp_data->cap[1]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[1]->NotButton.LogicalMin = -2047
|
||||
pp_data->cap[1]->NotButton.LogicalMax = 2047
|
||||
pp_data->cap[1]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[1]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[2]->UsagePage = 0x0001
|
||||
pp_data->cap[2]->ReportID = 0x02
|
||||
pp_data->cap[2]->BitPosition = 0
|
||||
pp_data->cap[2]->BitSize = 12
|
||||
pp_data->cap[2]->ReportCount = 1
|
||||
pp_data->cap[2]->BytePosition = 0x0002
|
||||
pp_data->cap[2]->BitCount = 12
|
||||
pp_data->cap[2]->BitField = 0x06
|
||||
pp_data->cap[2]->NextBytePosition = 0x0004
|
||||
pp_data->cap[2]->LinkCollection = 0x0001
|
||||
pp_data->cap[2]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[2]->LinkUsage = 0x0001
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 0
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 0
|
||||
pp_data->cap[2]->IsRange = 0
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->NotRange.Usage = 0x0030
|
||||
pp_data->cap[2]->NotRange.Reserved1 = 0x0030
|
||||
pp_data->cap[2]->NotRange.StringIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[2]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[2]->NotRange.DataIndex = 9
|
||||
pp_data->cap[2]->NotRange.Reserved4 = 9
|
||||
pp_data->cap[2]->NotButton.HasNull = 0
|
||||
pp_data->cap[2]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[2]->NotButton.LogicalMin = -2047
|
||||
pp_data->cap[2]->NotButton.LogicalMax = 2047
|
||||
pp_data->cap[2]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[2]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[3]->UsagePage = 0x0001
|
||||
pp_data->cap[3]->ReportID = 0x02
|
||||
pp_data->cap[3]->BitPosition = 0
|
||||
pp_data->cap[3]->BitSize = 8
|
||||
pp_data->cap[3]->ReportCount = 1
|
||||
pp_data->cap[3]->BytePosition = 0x0005
|
||||
pp_data->cap[3]->BitCount = 8
|
||||
pp_data->cap[3]->BitField = 0x06
|
||||
pp_data->cap[3]->NextBytePosition = 0x0006
|
||||
pp_data->cap[3]->LinkCollection = 0x0001
|
||||
pp_data->cap[3]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[3]->LinkUsage = 0x0001
|
||||
pp_data->cap[3]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[3]->IsButtonCap = 0
|
||||
pp_data->cap[3]->IsPadding = 0
|
||||
pp_data->cap[3]->IsAbsolute = 0
|
||||
pp_data->cap[3]->IsRange = 0
|
||||
pp_data->cap[3]->IsAlias = 0
|
||||
pp_data->cap[3]->IsStringRange = 0
|
||||
pp_data->cap[3]->IsDesignatorRange = 0
|
||||
pp_data->cap[3]->Reserved1 = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[3]->NotRange.Usage = 0x0038
|
||||
pp_data->cap[3]->NotRange.Reserved1 = 0x0038
|
||||
pp_data->cap[3]->NotRange.StringIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[3]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[3]->NotRange.DataIndex = 10
|
||||
pp_data->cap[3]->NotRange.Reserved4 = 10
|
||||
pp_data->cap[3]->NotButton.HasNull = 0
|
||||
pp_data->cap[3]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[3]->NotButton.LogicalMin = -127
|
||||
pp_data->cap[3]->NotButton.LogicalMax = 127
|
||||
pp_data->cap[3]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[3]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[3]->Units = 0
|
||||
pp_data->cap[3]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[4]->UsagePage = 0x000C
|
||||
pp_data->cap[4]->ReportID = 0x02
|
||||
pp_data->cap[4]->BitPosition = 0
|
||||
pp_data->cap[4]->BitSize = 8
|
||||
pp_data->cap[4]->ReportCount = 1
|
||||
pp_data->cap[4]->BytePosition = 0x0006
|
||||
pp_data->cap[4]->BitCount = 8
|
||||
pp_data->cap[4]->BitField = 0x06
|
||||
pp_data->cap[4]->NextBytePosition = 0x0007
|
||||
pp_data->cap[4]->LinkCollection = 0x0001
|
||||
pp_data->cap[4]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[4]->LinkUsage = 0x0001
|
||||
pp_data->cap[4]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[4]->IsButtonCap = 0
|
||||
pp_data->cap[4]->IsPadding = 0
|
||||
pp_data->cap[4]->IsAbsolute = 0
|
||||
pp_data->cap[4]->IsRange = 0
|
||||
pp_data->cap[4]->IsAlias = 0
|
||||
pp_data->cap[4]->IsStringRange = 0
|
||||
pp_data->cap[4]->IsDesignatorRange = 0
|
||||
pp_data->cap[4]->Reserved1 = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[4]->NotRange.Usage = 0x0238
|
||||
pp_data->cap[4]->NotRange.Reserved1 = 0x0238
|
||||
pp_data->cap[4]->NotRange.StringIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[4]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[4]->NotRange.DataIndex = 11
|
||||
pp_data->cap[4]->NotRange.Reserved4 = 11
|
||||
pp_data->cap[4]->NotButton.HasNull = 0
|
||||
pp_data->cap[4]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[4]->NotButton.LogicalMin = -127
|
||||
pp_data->cap[4]->NotButton.LogicalMax = 127
|
||||
pp_data->cap[4]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[4]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[4]->Units = 0
|
||||
pp_data->cap[4]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0002
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 1
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 1
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
pp_data->LinkCollectionArray[1]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[1]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[1]->Parent = 0
|
||||
pp_data->LinkCollectionArray[1]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[1]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[1]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[1]->CollectionType = 0
|
||||
pp_data->LinkCollectionArray[1]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[1]->Reserved = 0x00000000
|
||||
8
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0002_0001_expected.rpt_desc
generated
vendored
Normal file
8
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0002_0001_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
0x05, 0x01, 0x09, 0x02, 0xA1, 0x01, 0x09, 0x01, 0xA1, 0x00,
|
||||
0x85, 0x02, 0x05, 0x09, 0x19, 0x01, 0x29, 0x08, 0x15, 0x00,
|
||||
0x25, 0x01, 0x75, 0x01, 0x95, 0x08, 0x81, 0x02, 0x05, 0x01,
|
||||
0x09, 0x30, 0x09, 0x31, 0x16, 0x01, 0xF8, 0x26, 0xFF, 0x07,
|
||||
0x75, 0x0C, 0x95, 0x02, 0x81, 0x06, 0x09, 0x38, 0x15, 0x81,
|
||||
0x25, 0x7F, 0x75, 0x08, 0x95, 0x01, 0x81, 0x06, 0x05, 0x0C,
|
||||
0x0A, 0x38, 0x02, 0x15, 0x81, 0x25, 0x7F, 0x75, 0x08, 0x95,
|
||||
0x01, 0x81, 0x06, 0xC0, 0xC0,
|
||||
61
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0002_0001_real.rpt_desc
generated
vendored
Normal file
61
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0002_0001_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,61 @@
|
||||
|
||||
mac-hid-dump on main ❯ ./mac-hid-dump
|
||||
mac-hid-dump:
|
||||
...
|
||||
046D B010: Unknown - Bluetooth Mouse M557
|
||||
DESCRIPTOR:
|
||||
05 01 09 02 a1 01 85 02 09 01 a1 00 05 09 19 01
|
||||
29 08 15 00 25 01 75 01 95 08 81 02 05 01 09 30
|
||||
09 31 16 01 f8 26 ff 07 75 0c 95 02 81 06 09 38
|
||||
15 81 25 7f 75 08 95 01 81 06 05 0c 0a 38 02 75
|
||||
08 95 01 81 06 c0 c0 05 0c 09 01 a1 01 85 03 05
|
||||
06 09 20 15 00 26 64 00 75 08 95 01 81 02 c0 06
|
||||
00 ff 09 01 a1 01 85 10 75 08 95 06 15 00 26 ff
|
||||
00 09 01 81 00 09 01 91 00 c0 06 00 ff 09 02 a1
|
||||
01 85 11 75 08 95 13 15 00 26 ff 00 09 02 81 00
|
||||
09 02 91 00 c0 05 01 09 06 a1 01 85 04 75 01 95
|
||||
08 05 07 19 e0 29 e7 15 00 25 01 81 02 95 01 75
|
||||
08 81 03 95 05 75 01 05 08 19 01 29 05 91 02 95
|
||||
01 75 03 91 03 95 06 75 08 15 00 26 ff 00 05 07
|
||||
19 00 29 ff 81 00 c0 05 0c 09 01 a1 01 85 05 15
|
||||
00 25 01 75 01 95 02 0a 25 02 0a 24 02 81 02 95
|
||||
01 75 06 81 03 c0
|
||||
(246 bytes)
|
||||
|
||||
Parser output:
|
||||
|
||||
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
|
||||
0x09, 0x02, // Usage (Mouse)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x85, 0x02, // Report ID (2)
|
||||
0x09, 0x01, // Usage (Pointer)
|
||||
0xA1, 0x00, // Collection (Physical)
|
||||
0x05, 0x09, // Usage Page (Button)
|
||||
0x19, 0x01, // Usage Minimum (0x01)
|
||||
0x29, 0x08, // Usage Maximum (0x08)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x25, 0x01, // Logical Maximum (1)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x08, // Report Count (8)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
|
||||
0x09, 0x30, // Usage (X)
|
||||
0x09, 0x31, // Usage (Y)
|
||||
0x16, 0x01, 0xF8, // Logical Minimum (-2047)
|
||||
0x26, 0xFF, 0x07, // Logical Maximum (2047)
|
||||
0x75, 0x0C, // Report Size (12)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x81, 0x06, // Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x09, 0x38, // Usage (Wheel)
|
||||
0x15, 0x81, // Logical Minimum (-127)
|
||||
0x25, 0x7F, // Logical Maximum (127)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x81, 0x06, // Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x05, 0x0C, // Usage Page (Consumer)
|
||||
0x0A, 0x38, 0x02, // Usage (AC Pan)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x81, 0x06, // Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
0xC0, // End Collection
|
||||
139
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0002_FF00.pp_data
generated
vendored
Normal file
139
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0002_FF00.pp_data
generated
vendored
Normal file
@@ -0,0 +1,139 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xB010
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "Logitech Bluetooth Wireless Mouse"
|
||||
dev->release_number = 0x0000
|
||||
dev->interface_number = -1
|
||||
dev->usage = 0x0002
|
||||
dev->usage_page = 0xFF00
|
||||
dev->path = "\\?\hid#{00001124-0000-1000-8000-00805f9b34fb}_vid&0002046d_pid&b010&col04#8&1cf1c1b9&3&0003#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0002
|
||||
pp_data->UsagePage = 0xFF00
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 1
|
||||
pp_data->caps_info[0]->NumberOfCaps = 1
|
||||
pp_data->caps_info[0]->ReportByteLength = 20
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 1
|
||||
pp_data->caps_info[1]->LastCap = 2
|
||||
pp_data->caps_info[1]->NumberOfCaps = 1
|
||||
pp_data->caps_info[1]->ReportByteLength = 20
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 2
|
||||
pp_data->caps_info[2]->LastCap = 2
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x00D0
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0xFF00
|
||||
pp_data->cap[0]->ReportID = 0x11
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 8
|
||||
pp_data->cap[0]->ReportCount = 19
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 152
|
||||
pp_data->cap[0]->BitField = 0x00
|
||||
pp_data->cap[0]->NextBytePosition = 0x0014
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0xFF00
|
||||
pp_data->cap[0]->LinkUsage = 0x0002
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 0
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->NotRange.Usage = 0x0002
|
||||
pp_data->cap[0]->NotRange.Reserved1 = 0x0002
|
||||
pp_data->cap[0]->NotRange.StringIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[0]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[0]->NotRange.DataIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 255
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
pp_data->cap[1]->UsagePage = 0xFF00
|
||||
pp_data->cap[1]->ReportID = 0x11
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 8
|
||||
pp_data->cap[1]->ReportCount = 19
|
||||
pp_data->cap[1]->BytePosition = 0x0001
|
||||
pp_data->cap[1]->BitCount = 152
|
||||
pp_data->cap[1]->BitField = 0x00
|
||||
pp_data->cap[1]->NextBytePosition = 0x0014
|
||||
pp_data->cap[1]->LinkCollection = 0x0000
|
||||
pp_data->cap[1]->LinkUsagePage = 0xFF00
|
||||
pp_data->cap[1]->LinkUsage = 0x0002
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 1
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0002
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0002
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[1]->Button.LogicalMin = 0
|
||||
pp_data->cap[1]->Button.LogicalMax = 255
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0002
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0xFF00
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
4
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0002_FF00_expected.rpt_desc
generated
vendored
Normal file
4
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0002_FF00_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
0x06, 0x00, 0xFF, 0x09, 0x02, 0xA1, 0x01, 0x85, 0x11, 0x09,
|
||||
0x02, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75, 0x08, 0x95, 0x13,
|
||||
0x81, 0x00, 0x09, 0x02, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x13, 0x91, 0x00, 0xC0,
|
||||
39
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0002_FF00_real.rpt_desc
generated
vendored
Normal file
39
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0002_FF00_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
|
||||
mac-hid-dump on main ❯ ./mac-hid-dump
|
||||
mac-hid-dump:
|
||||
...
|
||||
046D B010: Unknown - Bluetooth Mouse M557
|
||||
DESCRIPTOR:
|
||||
05 01 09 02 a1 01 85 02 09 01 a1 00 05 09 19 01
|
||||
29 08 15 00 25 01 75 01 95 08 81 02 05 01 09 30
|
||||
09 31 16 01 f8 26 ff 07 75 0c 95 02 81 06 09 38
|
||||
15 81 25 7f 75 08 95 01 81 06 05 0c 0a 38 02 75
|
||||
08 95 01 81 06 c0 c0 05 0c 09 01 a1 01 85 03 05
|
||||
06 09 20 15 00 26 64 00 75 08 95 01 81 02 c0 06
|
||||
00 ff 09 01 a1 01 85 10 75 08 95 06 15 00 26 ff
|
||||
00 09 01 81 00 09 01 91 00 c0 06 00 ff 09 02 a1
|
||||
01 85 11 75 08 95 13 15 00 26 ff 00 09 02 81 00
|
||||
09 02 91 00 c0 05 01 09 06 a1 01 85 04 75 01 95
|
||||
08 05 07 19 e0 29 e7 15 00 25 01 81 02 95 01 75
|
||||
08 81 03 95 05 75 01 05 08 19 01 29 05 91 02 95
|
||||
01 75 03 91 03 95 06 75 08 15 00 26 ff 00 05 07
|
||||
19 00 29 ff 81 00 c0 05 0c 09 01 a1 01 85 05 15
|
||||
00 25 01 75 01 95 02 0a 25 02 0a 24 02 81 02 95
|
||||
01 75 06 81 03 c0
|
||||
(246 bytes)
|
||||
|
||||
Parser output:
|
||||
|
||||
0x06, 0x00, 0xFF, // Usage Page (Vendor Defined 0xFF00)
|
||||
0x09, 0x02, // Usage (0x02)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x85, 0x11, // Report ID (17)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x13, // Report Count (19)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x26, 0xFF, 0x00, // Logical Maximum (255)
|
||||
0x09, 0x02, // Usage (0x02)
|
||||
0x81, 0x00, // Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x09, 0x02, // Usage (0x02)
|
||||
0x91, 0x00, // Output (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0xC0, // End Collection
|
||||
185
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0006_0001.pp_data
generated
vendored
Normal file
185
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0006_0001.pp_data
generated
vendored
Normal file
@@ -0,0 +1,185 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xB010
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "Logitech Bluetooth Wireless Mouse"
|
||||
dev->release_number = 0x0000
|
||||
dev->interface_number = -1
|
||||
dev->usage = 0x0006
|
||||
dev->usage_page = 0x0001
|
||||
dev->path = "\\?\hid#{00001124-0000-1000-8000-00805f9b34fb}_vid&0002046d_pid&b010&col05#8&1cf1c1b9&3&0004#{4d1e55b2-f16f-11cf-88cb-001111000030}\kbd"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0006
|
||||
pp_data->UsagePage = 0x0001
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 2
|
||||
pp_data->caps_info[0]->NumberOfCaps = 2
|
||||
pp_data->caps_info[0]->ReportByteLength = 9
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 2
|
||||
pp_data->caps_info[1]->LastCap = 3
|
||||
pp_data->caps_info[1]->NumberOfCaps = 1
|
||||
pp_data->caps_info[1]->ReportByteLength = 2
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 3
|
||||
pp_data->caps_info[2]->LastCap = 3
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x0138
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x0007
|
||||
pp_data->cap[0]->ReportID = 0x04
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 1
|
||||
pp_data->cap[0]->ReportCount = 8
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 8
|
||||
pp_data->cap[0]->BitField = 0x02
|
||||
pp_data->cap[0]->NextBytePosition = 0x0002
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[0]->LinkUsage = 0x0006
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 1
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->Range.UsageMin = 0x00E0
|
||||
pp_data->cap[0]->Range.UsageMax = 0x00E7
|
||||
pp_data->cap[0]->Range.StringMin = 0
|
||||
pp_data->cap[0]->Range.StringMax = 0
|
||||
pp_data->cap[0]->Range.DesignatorMin = 0
|
||||
pp_data->cap[0]->Range.DesignatorMax = 0
|
||||
pp_data->cap[0]->Range.DataIndexMin = 0
|
||||
pp_data->cap[0]->Range.DataIndexMax = 7
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 0
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0x0007
|
||||
pp_data->cap[1]->ReportID = 0x04
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 8
|
||||
pp_data->cap[1]->ReportCount = 6
|
||||
pp_data->cap[1]->BytePosition = 0x0003
|
||||
pp_data->cap[1]->BitCount = 48
|
||||
pp_data->cap[1]->BitField = 0x00
|
||||
pp_data->cap[1]->NextBytePosition = 0x0009
|
||||
pp_data->cap[1]->LinkCollection = 0x0000
|
||||
pp_data->cap[1]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[1]->LinkUsage = 0x0006
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 1
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 1
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->Range.UsageMin = 0x0000
|
||||
pp_data->cap[1]->Range.UsageMax = 0x00FF
|
||||
pp_data->cap[1]->Range.StringMin = 0
|
||||
pp_data->cap[1]->Range.StringMax = 0
|
||||
pp_data->cap[1]->Range.DesignatorMin = 0
|
||||
pp_data->cap[1]->Range.DesignatorMax = 0
|
||||
pp_data->cap[1]->Range.DataIndexMin = 8
|
||||
pp_data->cap[1]->Range.DataIndexMax = 263
|
||||
pp_data->cap[1]->Button.LogicalMin = 0
|
||||
pp_data->cap[1]->Button.LogicalMax = 255
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
pp_data->cap[2]->UsagePage = 0x0008
|
||||
pp_data->cap[2]->ReportID = 0x04
|
||||
pp_data->cap[2]->BitPosition = 0
|
||||
pp_data->cap[2]->BitSize = 1
|
||||
pp_data->cap[2]->ReportCount = 5
|
||||
pp_data->cap[2]->BytePosition = 0x0001
|
||||
pp_data->cap[2]->BitCount = 5
|
||||
pp_data->cap[2]->BitField = 0x02
|
||||
pp_data->cap[2]->NextBytePosition = 0x0002
|
||||
pp_data->cap[2]->LinkCollection = 0x0000
|
||||
pp_data->cap[2]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[2]->LinkUsage = 0x0006
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 1
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 1
|
||||
pp_data->cap[2]->IsRange = 1
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->Range.UsageMin = 0x0001
|
||||
pp_data->cap[2]->Range.UsageMax = 0x0005
|
||||
pp_data->cap[2]->Range.StringMin = 0
|
||||
pp_data->cap[2]->Range.StringMax = 0
|
||||
pp_data->cap[2]->Range.DesignatorMin = 0
|
||||
pp_data->cap[2]->Range.DesignatorMax = 0
|
||||
pp_data->cap[2]->Range.DataIndexMin = 0
|
||||
pp_data->cap[2]->Range.DataIndexMax = 4
|
||||
pp_data->cap[2]->Button.LogicalMin = 0
|
||||
pp_data->cap[2]->Button.LogicalMax = 0
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0006
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
7
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0006_0001_expected.rpt_desc
generated
vendored
Normal file
7
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0006_0001_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
0x05, 0x01, 0x09, 0x06, 0xA1, 0x01, 0x85, 0x04, 0x05, 0x07,
|
||||
0x19, 0xE0, 0x29, 0xE7, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01,
|
||||
0x95, 0x08, 0x81, 0x02, 0x75, 0x08, 0x95, 0x01, 0x81, 0x03,
|
||||
0x19, 0x00, 0x29, 0xFF, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x06, 0x81, 0x00, 0x05, 0x08, 0x19, 0x01, 0x29,
|
||||
0x05, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x05, 0x91,
|
||||
0x02, 0x75, 0x03, 0x95, 0x01, 0x91, 0x03, 0xC0,
|
||||
58
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0006_0001_real.rpt_desc
generated
vendored
Normal file
58
node_modules/node-hid/hidapi/windows/test/data/046D_B010_0006_0001_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,58 @@
|
||||
|
||||
mac-hid-dump on main ❯ ./mac-hid-dump
|
||||
mac-hid-dump:
|
||||
...
|
||||
046D B010: Unknown - Bluetooth Mouse M557
|
||||
DESCRIPTOR:
|
||||
05 01 09 02 a1 01 85 02 09 01 a1 00 05 09 19 01
|
||||
29 08 15 00 25 01 75 01 95 08 81 02 05 01 09 30
|
||||
09 31 16 01 f8 26 ff 07 75 0c 95 02 81 06 09 38
|
||||
15 81 25 7f 75 08 95 01 81 06 05 0c 0a 38 02 75
|
||||
08 95 01 81 06 c0 c0 05 0c 09 01 a1 01 85 03 05
|
||||
06 09 20 15 00 26 64 00 75 08 95 01 81 02 c0 06
|
||||
00 ff 09 01 a1 01 85 10 75 08 95 06 15 00 26 ff
|
||||
00 09 01 81 00 09 01 91 00 c0 06 00 ff 09 02 a1
|
||||
01 85 11 75 08 95 13 15 00 26 ff 00 09 02 81 00
|
||||
09 02 91 00 c0 05 01 09 06 a1 01 85 04 75 01 95
|
||||
08 05 07 19 e0 29 e7 15 00 25 01 81 02 95 01 75
|
||||
08 81 03 95 05 75 01 05 08 19 01 29 05 91 02 95
|
||||
01 75 03 91 03 95 06 75 08 15 00 26 ff 00 05 07
|
||||
19 00 29 ff 81 00 c0 05 0c 09 01 a1 01 85 05 15
|
||||
00 25 01 75 01 95 02 0a 25 02 0a 24 02 81 02 95
|
||||
01 75 06 81 03 c0
|
||||
(246 bytes)
|
||||
|
||||
Parser output:
|
||||
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
|
||||
0x09, 0x06, // Usage (Keyboard)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x85, 0x04, // Report ID (4)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x08, // Report Count (8)
|
||||
0x05, 0x07, // Usage Page (Kbrd/Keypad)
|
||||
0x19, 0xE0, // Usage Minimum (0xE0)
|
||||
0x29, 0xE7, // Usage Maximum (0xE7)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x25, 0x01, // Logical Maximum (1)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x95, 0x05, // Report Count (5)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x05, 0x08, // Usage Page (LEDs)
|
||||
0x19, 0x01, // Usage Minimum (Num Lock)
|
||||
0x29, 0x05, // Usage Maximum (Kana)
|
||||
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x75, 0x03, // Report Size (3)
|
||||
0x91, 0x03, // Output (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x06, // Report Count (6)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x26, 0xFF, 0x00, // Logical Maximum (255)
|
||||
0x05, 0x07, // Usage Page (Kbrd/Keypad)
|
||||
0x19, 0x00, // Usage Minimum (0x00)
|
||||
0x29, 0xFF, // Usage Maximum (0xFF)
|
||||
0x81, 0x00, // Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
252
node_modules/node-hid/hidapi/windows/test/data/046D_C077_0002_0001.pp_data
generated
vendored
Normal file
252
node_modules/node-hid/hidapi/windows/test/data/046D_C077_0002_0001.pp_data
generated
vendored
Normal file
@@ -0,0 +1,252 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xC077
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "USB Optical Mouse"
|
||||
dev->release_number = 0x7200
|
||||
dev->interface_number = -1
|
||||
dev->usage = 0x0002
|
||||
dev->usage_page = 0x0001
|
||||
dev->path = "\\?\hid#vid_046d&pid_c077#7&1875dbae&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0002
|
||||
pp_data->UsagePage = 0x0001
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 4
|
||||
pp_data->caps_info[0]->NumberOfCaps = 4
|
||||
pp_data->caps_info[0]->ReportByteLength = 5
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 4
|
||||
pp_data->caps_info[1]->LastCap = 4
|
||||
pp_data->caps_info[1]->NumberOfCaps = 0
|
||||
pp_data->caps_info[1]->ReportByteLength = 0
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 4
|
||||
pp_data->caps_info[2]->LastCap = 4
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x01A0
|
||||
pp_data->NumberLinkCollectionNodes = 2
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x0009
|
||||
pp_data->cap[0]->ReportID = 0x00
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 1
|
||||
pp_data->cap[0]->ReportCount = 8
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 8
|
||||
pp_data->cap[0]->BitField = 0x02
|
||||
pp_data->cap[0]->NextBytePosition = 0x0002
|
||||
pp_data->cap[0]->LinkCollection = 0x0001
|
||||
pp_data->cap[0]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 1
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->Range.UsageMin = 0x0001
|
||||
pp_data->cap[0]->Range.UsageMax = 0x0003
|
||||
pp_data->cap[0]->Range.StringMin = 0
|
||||
pp_data->cap[0]->Range.StringMax = 0
|
||||
pp_data->cap[0]->Range.DesignatorMin = 0
|
||||
pp_data->cap[0]->Range.DesignatorMax = 0
|
||||
pp_data->cap[0]->Range.DataIndexMin = 0
|
||||
pp_data->cap[0]->Range.DataIndexMax = 2
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 0
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0x0001
|
||||
pp_data->cap[1]->ReportID = 0x00
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 8
|
||||
pp_data->cap[1]->ReportCount = 1
|
||||
pp_data->cap[1]->BytePosition = 0x0004
|
||||
pp_data->cap[1]->BitCount = 8
|
||||
pp_data->cap[1]->BitField = 0x06
|
||||
pp_data->cap[1]->NextBytePosition = 0x0005
|
||||
pp_data->cap[1]->LinkCollection = 0x0001
|
||||
pp_data->cap[1]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[1]->LinkUsage = 0x0001
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 0
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 0
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0038
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0038
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 3
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 3
|
||||
pp_data->cap[1]->NotButton.HasNull = 0
|
||||
pp_data->cap[1]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[1]->NotButton.LogicalMin = -127
|
||||
pp_data->cap[1]->NotButton.LogicalMax = 127
|
||||
pp_data->cap[1]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[1]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[2]->UsagePage = 0x0001
|
||||
pp_data->cap[2]->ReportID = 0x00
|
||||
pp_data->cap[2]->BitPosition = 0
|
||||
pp_data->cap[2]->BitSize = 8
|
||||
pp_data->cap[2]->ReportCount = 1
|
||||
pp_data->cap[2]->BytePosition = 0x0003
|
||||
pp_data->cap[2]->BitCount = 8
|
||||
pp_data->cap[2]->BitField = 0x06
|
||||
pp_data->cap[2]->NextBytePosition = 0x0004
|
||||
pp_data->cap[2]->LinkCollection = 0x0001
|
||||
pp_data->cap[2]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[2]->LinkUsage = 0x0001
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 0
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 0
|
||||
pp_data->cap[2]->IsRange = 0
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->NotRange.Usage = 0x0031
|
||||
pp_data->cap[2]->NotRange.Reserved1 = 0x0031
|
||||
pp_data->cap[2]->NotRange.StringIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[2]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[2]->NotRange.DataIndex = 4
|
||||
pp_data->cap[2]->NotRange.Reserved4 = 4
|
||||
pp_data->cap[2]->NotButton.HasNull = 0
|
||||
pp_data->cap[2]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[2]->NotButton.LogicalMin = -127
|
||||
pp_data->cap[2]->NotButton.LogicalMax = 127
|
||||
pp_data->cap[2]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[2]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[3]->UsagePage = 0x0001
|
||||
pp_data->cap[3]->ReportID = 0x00
|
||||
pp_data->cap[3]->BitPosition = 0
|
||||
pp_data->cap[3]->BitSize = 8
|
||||
pp_data->cap[3]->ReportCount = 1
|
||||
pp_data->cap[3]->BytePosition = 0x0002
|
||||
pp_data->cap[3]->BitCount = 8
|
||||
pp_data->cap[3]->BitField = 0x06
|
||||
pp_data->cap[3]->NextBytePosition = 0x0003
|
||||
pp_data->cap[3]->LinkCollection = 0x0001
|
||||
pp_data->cap[3]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[3]->LinkUsage = 0x0001
|
||||
pp_data->cap[3]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[3]->IsButtonCap = 0
|
||||
pp_data->cap[3]->IsPadding = 0
|
||||
pp_data->cap[3]->IsAbsolute = 0
|
||||
pp_data->cap[3]->IsRange = 0
|
||||
pp_data->cap[3]->IsAlias = 0
|
||||
pp_data->cap[3]->IsStringRange = 0
|
||||
pp_data->cap[3]->IsDesignatorRange = 0
|
||||
pp_data->cap[3]->Reserved1 = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[3]->NotRange.Usage = 0x0030
|
||||
pp_data->cap[3]->NotRange.Reserved1 = 0x0030
|
||||
pp_data->cap[3]->NotRange.StringIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[3]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[3]->NotRange.DataIndex = 5
|
||||
pp_data->cap[3]->NotRange.Reserved4 = 5
|
||||
pp_data->cap[3]->NotButton.HasNull = 0
|
||||
pp_data->cap[3]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[3]->NotButton.LogicalMin = -127
|
||||
pp_data->cap[3]->NotButton.LogicalMax = 127
|
||||
pp_data->cap[3]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[3]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[3]->Units = 0
|
||||
pp_data->cap[3]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0002
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 1
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 1
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
pp_data->LinkCollectionArray[1]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[1]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[1]->Parent = 0
|
||||
pp_data->LinkCollectionArray[1]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[1]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[1]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[1]->CollectionType = 0
|
||||
pp_data->LinkCollectionArray[1]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[1]->Reserved = 0x00000000
|
||||
5
node_modules/node-hid/hidapi/windows/test/data/046D_C077_0002_0001_expected.rpt_desc
generated
vendored
Normal file
5
node_modules/node-hid/hidapi/windows/test/data/046D_C077_0002_0001_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
0x05, 0x01, 0x09, 0x02, 0xA1, 0x01, 0x09, 0x01, 0xA1, 0x00,
|
||||
0x05, 0x09, 0x19, 0x01, 0x29, 0x03, 0x15, 0x00, 0x25, 0x01,
|
||||
0x75, 0x01, 0x95, 0x08, 0x81, 0x02, 0x05, 0x01, 0x09, 0x30,
|
||||
0x09, 0x31, 0x09, 0x38, 0x15, 0x81, 0x25, 0x7F, 0x75, 0x08,
|
||||
0x95, 0x03, 0x81, 0x06, 0xC0, 0xC0,
|
||||
24
node_modules/node-hid/hidapi/windows/test/data/046D_C077_0002_0001_real.rpt_desc
generated
vendored
Normal file
24
node_modules/node-hid/hidapi/windows/test/data/046D_C077_0002_0001_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
Usage Page (Generic Desktop) 05 01
|
||||
Usage (Mouse) 09 02
|
||||
Collection (Application) A1 01
|
||||
Usage (Pointer) 09 01
|
||||
Collection (Physical) A1 00
|
||||
Usage Page (Button) 05 09
|
||||
Usage Minimum (Button 1) 19 01
|
||||
Usage Maximum (Button 3) 29 03
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (1) 25 01
|
||||
Report Count (8) 95 08
|
||||
Report Size (1) 75 01
|
||||
Input (Data,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 02
|
||||
Usage Page (Generic Desktop) 05 01
|
||||
Usage (X) 09 30
|
||||
Usage (Y) 09 31
|
||||
Usage (Wheel) 09 38
|
||||
Logical Minimum (-127) 15 81
|
||||
Logical Maximum (127) 25 7F
|
||||
Report Size (8) 75 08
|
||||
Report Count (3) 95 03
|
||||
Input (Data,Var,Rel,NWrp,Lin,Pref,NNul,Bit) 81 06
|
||||
End Collection C0
|
||||
End Collection C0
|
||||
520
node_modules/node-hid/hidapi/windows/test/data/046D_C283_0004_0001.pp_data
generated
vendored
Normal file
520
node_modules/node-hid/hidapi/windows/test/data/046D_C283_0004_0001.pp_data
generated
vendored
Normal file
@@ -0,0 +1,520 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xC283
|
||||
dev->manufacturer_string = "Logitech Inc."
|
||||
dev->product_string = "WingMan Force 3D"
|
||||
dev->release_number = 0x0106
|
||||
dev->interface_number = -1
|
||||
dev->usage = 0x0004
|
||||
dev->usage_page = 0x0001
|
||||
dev->path = "\\?\hid#vid_046d&pid_c283#7&d7fb4bf&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0004
|
||||
pp_data->UsagePage = 0x0001
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 8
|
||||
pp_data->caps_info[0]->NumberOfCaps = 8
|
||||
pp_data->caps_info[0]->ReportByteLength = 8
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 8
|
||||
pp_data->caps_info[1]->LastCap = 9
|
||||
pp_data->caps_info[1]->NumberOfCaps = 1
|
||||
pp_data->caps_info[1]->ReportByteLength = 9
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 9
|
||||
pp_data->caps_info[2]->LastCap = 9
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x03A8
|
||||
pp_data->NumberLinkCollectionNodes = 4
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x0001
|
||||
pp_data->cap[0]->ReportID = 0x00
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 8
|
||||
pp_data->cap[0]->ReportCount = 1
|
||||
pp_data->cap[0]->BytePosition = 0x0002
|
||||
pp_data->cap[0]->BitCount = 8
|
||||
pp_data->cap[0]->BitField = 0x02
|
||||
pp_data->cap[0]->NextBytePosition = 0x0003
|
||||
pp_data->cap[0]->LinkCollection = 0x0002
|
||||
pp_data->cap[0]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 0
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 0
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->NotRange.Usage = 0x0031
|
||||
pp_data->cap[0]->NotRange.Reserved1 = 0x0031
|
||||
pp_data->cap[0]->NotRange.StringIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[0]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[0]->NotRange.DataIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[0]->NotButton.HasNull = 0
|
||||
pp_data->cap[0]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[0]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[0]->NotButton.LogicalMax = 255
|
||||
pp_data->cap[0]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[0]->NotButton.PhysicalMax = 255
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0x0001
|
||||
pp_data->cap[1]->ReportID = 0x00
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 8
|
||||
pp_data->cap[1]->ReportCount = 1
|
||||
pp_data->cap[1]->BytePosition = 0x0001
|
||||
pp_data->cap[1]->BitCount = 8
|
||||
pp_data->cap[1]->BitField = 0x02
|
||||
pp_data->cap[1]->NextBytePosition = 0x0002
|
||||
pp_data->cap[1]->LinkCollection = 0x0002
|
||||
pp_data->cap[1]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[1]->LinkUsage = 0x0001
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 0
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0030
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0030
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 1
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 1
|
||||
pp_data->cap[1]->NotButton.HasNull = 0
|
||||
pp_data->cap[1]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[1]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[1]->NotButton.LogicalMax = 255
|
||||
pp_data->cap[1]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[1]->NotButton.PhysicalMax = 255
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[2]->UsagePage = 0xFF00
|
||||
pp_data->cap[2]->ReportID = 0x00
|
||||
pp_data->cap[2]->BitPosition = 0
|
||||
pp_data->cap[2]->BitSize = 4
|
||||
pp_data->cap[2]->ReportCount = 1
|
||||
pp_data->cap[2]->BytePosition = 0x0003
|
||||
pp_data->cap[2]->BitCount = 4
|
||||
pp_data->cap[2]->BitField = 0x02
|
||||
pp_data->cap[2]->NextBytePosition = 0x0004
|
||||
pp_data->cap[2]->LinkCollection = 0x0002
|
||||
pp_data->cap[2]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[2]->LinkUsage = 0x0001
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 0
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 1
|
||||
pp_data->cap[2]->IsRange = 0
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->NotRange.Usage = 0x0001
|
||||
pp_data->cap[2]->NotRange.Reserved1 = 0x0001
|
||||
pp_data->cap[2]->NotRange.StringIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[2]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[2]->NotRange.DataIndex = 2
|
||||
pp_data->cap[2]->NotRange.Reserved4 = 2
|
||||
pp_data->cap[2]->NotButton.HasNull = 0
|
||||
pp_data->cap[2]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[2]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[2]->NotButton.LogicalMax = 15
|
||||
pp_data->cap[2]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[2]->NotButton.PhysicalMax = 255
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[3]->UsagePage = 0x0001
|
||||
pp_data->cap[3]->ReportID = 0x00
|
||||
pp_data->cap[3]->BitPosition = 4
|
||||
pp_data->cap[3]->BitSize = 4
|
||||
pp_data->cap[3]->ReportCount = 1
|
||||
pp_data->cap[3]->BytePosition = 0x0003
|
||||
pp_data->cap[3]->BitCount = 4
|
||||
pp_data->cap[3]->BitField = 0x42
|
||||
pp_data->cap[3]->NextBytePosition = 0x0004
|
||||
pp_data->cap[3]->LinkCollection = 0x0002
|
||||
pp_data->cap[3]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[3]->LinkUsage = 0x0001
|
||||
pp_data->cap[3]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[3]->IsButtonCap = 0
|
||||
pp_data->cap[3]->IsPadding = 0
|
||||
pp_data->cap[3]->IsAbsolute = 1
|
||||
pp_data->cap[3]->IsRange = 0
|
||||
pp_data->cap[3]->IsAlias = 0
|
||||
pp_data->cap[3]->IsStringRange = 0
|
||||
pp_data->cap[3]->IsDesignatorRange = 0
|
||||
pp_data->cap[3]->Reserved1 = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[3]->NotRange.Usage = 0x0039
|
||||
pp_data->cap[3]->NotRange.Reserved1 = 0x0039
|
||||
pp_data->cap[3]->NotRange.StringIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[3]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[3]->NotRange.DataIndex = 3
|
||||
pp_data->cap[3]->NotRange.Reserved4 = 3
|
||||
pp_data->cap[3]->NotButton.HasNull = 1
|
||||
pp_data->cap[3]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[3]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[3]->NotButton.LogicalMax = 7
|
||||
pp_data->cap[3]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[3]->NotButton.PhysicalMax = 315
|
||||
pp_data->cap[3]->Units = 20
|
||||
pp_data->cap[3]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[4]->UsagePage = 0x0001
|
||||
pp_data->cap[4]->ReportID = 0x00
|
||||
pp_data->cap[4]->BitPosition = 0
|
||||
pp_data->cap[4]->BitSize = 8
|
||||
pp_data->cap[4]->ReportCount = 1
|
||||
pp_data->cap[4]->BytePosition = 0x0004
|
||||
pp_data->cap[4]->BitCount = 8
|
||||
pp_data->cap[4]->BitField = 0x02
|
||||
pp_data->cap[4]->NextBytePosition = 0x0005
|
||||
pp_data->cap[4]->LinkCollection = 0x0002
|
||||
pp_data->cap[4]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[4]->LinkUsage = 0x0001
|
||||
pp_data->cap[4]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[4]->IsButtonCap = 0
|
||||
pp_data->cap[4]->IsPadding = 0
|
||||
pp_data->cap[4]->IsAbsolute = 1
|
||||
pp_data->cap[4]->IsRange = 0
|
||||
pp_data->cap[4]->IsAlias = 0
|
||||
pp_data->cap[4]->IsStringRange = 0
|
||||
pp_data->cap[4]->IsDesignatorRange = 0
|
||||
pp_data->cap[4]->Reserved1 = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[4]->NotRange.Usage = 0x0035
|
||||
pp_data->cap[4]->NotRange.Reserved1 = 0x0035
|
||||
pp_data->cap[4]->NotRange.StringIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[4]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[4]->NotRange.DataIndex = 4
|
||||
pp_data->cap[4]->NotRange.Reserved4 = 4
|
||||
pp_data->cap[4]->NotButton.HasNull = 0
|
||||
pp_data->cap[4]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[4]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[4]->NotButton.LogicalMax = 255
|
||||
pp_data->cap[4]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[4]->NotButton.PhysicalMax = 255
|
||||
pp_data->cap[4]->Units = 20
|
||||
pp_data->cap[4]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[5]->UsagePage = 0x0009
|
||||
pp_data->cap[5]->ReportID = 0x00
|
||||
pp_data->cap[5]->BitPosition = 0
|
||||
pp_data->cap[5]->BitSize = 1
|
||||
pp_data->cap[5]->ReportCount = 7
|
||||
pp_data->cap[5]->BytePosition = 0x0005
|
||||
pp_data->cap[5]->BitCount = 7
|
||||
pp_data->cap[5]->BitField = 0x02
|
||||
pp_data->cap[5]->NextBytePosition = 0x0006
|
||||
pp_data->cap[5]->LinkCollection = 0x0001
|
||||
pp_data->cap[5]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[5]->LinkUsage = 0x0000
|
||||
pp_data->cap[5]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[5]->IsButtonCap = 1
|
||||
pp_data->cap[5]->IsPadding = 0
|
||||
pp_data->cap[5]->IsAbsolute = 1
|
||||
pp_data->cap[5]->IsRange = 1
|
||||
pp_data->cap[5]->IsAlias = 0
|
||||
pp_data->cap[5]->IsStringRange = 0
|
||||
pp_data->cap[5]->IsDesignatorRange = 0
|
||||
pp_data->cap[5]->Reserved1 = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[5]->Range.UsageMin = 0x0001
|
||||
pp_data->cap[5]->Range.UsageMax = 0x0007
|
||||
pp_data->cap[5]->Range.StringMin = 0
|
||||
pp_data->cap[5]->Range.StringMax = 0
|
||||
pp_data->cap[5]->Range.DesignatorMin = 0
|
||||
pp_data->cap[5]->Range.DesignatorMax = 0
|
||||
pp_data->cap[5]->Range.DataIndexMin = 5
|
||||
pp_data->cap[5]->Range.DataIndexMax = 11
|
||||
pp_data->cap[5]->Button.LogicalMin = 0
|
||||
pp_data->cap[5]->Button.LogicalMax = 0
|
||||
pp_data->cap[5]->Units = 0
|
||||
pp_data->cap[5]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[6]->UsagePage = 0x0001
|
||||
pp_data->cap[6]->ReportID = 0x00
|
||||
pp_data->cap[6]->BitPosition = 0
|
||||
pp_data->cap[6]->BitSize = 8
|
||||
pp_data->cap[6]->ReportCount = 1
|
||||
pp_data->cap[6]->BytePosition = 0x0006
|
||||
pp_data->cap[6]->BitCount = 8
|
||||
pp_data->cap[6]->BitField = 0x02
|
||||
pp_data->cap[6]->NextBytePosition = 0x0007
|
||||
pp_data->cap[6]->LinkCollection = 0x0001
|
||||
pp_data->cap[6]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[6]->LinkUsage = 0x0000
|
||||
pp_data->cap[6]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[6]->IsButtonCap = 0
|
||||
pp_data->cap[6]->IsPadding = 0
|
||||
pp_data->cap[6]->IsAbsolute = 1
|
||||
pp_data->cap[6]->IsRange = 0
|
||||
pp_data->cap[6]->IsAlias = 0
|
||||
pp_data->cap[6]->IsStringRange = 0
|
||||
pp_data->cap[6]->IsDesignatorRange = 0
|
||||
pp_data->cap[6]->Reserved1 = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[6]->NotRange.Usage = 0x0036
|
||||
pp_data->cap[6]->NotRange.Reserved1 = 0x0036
|
||||
pp_data->cap[6]->NotRange.StringIndex = 0
|
||||
pp_data->cap[6]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[6]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[6]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[6]->NotRange.DataIndex = 12
|
||||
pp_data->cap[6]->NotRange.Reserved4 = 12
|
||||
pp_data->cap[6]->NotButton.HasNull = 0
|
||||
pp_data->cap[6]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[6]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[6]->NotButton.LogicalMax = 255
|
||||
pp_data->cap[6]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[6]->NotButton.PhysicalMax = 255
|
||||
pp_data->cap[6]->Units = 0
|
||||
pp_data->cap[6]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[7]->UsagePage = 0xFF00
|
||||
pp_data->cap[7]->ReportID = 0x00
|
||||
pp_data->cap[7]->BitPosition = 0
|
||||
pp_data->cap[7]->BitSize = 8
|
||||
pp_data->cap[7]->ReportCount = 1
|
||||
pp_data->cap[7]->BytePosition = 0x0007
|
||||
pp_data->cap[7]->BitCount = 8
|
||||
pp_data->cap[7]->BitField = 0x02
|
||||
pp_data->cap[7]->NextBytePosition = 0x0008
|
||||
pp_data->cap[7]->LinkCollection = 0x0001
|
||||
pp_data->cap[7]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[7]->LinkUsage = 0x0000
|
||||
pp_data->cap[7]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[7]->IsButtonCap = 0
|
||||
pp_data->cap[7]->IsPadding = 0
|
||||
pp_data->cap[7]->IsAbsolute = 1
|
||||
pp_data->cap[7]->IsRange = 0
|
||||
pp_data->cap[7]->IsAlias = 0
|
||||
pp_data->cap[7]->IsStringRange = 0
|
||||
pp_data->cap[7]->IsDesignatorRange = 0
|
||||
pp_data->cap[7]->Reserved1 = 0x000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[7]->NotRange.Usage = 0x0001
|
||||
pp_data->cap[7]->NotRange.Reserved1 = 0x0001
|
||||
pp_data->cap[7]->NotRange.StringIndex = 0
|
||||
pp_data->cap[7]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[7]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[7]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[7]->NotRange.DataIndex = 13
|
||||
pp_data->cap[7]->NotRange.Reserved4 = 13
|
||||
pp_data->cap[7]->NotButton.HasNull = 0
|
||||
pp_data->cap[7]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[7]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[7]->NotButton.LogicalMax = 255
|
||||
pp_data->cap[7]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[7]->NotButton.PhysicalMax = 255
|
||||
pp_data->cap[7]->Units = 0
|
||||
pp_data->cap[7]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
pp_data->cap[8]->UsagePage = 0xFF00
|
||||
pp_data->cap[8]->ReportID = 0x00
|
||||
pp_data->cap[8]->BitPosition = 0
|
||||
pp_data->cap[8]->BitSize = 8
|
||||
pp_data->cap[8]->ReportCount = 8
|
||||
pp_data->cap[8]->BytePosition = 0x0001
|
||||
pp_data->cap[8]->BitCount = 64
|
||||
pp_data->cap[8]->BitField = 0x02
|
||||
pp_data->cap[8]->NextBytePosition = 0x0009
|
||||
pp_data->cap[8]->LinkCollection = 0x0003
|
||||
pp_data->cap[8]->LinkUsagePage = 0xFF00
|
||||
pp_data->cap[8]->LinkUsage = 0x0000
|
||||
pp_data->cap[8]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[8]->IsButtonCap = 0
|
||||
pp_data->cap[8]->IsPadding = 0
|
||||
pp_data->cap[8]->IsAbsolute = 1
|
||||
pp_data->cap[8]->IsRange = 0
|
||||
pp_data->cap[8]->IsAlias = 0
|
||||
pp_data->cap[8]->IsStringRange = 0
|
||||
pp_data->cap[8]->IsDesignatorRange = 0
|
||||
pp_data->cap[8]->Reserved1 = 0x000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[8]->NotRange.Usage = 0x0002
|
||||
pp_data->cap[8]->NotRange.Reserved1 = 0x0002
|
||||
pp_data->cap[8]->NotRange.StringIndex = 0
|
||||
pp_data->cap[8]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[8]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[8]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[8]->NotRange.DataIndex = 0
|
||||
pp_data->cap[8]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[8]->NotButton.HasNull = 0
|
||||
pp_data->cap[8]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[8]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[8]->NotButton.LogicalMax = 255
|
||||
pp_data->cap[8]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[8]->NotButton.PhysicalMax = 255
|
||||
pp_data->cap[8]->Units = 0
|
||||
pp_data->cap[8]->UnitsExp = 0
|
||||
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0004
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 2
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 3
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
pp_data->LinkCollectionArray[1]->LinkUsage = 0x0000
|
||||
pp_data->LinkCollectionArray[1]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[1]->Parent = 0
|
||||
pp_data->LinkCollectionArray[1]->NumberOfChildren = 1
|
||||
pp_data->LinkCollectionArray[1]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[1]->FirstChild = 2
|
||||
pp_data->LinkCollectionArray[1]->CollectionType = 2
|
||||
pp_data->LinkCollectionArray[1]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[1]->Reserved = 0x00000000
|
||||
pp_data->LinkCollectionArray[2]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[2]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[2]->Parent = 1
|
||||
pp_data->LinkCollectionArray[2]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[2]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[2]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[2]->CollectionType = 0
|
||||
pp_data->LinkCollectionArray[2]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[2]->Reserved = 0x00000000
|
||||
pp_data->LinkCollectionArray[3]->LinkUsage = 0x0000
|
||||
pp_data->LinkCollectionArray[3]->LinkUsagePage = 0xFF00
|
||||
pp_data->LinkCollectionArray[3]->Parent = 0
|
||||
pp_data->LinkCollectionArray[3]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[3]->NextSibling = 1
|
||||
pp_data->LinkCollectionArray[3]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[3]->CollectionType = 2
|
||||
pp_data->LinkCollectionArray[3]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[3]->Reserved = 0x00000000
|
||||
18
node_modules/node-hid/hidapi/windows/test/data/046D_C283_0004_0001_expected.rpt_desc
generated
vendored
Normal file
18
node_modules/node-hid/hidapi/windows/test/data/046D_C283_0004_0001_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
0x05, 0x01, 0x09, 0x04, 0xA1, 0x01, 0x09, 0x00, 0xA1, 0x02,
|
||||
0x09, 0x01, 0xA1, 0x00, 0x09, 0x30, 0x09, 0x31, 0x15, 0x00,
|
||||
0x26, 0xFF, 0x00, 0x35, 0x00, 0x46, 0xFF, 0x00, 0x75, 0x08,
|
||||
0x95, 0x02, 0x81, 0x02, 0x06, 0x00, 0xFF, 0x09, 0x01, 0x15,
|
||||
0x00, 0x25, 0x0F, 0x75, 0x04, 0x95, 0x01, 0x81, 0x02, 0x05,
|
||||
0x01, 0x09, 0x39, 0x15, 0x00, 0x25, 0x07, 0x35, 0x00, 0x46,
|
||||
0x3B, 0x01, 0x65, 0x14, 0x75, 0x04, 0x95, 0x01, 0x81, 0x42,
|
||||
0x09, 0x35, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x35, 0x00, 0x46,
|
||||
0xFF, 0x00, 0x75, 0x08, 0x95, 0x01, 0x81, 0x02, 0xC0, 0x05,
|
||||
0x09, 0x19, 0x01, 0x29, 0x07, 0x15, 0x00, 0x25, 0x01, 0x75,
|
||||
0x01, 0x95, 0x07, 0x45, 0x00, 0x65, 0x00, 0x81, 0x02, 0x75,
|
||||
0x01, 0x95, 0x01, 0x81, 0x03, 0x05, 0x01, 0x09, 0x36, 0x15,
|
||||
0x00, 0x26, 0xFF, 0x00, 0x35, 0x00, 0x46, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x01, 0x81, 0x02, 0x06, 0x00, 0xFF, 0x09, 0x01,
|
||||
0x15, 0x00, 0x26, 0xFF, 0x00, 0x75, 0x08, 0x95, 0x01, 0x81,
|
||||
0x02, 0xC0, 0x09, 0x00, 0xA1, 0x02, 0x09, 0x02, 0x15, 0x00,
|
||||
0x26, 0xFF, 0x00, 0x75, 0x08, 0x95, 0x08, 0x91, 0x02, 0xC0,
|
||||
0xC0,
|
||||
18
node_modules/node-hid/hidapi/windows/test/data/046D_C283_0004_0001_real.rpt_desc
generated
vendored
Normal file
18
node_modules/node-hid/hidapi/windows/test/data/046D_C283_0004_0001_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
0x05, 0x01, 0x09, 0x04, 0xA1, 0x01, 0x09, 0x00, 0xA1, 0x02,
|
||||
0x09, 0x01, 0xA1, 0x00, 0x09, 0x30, 0x09, 0x31, 0x15, 0x00,
|
||||
0x26, 0xFF, 0x00, 0x35, 0x00, 0x46, 0xFF, 0x00, 0x75, 0x08,
|
||||
0x95, 0x02, 0x81, 0x02, 0x06, 0x00, 0xFF, 0x09, 0x01, 0x15,
|
||||
0x00, 0x25, 0x0F, 0x75, 0x04, 0x95, 0x01, 0x81, 0x02, 0x05,
|
||||
0x01, 0x09, 0x39, 0x15, 0x00, 0x25, 0x07, 0x35, 0x00, 0x46,
|
||||
0x3B, 0x01, 0x65, 0x14, 0x75, 0x04, 0x95, 0x01, 0x81, 0x42,
|
||||
0x09, 0x35, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x35, 0x00, 0x46,
|
||||
0xFF, 0x00, 0x75, 0x08, 0x95, 0x01, 0x81, 0x02, 0xC0, 0x05,
|
||||
0x09, 0x19, 0x01, 0x29, 0x07, 0x15, 0x00, 0x25, 0x01, 0x75,
|
||||
0x01, 0x95, 0x07, 0x45, 0x00, 0x65, 0x00, 0x81, 0x02, 0x75,
|
||||
0x01, 0x95, 0x01, 0x81, 0x03, 0x05, 0x01, 0x09, 0x36, 0x15,
|
||||
0x00, 0x26, 0xFF, 0x00, 0x35, 0x00, 0x46, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x01, 0x81, 0x02, 0x06, 0x00, 0xFF, 0x09, 0x01,
|
||||
0x15, 0x00, 0x26, 0xFF, 0x00, 0x75, 0x08, 0x95, 0x01, 0x81,
|
||||
0x02, 0xC0, 0x09, 0x00, 0xA1, 0x02, 0x09, 0x02, 0x15, 0x00,
|
||||
0x26, 0xFF, 0x00, 0x75, 0x08, 0x95, 0x08, 0x91, 0x02, 0xC0,
|
||||
0xC0,
|
||||
93
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0001_000C.pp_data
generated
vendored
Normal file
93
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0001_000C.pp_data
generated
vendored
Normal file
@@ -0,0 +1,93 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xC52F
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "USB Receiver"
|
||||
dev->release_number = 0x2200
|
||||
dev->interface_number = 1
|
||||
dev->usage = 0x0001
|
||||
dev->usage_page = 0x000C
|
||||
dev->path = "\\?\hid#vid_046d&pid_c52f&mi_01&col01#8&28ca146b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0001
|
||||
pp_data->UsagePage = 0x000C
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 1
|
||||
pp_data->caps_info[0]->NumberOfCaps = 1
|
||||
pp_data->caps_info[0]->ReportByteLength = 5
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 1
|
||||
pp_data->caps_info[1]->LastCap = 1
|
||||
pp_data->caps_info[1]->NumberOfCaps = 0
|
||||
pp_data->caps_info[1]->ReportByteLength = 0
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 1
|
||||
pp_data->caps_info[2]->LastCap = 1
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x0068
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x000C
|
||||
pp_data->cap[0]->ReportID = 0x03
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 16
|
||||
pp_data->cap[0]->ReportCount = 2
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 32
|
||||
pp_data->cap[0]->BitField = 0x00
|
||||
pp_data->cap[0]->NextBytePosition = 0x0005
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 1
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->Range.UsageMin = 0x0001
|
||||
pp_data->cap[0]->Range.UsageMax = 0x028C
|
||||
pp_data->cap[0]->Range.StringMin = 0
|
||||
pp_data->cap[0]->Range.StringMax = 0
|
||||
pp_data->cap[0]->Range.DesignatorMin = 0
|
||||
pp_data->cap[0]->Range.DesignatorMax = 0
|
||||
pp_data->cap[0]->Range.DataIndexMin = 0
|
||||
pp_data->cap[0]->Range.DataIndexMax = 651
|
||||
pp_data->cap[0]->Button.LogicalMin = 1
|
||||
pp_data->cap[0]->Button.LogicalMax = 652
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x000C
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
3
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0001_000C_expected.rpt_desc
generated
vendored
Normal file
3
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0001_000C_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
0x05, 0x0C, 0x09, 0x01, 0xA1, 0x01, 0x85, 0x03, 0x19, 0x01,
|
||||
0x2A, 0x8C, 0x02, 0x15, 0x01, 0x26, 0x8C, 0x02, 0x75, 0x10,
|
||||
0x95, 0x02, 0x81, 0x00, 0xC0,
|
||||
12
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0001_000C_real.rpt_desc
generated
vendored
Normal file
12
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0001_000C_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
Usage Page (Consumer Devices) 05 0C
|
||||
Usage (Consumer Control) 09 01
|
||||
Collection (Application) A1 01
|
||||
Report ID (3) 85 03
|
||||
Report Size (16) 75 10
|
||||
Report Count (2) 95 02
|
||||
Logical Minimum (1) 15 01
|
||||
Logical Maximum (652) 26 8C 02
|
||||
Usage Minimum (Consumer Control) 19 01
|
||||
Usage Maximum (AC Send) 2A 8C 02
|
||||
Input (Data,Ary,Abs) 81 00
|
||||
End Collection C0
|
||||
139
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0001_FF00.pp_data
generated
vendored
Normal file
139
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0001_FF00.pp_data
generated
vendored
Normal file
@@ -0,0 +1,139 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xC52F
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "USB Receiver"
|
||||
dev->release_number = 0x2200
|
||||
dev->interface_number = 1
|
||||
dev->usage = 0x0001
|
||||
dev->usage_page = 0xFF00
|
||||
dev->path = "\\?\hid#vid_046d&pid_c52f&mi_01&col02#8&28ca146b&0&0001#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0001
|
||||
pp_data->UsagePage = 0xFF00
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 1
|
||||
pp_data->caps_info[0]->NumberOfCaps = 1
|
||||
pp_data->caps_info[0]->ReportByteLength = 7
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 1
|
||||
pp_data->caps_info[1]->LastCap = 2
|
||||
pp_data->caps_info[1]->NumberOfCaps = 1
|
||||
pp_data->caps_info[1]->ReportByteLength = 7
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 2
|
||||
pp_data->caps_info[2]->LastCap = 2
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x00D0
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0xFF00
|
||||
pp_data->cap[0]->ReportID = 0x10
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 8
|
||||
pp_data->cap[0]->ReportCount = 6
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 48
|
||||
pp_data->cap[0]->BitField = 0x00
|
||||
pp_data->cap[0]->NextBytePosition = 0x0007
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0xFF00
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 0
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->NotRange.Usage = 0x0001
|
||||
pp_data->cap[0]->NotRange.Reserved1 = 0x0001
|
||||
pp_data->cap[0]->NotRange.StringIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[0]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[0]->NotRange.DataIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 255
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
pp_data->cap[1]->UsagePage = 0xFF00
|
||||
pp_data->cap[1]->ReportID = 0x10
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 8
|
||||
pp_data->cap[1]->ReportCount = 6
|
||||
pp_data->cap[1]->BytePosition = 0x0001
|
||||
pp_data->cap[1]->BitCount = 48
|
||||
pp_data->cap[1]->BitField = 0x00
|
||||
pp_data->cap[1]->NextBytePosition = 0x0007
|
||||
pp_data->cap[1]->LinkCollection = 0x0000
|
||||
pp_data->cap[1]->LinkUsagePage = 0xFF00
|
||||
pp_data->cap[1]->LinkUsage = 0x0001
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 1
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0001
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0001
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[1]->Button.LogicalMin = 0
|
||||
pp_data->cap[1]->Button.LogicalMax = 255
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0xFF00
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
4
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0001_FF00_expected.rpt_desc
generated
vendored
Normal file
4
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0001_FF00_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
0x06, 0x00, 0xFF, 0x09, 0x01, 0xA1, 0x01, 0x85, 0x10, 0x09,
|
||||
0x01, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75, 0x08, 0x95, 0x06,
|
||||
0x81, 0x00, 0x09, 0x01, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x06, 0x91, 0x00, 0xC0,
|
||||
13
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0001_FF00_real.rpt_desc
generated
vendored
Normal file
13
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0001_FF00_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
Usage Page (Vendor-Defined 1) 06 00 FF
|
||||
Usage (Vendor-Defined 1) 09 01
|
||||
Collection (Application) A1 01
|
||||
Report ID (16) 85 10
|
||||
Report Size (8) 75 08
|
||||
Report Count (6) 95 06
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (255) 26 FF 00
|
||||
Usage (Vendor-Defined 1) 09 01
|
||||
Input (Data,Ary,Abs) 81 00
|
||||
Usage (Vendor-Defined 1) 09 01
|
||||
Output (Data,Ary,Abs,NWrp,Lin,Pref,NNul,NVol,Bit) 91 00
|
||||
End Collection C0
|
||||
302
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0002_0001.pp_data
generated
vendored
Normal file
302
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0002_0001.pp_data
generated
vendored
Normal file
@@ -0,0 +1,302 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xC52F
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "USB Receiver"
|
||||
dev->release_number = 0x2200
|
||||
dev->interface_number = 0
|
||||
dev->usage = 0x0002
|
||||
dev->usage_page = 0x0001
|
||||
dev->path = "\\?\hid#vid_046d&pid_c52f&mi_00#8&1599f82d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0002
|
||||
pp_data->UsagePage = 0x0001
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 5
|
||||
pp_data->caps_info[0]->NumberOfCaps = 5
|
||||
pp_data->caps_info[0]->ReportByteLength = 9
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 5
|
||||
pp_data->caps_info[1]->LastCap = 5
|
||||
pp_data->caps_info[1]->NumberOfCaps = 0
|
||||
pp_data->caps_info[1]->ReportByteLength = 0
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 5
|
||||
pp_data->caps_info[2]->LastCap = 5
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x0208
|
||||
pp_data->NumberLinkCollectionNodes = 2
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x0009
|
||||
pp_data->cap[0]->ReportID = 0x00
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 1
|
||||
pp_data->cap[0]->ReportCount = 16
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 16
|
||||
pp_data->cap[0]->BitField = 0x02
|
||||
pp_data->cap[0]->NextBytePosition = 0x0003
|
||||
pp_data->cap[0]->LinkCollection = 0x0001
|
||||
pp_data->cap[0]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 1
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->Range.UsageMin = 0x0001
|
||||
pp_data->cap[0]->Range.UsageMax = 0x0010
|
||||
pp_data->cap[0]->Range.StringMin = 0
|
||||
pp_data->cap[0]->Range.StringMax = 0
|
||||
pp_data->cap[0]->Range.DesignatorMin = 0
|
||||
pp_data->cap[0]->Range.DesignatorMax = 0
|
||||
pp_data->cap[0]->Range.DataIndexMin = 0
|
||||
pp_data->cap[0]->Range.DataIndexMax = 15
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 0
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0x0001
|
||||
pp_data->cap[1]->ReportID = 0x00
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 16
|
||||
pp_data->cap[1]->ReportCount = 1
|
||||
pp_data->cap[1]->BytePosition = 0x0005
|
||||
pp_data->cap[1]->BitCount = 16
|
||||
pp_data->cap[1]->BitField = 0x06
|
||||
pp_data->cap[1]->NextBytePosition = 0x0007
|
||||
pp_data->cap[1]->LinkCollection = 0x0001
|
||||
pp_data->cap[1]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[1]->LinkUsage = 0x0001
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 0
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 0
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0031
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0031
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 16
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 16
|
||||
pp_data->cap[1]->NotButton.HasNull = 0
|
||||
pp_data->cap[1]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[1]->NotButton.LogicalMin = -32767
|
||||
pp_data->cap[1]->NotButton.LogicalMax = 32767
|
||||
pp_data->cap[1]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[1]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[2]->UsagePage = 0x0001
|
||||
pp_data->cap[2]->ReportID = 0x00
|
||||
pp_data->cap[2]->BitPosition = 0
|
||||
pp_data->cap[2]->BitSize = 16
|
||||
pp_data->cap[2]->ReportCount = 1
|
||||
pp_data->cap[2]->BytePosition = 0x0003
|
||||
pp_data->cap[2]->BitCount = 16
|
||||
pp_data->cap[2]->BitField = 0x06
|
||||
pp_data->cap[2]->NextBytePosition = 0x0005
|
||||
pp_data->cap[2]->LinkCollection = 0x0001
|
||||
pp_data->cap[2]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[2]->LinkUsage = 0x0001
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 0
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 0
|
||||
pp_data->cap[2]->IsRange = 0
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->NotRange.Usage = 0x0030
|
||||
pp_data->cap[2]->NotRange.Reserved1 = 0x0030
|
||||
pp_data->cap[2]->NotRange.StringIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[2]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[2]->NotRange.DataIndex = 17
|
||||
pp_data->cap[2]->NotRange.Reserved4 = 17
|
||||
pp_data->cap[2]->NotButton.HasNull = 0
|
||||
pp_data->cap[2]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[2]->NotButton.LogicalMin = -32767
|
||||
pp_data->cap[2]->NotButton.LogicalMax = 32767
|
||||
pp_data->cap[2]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[2]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[3]->UsagePage = 0x0001
|
||||
pp_data->cap[3]->ReportID = 0x00
|
||||
pp_data->cap[3]->BitPosition = 0
|
||||
pp_data->cap[3]->BitSize = 8
|
||||
pp_data->cap[3]->ReportCount = 1
|
||||
pp_data->cap[3]->BytePosition = 0x0007
|
||||
pp_data->cap[3]->BitCount = 8
|
||||
pp_data->cap[3]->BitField = 0x06
|
||||
pp_data->cap[3]->NextBytePosition = 0x0008
|
||||
pp_data->cap[3]->LinkCollection = 0x0001
|
||||
pp_data->cap[3]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[3]->LinkUsage = 0x0001
|
||||
pp_data->cap[3]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[3]->IsButtonCap = 0
|
||||
pp_data->cap[3]->IsPadding = 0
|
||||
pp_data->cap[3]->IsAbsolute = 0
|
||||
pp_data->cap[3]->IsRange = 0
|
||||
pp_data->cap[3]->IsAlias = 0
|
||||
pp_data->cap[3]->IsStringRange = 0
|
||||
pp_data->cap[3]->IsDesignatorRange = 0
|
||||
pp_data->cap[3]->Reserved1 = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[3]->NotRange.Usage = 0x0038
|
||||
pp_data->cap[3]->NotRange.Reserved1 = 0x0038
|
||||
pp_data->cap[3]->NotRange.StringIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[3]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[3]->NotRange.DataIndex = 18
|
||||
pp_data->cap[3]->NotRange.Reserved4 = 18
|
||||
pp_data->cap[3]->NotButton.HasNull = 0
|
||||
pp_data->cap[3]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[3]->NotButton.LogicalMin = -127
|
||||
pp_data->cap[3]->NotButton.LogicalMax = 127
|
||||
pp_data->cap[3]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[3]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[3]->Units = 0
|
||||
pp_data->cap[3]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[4]->UsagePage = 0x000C
|
||||
pp_data->cap[4]->ReportID = 0x00
|
||||
pp_data->cap[4]->BitPosition = 0
|
||||
pp_data->cap[4]->BitSize = 8
|
||||
pp_data->cap[4]->ReportCount = 1
|
||||
pp_data->cap[4]->BytePosition = 0x0008
|
||||
pp_data->cap[4]->BitCount = 8
|
||||
pp_data->cap[4]->BitField = 0x06
|
||||
pp_data->cap[4]->NextBytePosition = 0x0009
|
||||
pp_data->cap[4]->LinkCollection = 0x0001
|
||||
pp_data->cap[4]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[4]->LinkUsage = 0x0001
|
||||
pp_data->cap[4]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[4]->IsButtonCap = 0
|
||||
pp_data->cap[4]->IsPadding = 0
|
||||
pp_data->cap[4]->IsAbsolute = 0
|
||||
pp_data->cap[4]->IsRange = 0
|
||||
pp_data->cap[4]->IsAlias = 0
|
||||
pp_data->cap[4]->IsStringRange = 0
|
||||
pp_data->cap[4]->IsDesignatorRange = 0
|
||||
pp_data->cap[4]->Reserved1 = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[4]->NotRange.Usage = 0x0238
|
||||
pp_data->cap[4]->NotRange.Reserved1 = 0x0238
|
||||
pp_data->cap[4]->NotRange.StringIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[4]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[4]->NotRange.DataIndex = 19
|
||||
pp_data->cap[4]->NotRange.Reserved4 = 19
|
||||
pp_data->cap[4]->NotButton.HasNull = 0
|
||||
pp_data->cap[4]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[4]->NotButton.LogicalMin = -127
|
||||
pp_data->cap[4]->NotButton.LogicalMax = 127
|
||||
pp_data->cap[4]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[4]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[4]->Units = 0
|
||||
pp_data->cap[4]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0002
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 1
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 1
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
pp_data->LinkCollectionArray[1]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[1]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[1]->Parent = 0
|
||||
pp_data->LinkCollectionArray[1]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[1]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[1]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[1]->CollectionType = 0
|
||||
pp_data->LinkCollectionArray[1]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[1]->Reserved = 0x00000000
|
||||
8
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0002_0001_expected.rpt_desc
generated
vendored
Normal file
8
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0002_0001_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
0x05, 0x01, 0x09, 0x02, 0xA1, 0x01, 0x09, 0x01, 0xA1, 0x00,
|
||||
0x05, 0x09, 0x19, 0x01, 0x29, 0x10, 0x15, 0x00, 0x25, 0x01,
|
||||
0x75, 0x01, 0x95, 0x10, 0x81, 0x02, 0x05, 0x01, 0x09, 0x30,
|
||||
0x09, 0x31, 0x16, 0x01, 0x80, 0x26, 0xFF, 0x7F, 0x75, 0x10,
|
||||
0x95, 0x02, 0x81, 0x06, 0x09, 0x38, 0x15, 0x81, 0x25, 0x7F,
|
||||
0x75, 0x08, 0x95, 0x01, 0x81, 0x06, 0x05, 0x0C, 0x0A, 0x38,
|
||||
0x02, 0x15, 0x81, 0x25, 0x7F, 0x75, 0x08, 0x95, 0x01, 0x81,
|
||||
0x06, 0xC0, 0xC0,
|
||||
33
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0002_0001_real.rpt_desc
generated
vendored
Normal file
33
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0002_0001_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
Usage Page (Generic Desktop) 05 01
|
||||
Usage (Mouse) 09 02
|
||||
Collection (Application) A1 01
|
||||
Usage (Pointer) 09 01
|
||||
Collection (Physical) A1 00
|
||||
Usage Page (Button) 05 09
|
||||
Usage Minimum (Button 1) 19 01
|
||||
Usage Maximum (Button 16) 29 10
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (1) 25 01
|
||||
Report Count (16) 95 10
|
||||
Report Size (1) 75 01
|
||||
Input (Data,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 02
|
||||
Usage Page (Generic Desktop) 05 01
|
||||
Logical Minimum (-32767) 16 01 80
|
||||
Logical Maximum (32767) 26 FF 7F
|
||||
Report Size (16) 75 10
|
||||
Report Count (2) 95 02
|
||||
Usage (X) 09 30
|
||||
Usage (Y) 09 31
|
||||
Input (Data,Var,Rel,NWrp,Lin,Pref,NNul,Bit) 81 06
|
||||
Logical Minimum (-127) 15 81
|
||||
Logical Maximum (127) 25 7F
|
||||
Report Size (8) 75 08
|
||||
Report Count (1) 95 01
|
||||
Usage (Wheel) 09 38
|
||||
Input (Data,Var,Rel,NWrp,Lin,Pref,NNul,Bit) 81 06
|
||||
Usage Page (Consumer Devices) 05 0C
|
||||
Usage (AC Pan) 0A 38 02
|
||||
Report Count (1) 95 01
|
||||
Input (Data,Var,Rel,NWrp,Lin,Pref,NNul,Bit) 81 06
|
||||
End Collection C0
|
||||
End Collection C0
|
||||
139
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0002_FF00.pp_data
generated
vendored
Normal file
139
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0002_FF00.pp_data
generated
vendored
Normal file
@@ -0,0 +1,139 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xC52F
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "USB Receiver"
|
||||
dev->release_number = 0x2200
|
||||
dev->interface_number = 1
|
||||
dev->usage = 0x0002
|
||||
dev->usage_page = 0xFF00
|
||||
dev->path = "\\?\hid#vid_046d&pid_c52f&mi_01&col03#8&28ca146b&0&0002#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0002
|
||||
pp_data->UsagePage = 0xFF00
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 1
|
||||
pp_data->caps_info[0]->NumberOfCaps = 1
|
||||
pp_data->caps_info[0]->ReportByteLength = 20
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 1
|
||||
pp_data->caps_info[1]->LastCap = 2
|
||||
pp_data->caps_info[1]->NumberOfCaps = 1
|
||||
pp_data->caps_info[1]->ReportByteLength = 20
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 2
|
||||
pp_data->caps_info[2]->LastCap = 2
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x00D0
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0xFF00
|
||||
pp_data->cap[0]->ReportID = 0x11
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 8
|
||||
pp_data->cap[0]->ReportCount = 19
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 152
|
||||
pp_data->cap[0]->BitField = 0x00
|
||||
pp_data->cap[0]->NextBytePosition = 0x0014
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0xFF00
|
||||
pp_data->cap[0]->LinkUsage = 0x0002
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 0
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->NotRange.Usage = 0x0002
|
||||
pp_data->cap[0]->NotRange.Reserved1 = 0x0002
|
||||
pp_data->cap[0]->NotRange.StringIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[0]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[0]->NotRange.DataIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 255
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
pp_data->cap[1]->UsagePage = 0xFF00
|
||||
pp_data->cap[1]->ReportID = 0x11
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 8
|
||||
pp_data->cap[1]->ReportCount = 19
|
||||
pp_data->cap[1]->BytePosition = 0x0001
|
||||
pp_data->cap[1]->BitCount = 152
|
||||
pp_data->cap[1]->BitField = 0x00
|
||||
pp_data->cap[1]->NextBytePosition = 0x0014
|
||||
pp_data->cap[1]->LinkCollection = 0x0000
|
||||
pp_data->cap[1]->LinkUsagePage = 0xFF00
|
||||
pp_data->cap[1]->LinkUsage = 0x0002
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 1
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0002
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0002
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[1]->Button.LogicalMin = 0
|
||||
pp_data->cap[1]->Button.LogicalMax = 255
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0002
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0xFF00
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
4
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0002_FF00_expected.rpt_desc
generated
vendored
Normal file
4
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0002_FF00_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
0x06, 0x00, 0xFF, 0x09, 0x02, 0xA1, 0x01, 0x85, 0x11, 0x09,
|
||||
0x02, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75, 0x08, 0x95, 0x13,
|
||||
0x81, 0x00, 0x09, 0x02, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x13, 0x91, 0x00, 0xC0,
|
||||
13
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0002_FF00_real.rpt_desc
generated
vendored
Normal file
13
node_modules/node-hid/hidapi/windows/test/data/046D_C52F_0002_FF00_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
Usage Page (Vendor-Defined 1) 06 00 FF
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Collection (Application) A1 01
|
||||
Report ID (17) 85 11
|
||||
Report Size (8) 75 08
|
||||
Report Count (19) 95 13
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (255) 26 FF 00
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Input (Data,Ary,Abs) 81 00
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Output (Data,Ary,Abs,NWrp,Lin,Pref,NNul,NVol,Bit) 91 00
|
||||
End Collection C0
|
||||
93
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0001_000C.pp_data
generated
vendored
Normal file
93
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0001_000C.pp_data
generated
vendored
Normal file
@@ -0,0 +1,93 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xC534
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "USB Receiver"
|
||||
dev->release_number = 0x2901
|
||||
dev->interface_number = 1
|
||||
dev->usage = 0x0001
|
||||
dev->usage_page = 0x000C
|
||||
dev->path = "\\?\hid#vid_046d&pid_c534&mi_01&col02#7&1ebb799e&0&0001#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0001
|
||||
pp_data->UsagePage = 0x000C
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 1
|
||||
pp_data->caps_info[0]->NumberOfCaps = 1
|
||||
pp_data->caps_info[0]->ReportByteLength = 5
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 1
|
||||
pp_data->caps_info[1]->LastCap = 1
|
||||
pp_data->caps_info[1]->NumberOfCaps = 0
|
||||
pp_data->caps_info[1]->ReportByteLength = 0
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 1
|
||||
pp_data->caps_info[2]->LastCap = 1
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x0068
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x000C
|
||||
pp_data->cap[0]->ReportID = 0x03
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 16
|
||||
pp_data->cap[0]->ReportCount = 2
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 32
|
||||
pp_data->cap[0]->BitField = 0x00
|
||||
pp_data->cap[0]->NextBytePosition = 0x0005
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 1
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->Range.UsageMin = 0x0001
|
||||
pp_data->cap[0]->Range.UsageMax = 0x028C
|
||||
pp_data->cap[0]->Range.StringMin = 0
|
||||
pp_data->cap[0]->Range.StringMax = 0
|
||||
pp_data->cap[0]->Range.DesignatorMin = 0
|
||||
pp_data->cap[0]->Range.DesignatorMax = 0
|
||||
pp_data->cap[0]->Range.DataIndexMin = 0
|
||||
pp_data->cap[0]->Range.DataIndexMax = 651
|
||||
pp_data->cap[0]->Button.LogicalMin = 1
|
||||
pp_data->cap[0]->Button.LogicalMax = 652
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x000C
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
3
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0001_000C_expected.rpt_desc
generated
vendored
Normal file
3
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0001_000C_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
0x05, 0x0C, 0x09, 0x01, 0xA1, 0x01, 0x85, 0x03, 0x19, 0x01,
|
||||
0x2A, 0x8C, 0x02, 0x15, 0x01, 0x26, 0x8C, 0x02, 0x75, 0x10,
|
||||
0x95, 0x02, 0x81, 0x00, 0xC0,
|
||||
18
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0001_000C_real.rpt_desc
generated
vendored
Normal file
18
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0001_000C_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
macOS USB prober output for Logitech USB Receiver
|
||||
05 0C 09 01 A1 01
|
||||
85 03 75 10 95 02 15 01 26 8C 02 19 01 2A 8C 02 81 00
|
||||
C0
|
||||
|
||||
Parser output:
|
||||
0x05, 0x0C, // Usage Page (Consumer)
|
||||
0x09, 0x01, // Usage (Consumer Control)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x85, 0x03, // Report ID (3)
|
||||
0x75, 0x10, // Report Size (16)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x15, 0x01, // Logical Minimum (1)
|
||||
0x26, 0x8C, 0x02, // Logical Maximum (652)
|
||||
0x19, 0x01, // Usage Minimum (Consumer Control)
|
||||
0x2A, 0x8C, 0x02, // Usage Maximum (AC Send)
|
||||
0x81, 0x00, // Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
139
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0001_FF00.pp_data
generated
vendored
Normal file
139
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0001_FF00.pp_data
generated
vendored
Normal file
@@ -0,0 +1,139 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xC534
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "USB Receiver"
|
||||
dev->release_number = 0x2901
|
||||
dev->interface_number = 1
|
||||
dev->usage = 0x0001
|
||||
dev->usage_page = 0xFF00
|
||||
dev->path = "\\?\hid#vid_046d&pid_c534&mi_01&col04#7&1ebb799e&0&0003#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0001
|
||||
pp_data->UsagePage = 0xFF00
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 1
|
||||
pp_data->caps_info[0]->NumberOfCaps = 1
|
||||
pp_data->caps_info[0]->ReportByteLength = 7
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 1
|
||||
pp_data->caps_info[1]->LastCap = 2
|
||||
pp_data->caps_info[1]->NumberOfCaps = 1
|
||||
pp_data->caps_info[1]->ReportByteLength = 7
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 2
|
||||
pp_data->caps_info[2]->LastCap = 2
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x00D0
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0xFF00
|
||||
pp_data->cap[0]->ReportID = 0x10
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 8
|
||||
pp_data->cap[0]->ReportCount = 6
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 48
|
||||
pp_data->cap[0]->BitField = 0x00
|
||||
pp_data->cap[0]->NextBytePosition = 0x0007
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0xFF00
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 0
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->NotRange.Usage = 0x0001
|
||||
pp_data->cap[0]->NotRange.Reserved1 = 0x0001
|
||||
pp_data->cap[0]->NotRange.StringIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[0]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[0]->NotRange.DataIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 255
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
pp_data->cap[1]->UsagePage = 0xFF00
|
||||
pp_data->cap[1]->ReportID = 0x10
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 8
|
||||
pp_data->cap[1]->ReportCount = 6
|
||||
pp_data->cap[1]->BytePosition = 0x0001
|
||||
pp_data->cap[1]->BitCount = 48
|
||||
pp_data->cap[1]->BitField = 0x00
|
||||
pp_data->cap[1]->NextBytePosition = 0x0007
|
||||
pp_data->cap[1]->LinkCollection = 0x0000
|
||||
pp_data->cap[1]->LinkUsagePage = 0xFF00
|
||||
pp_data->cap[1]->LinkUsage = 0x0001
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 1
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0001
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0001
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[1]->Button.LogicalMin = 0
|
||||
pp_data->cap[1]->Button.LogicalMax = 255
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0xFF00
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
4
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0001_FF00_expected.rpt_desc
generated
vendored
Normal file
4
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0001_FF00_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
0x06, 0x00, 0xFF, 0x09, 0x01, 0xA1, 0x01, 0x85, 0x10, 0x09,
|
||||
0x01, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75, 0x08, 0x95, 0x06,
|
||||
0x81, 0x00, 0x09, 0x01, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x06, 0x91, 0x00, 0xC0,
|
||||
20
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0001_FF00_real.rpt_desc
generated
vendored
Normal file
20
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0001_FF00_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
macOS USB prober output for Logitech USB Receiver
|
||||
|
||||
06 00 FF 09 01 A1 01 85 10 75 08 95 06
|
||||
15 00 26 FF 00 09 01 81
|
||||
00 09 01 91 00 C0
|
||||
|
||||
Parser Output:
|
||||
0x06, 0x00, 0xFF, // Usage Page (Vendor Defined 0xFF00)
|
||||
0x09, 0x01, // Usage (0x01)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x85, 0x10, // Report ID (16)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x06, // Report Count (6)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x26, 0xFF, 0x00, // Logical Maximum (255)
|
||||
0x09, 0x01, // Usage (0x01)
|
||||
0x81, 0x00, // Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x09, 0x01, // Usage (0x01)
|
||||
0x91, 0x00, // Output (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0xC0, // End Collection
|
||||
302
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0002_0001.pp_data
generated
vendored
Normal file
302
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0002_0001.pp_data
generated
vendored
Normal file
@@ -0,0 +1,302 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xC534
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "USB Receiver"
|
||||
dev->release_number = 0x2901
|
||||
dev->interface_number = 1
|
||||
dev->usage = 0x0002
|
||||
dev->usage_page = 0x0001
|
||||
dev->path = "\\?\hid#vid_046d&pid_c534&mi_01&col01#7&1ebb799e&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0002
|
||||
pp_data->UsagePage = 0x0001
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 5
|
||||
pp_data->caps_info[0]->NumberOfCaps = 5
|
||||
pp_data->caps_info[0]->ReportByteLength = 8
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 5
|
||||
pp_data->caps_info[1]->LastCap = 5
|
||||
pp_data->caps_info[1]->NumberOfCaps = 0
|
||||
pp_data->caps_info[1]->ReportByteLength = 0
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 5
|
||||
pp_data->caps_info[2]->LastCap = 5
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x0208
|
||||
pp_data->NumberLinkCollectionNodes = 2
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x0009
|
||||
pp_data->cap[0]->ReportID = 0x02
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 1
|
||||
pp_data->cap[0]->ReportCount = 16
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 16
|
||||
pp_data->cap[0]->BitField = 0x02
|
||||
pp_data->cap[0]->NextBytePosition = 0x0003
|
||||
pp_data->cap[0]->LinkCollection = 0x0001
|
||||
pp_data->cap[0]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 1
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->Range.UsageMin = 0x0001
|
||||
pp_data->cap[0]->Range.UsageMax = 0x0010
|
||||
pp_data->cap[0]->Range.StringMin = 0
|
||||
pp_data->cap[0]->Range.StringMax = 0
|
||||
pp_data->cap[0]->Range.DesignatorMin = 0
|
||||
pp_data->cap[0]->Range.DesignatorMax = 0
|
||||
pp_data->cap[0]->Range.DataIndexMin = 0
|
||||
pp_data->cap[0]->Range.DataIndexMax = 15
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 0
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0x0001
|
||||
pp_data->cap[1]->ReportID = 0x02
|
||||
pp_data->cap[1]->BitPosition = 4
|
||||
pp_data->cap[1]->BitSize = 12
|
||||
pp_data->cap[1]->ReportCount = 1
|
||||
pp_data->cap[1]->BytePosition = 0x0004
|
||||
pp_data->cap[1]->BitCount = 12
|
||||
pp_data->cap[1]->BitField = 0x06
|
||||
pp_data->cap[1]->NextBytePosition = 0x0006
|
||||
pp_data->cap[1]->LinkCollection = 0x0001
|
||||
pp_data->cap[1]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[1]->LinkUsage = 0x0001
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 0
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 0
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0031
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0031
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 16
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 16
|
||||
pp_data->cap[1]->NotButton.HasNull = 0
|
||||
pp_data->cap[1]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[1]->NotButton.LogicalMin = -2047
|
||||
pp_data->cap[1]->NotButton.LogicalMax = 2047
|
||||
pp_data->cap[1]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[1]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[2]->UsagePage = 0x0001
|
||||
pp_data->cap[2]->ReportID = 0x02
|
||||
pp_data->cap[2]->BitPosition = 0
|
||||
pp_data->cap[2]->BitSize = 12
|
||||
pp_data->cap[2]->ReportCount = 1
|
||||
pp_data->cap[2]->BytePosition = 0x0003
|
||||
pp_data->cap[2]->BitCount = 12
|
||||
pp_data->cap[2]->BitField = 0x06
|
||||
pp_data->cap[2]->NextBytePosition = 0x0005
|
||||
pp_data->cap[2]->LinkCollection = 0x0001
|
||||
pp_data->cap[2]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[2]->LinkUsage = 0x0001
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 0
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 0
|
||||
pp_data->cap[2]->IsRange = 0
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->NotRange.Usage = 0x0030
|
||||
pp_data->cap[2]->NotRange.Reserved1 = 0x0030
|
||||
pp_data->cap[2]->NotRange.StringIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[2]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[2]->NotRange.DataIndex = 17
|
||||
pp_data->cap[2]->NotRange.Reserved4 = 17
|
||||
pp_data->cap[2]->NotButton.HasNull = 0
|
||||
pp_data->cap[2]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[2]->NotButton.LogicalMin = -2047
|
||||
pp_data->cap[2]->NotButton.LogicalMax = 2047
|
||||
pp_data->cap[2]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[2]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[3]->UsagePage = 0x0001
|
||||
pp_data->cap[3]->ReportID = 0x02
|
||||
pp_data->cap[3]->BitPosition = 0
|
||||
pp_data->cap[3]->BitSize = 8
|
||||
pp_data->cap[3]->ReportCount = 1
|
||||
pp_data->cap[3]->BytePosition = 0x0006
|
||||
pp_data->cap[3]->BitCount = 8
|
||||
pp_data->cap[3]->BitField = 0x06
|
||||
pp_data->cap[3]->NextBytePosition = 0x0007
|
||||
pp_data->cap[3]->LinkCollection = 0x0001
|
||||
pp_data->cap[3]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[3]->LinkUsage = 0x0001
|
||||
pp_data->cap[3]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[3]->IsButtonCap = 0
|
||||
pp_data->cap[3]->IsPadding = 0
|
||||
pp_data->cap[3]->IsAbsolute = 0
|
||||
pp_data->cap[3]->IsRange = 0
|
||||
pp_data->cap[3]->IsAlias = 0
|
||||
pp_data->cap[3]->IsStringRange = 0
|
||||
pp_data->cap[3]->IsDesignatorRange = 0
|
||||
pp_data->cap[3]->Reserved1 = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[3]->NotRange.Usage = 0x0038
|
||||
pp_data->cap[3]->NotRange.Reserved1 = 0x0038
|
||||
pp_data->cap[3]->NotRange.StringIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[3]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[3]->NotRange.DataIndex = 18
|
||||
pp_data->cap[3]->NotRange.Reserved4 = 18
|
||||
pp_data->cap[3]->NotButton.HasNull = 0
|
||||
pp_data->cap[3]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[3]->NotButton.LogicalMin = -127
|
||||
pp_data->cap[3]->NotButton.LogicalMax = 127
|
||||
pp_data->cap[3]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[3]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[3]->Units = 0
|
||||
pp_data->cap[3]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[4]->UsagePage = 0x000C
|
||||
pp_data->cap[4]->ReportID = 0x02
|
||||
pp_data->cap[4]->BitPosition = 0
|
||||
pp_data->cap[4]->BitSize = 8
|
||||
pp_data->cap[4]->ReportCount = 1
|
||||
pp_data->cap[4]->BytePosition = 0x0007
|
||||
pp_data->cap[4]->BitCount = 8
|
||||
pp_data->cap[4]->BitField = 0x06
|
||||
pp_data->cap[4]->NextBytePosition = 0x0008
|
||||
pp_data->cap[4]->LinkCollection = 0x0001
|
||||
pp_data->cap[4]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[4]->LinkUsage = 0x0001
|
||||
pp_data->cap[4]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[4]->IsButtonCap = 0
|
||||
pp_data->cap[4]->IsPadding = 0
|
||||
pp_data->cap[4]->IsAbsolute = 0
|
||||
pp_data->cap[4]->IsRange = 0
|
||||
pp_data->cap[4]->IsAlias = 0
|
||||
pp_data->cap[4]->IsStringRange = 0
|
||||
pp_data->cap[4]->IsDesignatorRange = 0
|
||||
pp_data->cap[4]->Reserved1 = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[4]->NotRange.Usage = 0x0238
|
||||
pp_data->cap[4]->NotRange.Reserved1 = 0x0238
|
||||
pp_data->cap[4]->NotRange.StringIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[4]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[4]->NotRange.DataIndex = 19
|
||||
pp_data->cap[4]->NotRange.Reserved4 = 19
|
||||
pp_data->cap[4]->NotButton.HasNull = 0
|
||||
pp_data->cap[4]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[4]->NotButton.LogicalMin = -127
|
||||
pp_data->cap[4]->NotButton.LogicalMax = 127
|
||||
pp_data->cap[4]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[4]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[4]->Units = 0
|
||||
pp_data->cap[4]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0002
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 1
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 1
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
pp_data->LinkCollectionArray[1]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[1]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[1]->Parent = 0
|
||||
pp_data->LinkCollectionArray[1]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[1]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[1]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[1]->CollectionType = 0
|
||||
pp_data->LinkCollectionArray[1]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[1]->Reserved = 0x00000000
|
||||
8
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0002_0001_expected.rpt_desc
generated
vendored
Normal file
8
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0002_0001_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
0x05, 0x01, 0x09, 0x02, 0xA1, 0x01, 0x09, 0x01, 0xA1, 0x00,
|
||||
0x85, 0x02, 0x05, 0x09, 0x19, 0x01, 0x29, 0x10, 0x15, 0x00,
|
||||
0x25, 0x01, 0x75, 0x01, 0x95, 0x10, 0x81, 0x02, 0x05, 0x01,
|
||||
0x09, 0x30, 0x09, 0x31, 0x16, 0x01, 0xF8, 0x26, 0xFF, 0x07,
|
||||
0x75, 0x0C, 0x95, 0x02, 0x81, 0x06, 0x09, 0x38, 0x15, 0x81,
|
||||
0x25, 0x7F, 0x75, 0x08, 0x95, 0x01, 0x81, 0x06, 0x05, 0x0C,
|
||||
0x0A, 0x38, 0x02, 0x15, 0x81, 0x25, 0x7F, 0x75, 0x08, 0x95,
|
||||
0x01, 0x81, 0x06, 0xC0, 0xC0,
|
||||
44
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0002_0001_real.rpt_desc
generated
vendored
Normal file
44
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0002_0001_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
|
||||
05 01 09 02 A1 01 85 02 09 01 A1 00 05 09 19 01
|
||||
29 10 15 00 25 01 95 10 75 01 81 02 05 01 16 01
|
||||
F8 26 FF 07 75 0C 95 02 09 30 09 31 81 06 15 81
|
||||
25 7F 75 08 95 01 09 38 81 06 05 0C 0A 38 02 95
|
||||
01 81 06 C0 C0
|
||||
|
||||
Parser Output:
|
||||
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
|
||||
0x09, 0x02, // Usage (Mouse)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x85, 0x02, // Report ID (2)
|
||||
0x09, 0x01, // Usage (Pointer)
|
||||
0xA1, 0x00, // Collection (Physical)
|
||||
0x05, 0x09, // Usage Page (Button)
|
||||
0x19, 0x01, // Usage Minimum (0x01)
|
||||
0x29, 0x10, // Usage Maximum (0x10)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x25, 0x01, // Logical Maximum (1)
|
||||
0x95, 0x10, // Report Count (16)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
|
||||
0x16, 0x01, 0xF8, // Logical Minimum (-2047)
|
||||
0x26, 0xFF, 0x07, // Logical Maximum (2047)
|
||||
0x75, 0x0C, // Report Size (12)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x09, 0x30, // Usage (X)
|
||||
0x09, 0x31, // Usage (Y)
|
||||
0x81, 0x06, // Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x15, 0x81, // Logical Minimum (-127)
|
||||
0x25, 0x7F, // Logical Maximum (127)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x09, 0x38, // Usage (Wheel)
|
||||
0x81, 0x06, // Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x05, 0x0C, // Usage Page (Consumer)
|
||||
0x0A, 0x38, 0x02, // Usage (AC Pan)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x81, 0x06, // Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
0xC0, // End Collection
|
||||
|
||||
// 69 bytes
|
||||
139
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0002_FF00.pp_data
generated
vendored
Normal file
139
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0002_FF00.pp_data
generated
vendored
Normal file
@@ -0,0 +1,139 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xC534
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "USB Receiver"
|
||||
dev->release_number = 0x2901
|
||||
dev->interface_number = 1
|
||||
dev->usage = 0x0002
|
||||
dev->usage_page = 0xFF00
|
||||
dev->path = "\\?\hid#vid_046d&pid_c534&mi_01&col05#7&1ebb799e&0&0004#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0002
|
||||
pp_data->UsagePage = 0xFF00
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 1
|
||||
pp_data->caps_info[0]->NumberOfCaps = 1
|
||||
pp_data->caps_info[0]->ReportByteLength = 20
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 1
|
||||
pp_data->caps_info[1]->LastCap = 2
|
||||
pp_data->caps_info[1]->NumberOfCaps = 1
|
||||
pp_data->caps_info[1]->ReportByteLength = 20
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 2
|
||||
pp_data->caps_info[2]->LastCap = 2
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x00D0
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0xFF00
|
||||
pp_data->cap[0]->ReportID = 0x11
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 8
|
||||
pp_data->cap[0]->ReportCount = 19
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 152
|
||||
pp_data->cap[0]->BitField = 0x00
|
||||
pp_data->cap[0]->NextBytePosition = 0x0014
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0xFF00
|
||||
pp_data->cap[0]->LinkUsage = 0x0002
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 0
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->NotRange.Usage = 0x0002
|
||||
pp_data->cap[0]->NotRange.Reserved1 = 0x0002
|
||||
pp_data->cap[0]->NotRange.StringIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[0]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[0]->NotRange.DataIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 255
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
pp_data->cap[1]->UsagePage = 0xFF00
|
||||
pp_data->cap[1]->ReportID = 0x11
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 8
|
||||
pp_data->cap[1]->ReportCount = 19
|
||||
pp_data->cap[1]->BytePosition = 0x0001
|
||||
pp_data->cap[1]->BitCount = 152
|
||||
pp_data->cap[1]->BitField = 0x00
|
||||
pp_data->cap[1]->NextBytePosition = 0x0014
|
||||
pp_data->cap[1]->LinkCollection = 0x0000
|
||||
pp_data->cap[1]->LinkUsagePage = 0xFF00
|
||||
pp_data->cap[1]->LinkUsage = 0x0002
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 1
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0002
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0002
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[1]->Button.LogicalMin = 0
|
||||
pp_data->cap[1]->Button.LogicalMax = 255
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0002
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0xFF00
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
4
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0002_FF00_expected.rpt_desc
generated
vendored
Normal file
4
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0002_FF00_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
0x06, 0x00, 0xFF, 0x09, 0x02, 0xA1, 0x01, 0x85, 0x11, 0x09,
|
||||
0x02, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75, 0x08, 0x95, 0x13,
|
||||
0x81, 0x00, 0x09, 0x02, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x13, 0x91, 0x00, 0xC0,
|
||||
22
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0002_FF00_real.rpt_desc
generated
vendored
Normal file
22
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0002_FF00_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
macOS USB prober output for Logitech USB Receiver
|
||||
|
||||
06 00 FF 09 02 A1 01 85 11
|
||||
75 08 95 13 15 00 26 FF
|
||||
00 09 02 81 00 09 02 91 00 C0
|
||||
|
||||
Parser output:
|
||||
0x06, 0x00, 0xFF, // Usage Page (Vendor Defined 0xFF00)
|
||||
0x09, 0x02, // Usage (0x02)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x85, 0x11, // Report ID (17)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x13, // Report Count (19)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x26, 0xFF, 0x00, // Logical Maximum (255)
|
||||
0x09, 0x02, // Usage (0x02)
|
||||
0x81, 0x00, // Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x09, 0x02, // Usage (0x02)
|
||||
0x91, 0x00, // Output (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0xC0, // End Collection
|
||||
|
||||
// 27 bytes
|
||||
185
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0006_0001.pp_data
generated
vendored
Normal file
185
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0006_0001.pp_data
generated
vendored
Normal file
@@ -0,0 +1,185 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xC534
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "USB Receiver"
|
||||
dev->release_number = 0x2901
|
||||
dev->interface_number = 0
|
||||
dev->usage = 0x0006
|
||||
dev->usage_page = 0x0001
|
||||
dev->path = "\\?\hid#vid_046d&pid_c534&mi_00#7&51bc424&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\kbd"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0006
|
||||
pp_data->UsagePage = 0x0001
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 2
|
||||
pp_data->caps_info[0]->NumberOfCaps = 2
|
||||
pp_data->caps_info[0]->ReportByteLength = 9
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 2
|
||||
pp_data->caps_info[1]->LastCap = 3
|
||||
pp_data->caps_info[1]->NumberOfCaps = 1
|
||||
pp_data->caps_info[1]->ReportByteLength = 2
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 3
|
||||
pp_data->caps_info[2]->LastCap = 3
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x0138
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x0007
|
||||
pp_data->cap[0]->ReportID = 0x00
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 1
|
||||
pp_data->cap[0]->ReportCount = 8
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 8
|
||||
pp_data->cap[0]->BitField = 0x02
|
||||
pp_data->cap[0]->NextBytePosition = 0x0002
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[0]->LinkUsage = 0x0006
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 1
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->Range.UsageMin = 0x00E0
|
||||
pp_data->cap[0]->Range.UsageMax = 0x00E7
|
||||
pp_data->cap[0]->Range.StringMin = 0
|
||||
pp_data->cap[0]->Range.StringMax = 0
|
||||
pp_data->cap[0]->Range.DesignatorMin = 0
|
||||
pp_data->cap[0]->Range.DesignatorMax = 0
|
||||
pp_data->cap[0]->Range.DataIndexMin = 0
|
||||
pp_data->cap[0]->Range.DataIndexMax = 7
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 0
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0x0007
|
||||
pp_data->cap[1]->ReportID = 0x00
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 8
|
||||
pp_data->cap[1]->ReportCount = 6
|
||||
pp_data->cap[1]->BytePosition = 0x0003
|
||||
pp_data->cap[1]->BitCount = 48
|
||||
pp_data->cap[1]->BitField = 0x00
|
||||
pp_data->cap[1]->NextBytePosition = 0x0009
|
||||
pp_data->cap[1]->LinkCollection = 0x0000
|
||||
pp_data->cap[1]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[1]->LinkUsage = 0x0006
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 1
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 1
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->Range.UsageMin = 0x0000
|
||||
pp_data->cap[1]->Range.UsageMax = 0x00A4
|
||||
pp_data->cap[1]->Range.StringMin = 0
|
||||
pp_data->cap[1]->Range.StringMax = 0
|
||||
pp_data->cap[1]->Range.DesignatorMin = 0
|
||||
pp_data->cap[1]->Range.DesignatorMax = 0
|
||||
pp_data->cap[1]->Range.DataIndexMin = 8
|
||||
pp_data->cap[1]->Range.DataIndexMax = 172
|
||||
pp_data->cap[1]->Button.LogicalMin = 0
|
||||
pp_data->cap[1]->Button.LogicalMax = 164
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
pp_data->cap[2]->UsagePage = 0x0008
|
||||
pp_data->cap[2]->ReportID = 0x00
|
||||
pp_data->cap[2]->BitPosition = 0
|
||||
pp_data->cap[2]->BitSize = 1
|
||||
pp_data->cap[2]->ReportCount = 5
|
||||
pp_data->cap[2]->BytePosition = 0x0001
|
||||
pp_data->cap[2]->BitCount = 5
|
||||
pp_data->cap[2]->BitField = 0x02
|
||||
pp_data->cap[2]->NextBytePosition = 0x0002
|
||||
pp_data->cap[2]->LinkCollection = 0x0000
|
||||
pp_data->cap[2]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[2]->LinkUsage = 0x0006
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 1
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 1
|
||||
pp_data->cap[2]->IsRange = 1
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->Range.UsageMin = 0x0001
|
||||
pp_data->cap[2]->Range.UsageMax = 0x0005
|
||||
pp_data->cap[2]->Range.StringMin = 0
|
||||
pp_data->cap[2]->Range.StringMax = 0
|
||||
pp_data->cap[2]->Range.DesignatorMin = 0
|
||||
pp_data->cap[2]->Range.DesignatorMax = 0
|
||||
pp_data->cap[2]->Range.DataIndexMin = 0
|
||||
pp_data->cap[2]->Range.DataIndexMax = 4
|
||||
pp_data->cap[2]->Button.LogicalMin = 0
|
||||
pp_data->cap[2]->Button.LogicalMax = 0
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0006
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
7
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0006_0001_expected.rpt_desc
generated
vendored
Normal file
7
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0006_0001_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
0x05, 0x01, 0x09, 0x06, 0xA1, 0x01, 0x05, 0x07, 0x19, 0xE0,
|
||||
0x29, 0xE7, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x08,
|
||||
0x81, 0x02, 0x75, 0x08, 0x95, 0x01, 0x81, 0x03, 0x19, 0x00,
|
||||
0x29, 0xA4, 0x15, 0x00, 0x26, 0xA4, 0x00, 0x75, 0x08, 0x95,
|
||||
0x06, 0x81, 0x00, 0x05, 0x08, 0x19, 0x01, 0x29, 0x05, 0x15,
|
||||
0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x05, 0x91, 0x02, 0x75,
|
||||
0x03, 0x95, 0x01, 0x91, 0x03, 0xC0,
|
||||
42
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0006_0001_real.rpt_desc
generated
vendored
Normal file
42
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0006_0001_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,42 @@
|
||||
macOS USB prober output for Logitech USB Receiver
|
||||
|
||||
|
||||
Type: 0x22 (Report Descriptor)
|
||||
Length (and contents): 59
|
||||
Raw Descriptor (hex) 0000: 05 01 09 06 A1 01 05 07 19 E0 29 E7 15 00 25 01
|
||||
Raw Descriptor (hex) 0010: 75 01 95 08 81 02 81 03 95 05 05 08 19 01 29 05
|
||||
Raw Descriptor (hex) 0020: 91 02 95 01 75 03 91 01 95 06 75 08 15 00 26 A4
|
||||
Raw Descriptor (hex) 0030: 00 05 07 19 00 2A A4 00 81 00 C0
|
||||
|
||||
Parser output:
|
||||
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
|
||||
0x09, 0x06, // Usage (Keyboard)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x05, 0x07, // Usage Page (Kbrd/Keypad)
|
||||
0x19, 0xE0, // Usage Minimum (0xE0)
|
||||
0x29, 0xE7, // Usage Maximum (0xE7)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x25, 0x01, // Logical Maximum (1)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x08, // Report Count (8)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x95, 0x05, // Report Count (5)
|
||||
0x05, 0x08, // Usage Page (LEDs)
|
||||
0x19, 0x01, // Usage Minimum (Num Lock)
|
||||
0x29, 0x05, // Usage Maximum (Kana)
|
||||
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x75, 0x03, // Report Size (3)
|
||||
0x91, 0x01, // Output (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x06, // Report Count (6)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x26, 0xA4, 0x00, // Logical Maximum (164)
|
||||
0x05, 0x07, // Usage Page (Kbrd/Keypad)
|
||||
0x19, 0x00, // Usage Minimum (0x00)
|
||||
0x2A, 0xA4, 0x00, // Usage Maximum (0xA4)
|
||||
0x81, 0x00, // Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
|
||||
// 59 bytes
|
||||
185
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0080_0001.pp_data
generated
vendored
Normal file
185
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0080_0001.pp_data
generated
vendored
Normal file
@@ -0,0 +1,185 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x046D
|
||||
dev->product_id = 0xC534
|
||||
dev->manufacturer_string = "Logitech"
|
||||
dev->product_string = "USB Receiver"
|
||||
dev->release_number = 0x2901
|
||||
dev->interface_number = 1
|
||||
dev->usage = 0x0080
|
||||
dev->usage_page = 0x0001
|
||||
dev->path = "\\?\hid#vid_046d&pid_c534&mi_01&col03#7&1ebb799e&0&0002#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0080
|
||||
pp_data->UsagePage = 0x0001
|
||||
pp_data->Reserved = 0x00038000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 3
|
||||
pp_data->caps_info[0]->NumberOfCaps = 3
|
||||
pp_data->caps_info[0]->ReportByteLength = 2
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 3
|
||||
pp_data->caps_info[1]->LastCap = 3
|
||||
pp_data->caps_info[1]->NumberOfCaps = 0
|
||||
pp_data->caps_info[1]->ReportByteLength = 0
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 3
|
||||
pp_data->caps_info[2]->LastCap = 3
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x0138
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x0001
|
||||
pp_data->cap[0]->ReportID = 0x04
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 2
|
||||
pp_data->cap[0]->ReportCount = 1
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 2
|
||||
pp_data->cap[0]->BitField = 0x60
|
||||
pp_data->cap[0]->NextBytePosition = 0x0002
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[0]->LinkUsage = 0x0080
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 1
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 0
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->NotRange.Usage = 0x0083
|
||||
pp_data->cap[0]->NotRange.Reserved1 = 0x0083
|
||||
pp_data->cap[0]->NotRange.StringIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[0]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[0]->NotRange.DataIndex = 2
|
||||
pp_data->cap[0]->NotRange.Reserved4 = 2
|
||||
pp_data->cap[0]->Button.LogicalMin = 1
|
||||
pp_data->cap[0]->Button.LogicalMax = 3
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0x0001
|
||||
pp_data->cap[1]->ReportID = 0x04
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 2
|
||||
pp_data->cap[1]->ReportCount = 1
|
||||
pp_data->cap[1]->BytePosition = 0x0001
|
||||
pp_data->cap[1]->BitCount = 2
|
||||
pp_data->cap[1]->BitField = 0x60
|
||||
pp_data->cap[1]->NextBytePosition = 0x0002
|
||||
pp_data->cap[1]->LinkCollection = 0x0000
|
||||
pp_data->cap[1]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[1]->LinkUsage = 0x0080
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 1
|
||||
pp_data->cap[1]->IsButtonCap = 1
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0081
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0081
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 1
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 1
|
||||
pp_data->cap[1]->Button.LogicalMin = 1
|
||||
pp_data->cap[1]->Button.LogicalMax = 3
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[2]->UsagePage = 0x0001
|
||||
pp_data->cap[2]->ReportID = 0x04
|
||||
pp_data->cap[2]->BitPosition = 0
|
||||
pp_data->cap[2]->BitSize = 2
|
||||
pp_data->cap[2]->ReportCount = 1
|
||||
pp_data->cap[2]->BytePosition = 0x0001
|
||||
pp_data->cap[2]->BitCount = 2
|
||||
pp_data->cap[2]->BitField = 0x60
|
||||
pp_data->cap[2]->NextBytePosition = 0x0002
|
||||
pp_data->cap[2]->LinkCollection = 0x0000
|
||||
pp_data->cap[2]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[2]->LinkUsage = 0x0080
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 1
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 1
|
||||
pp_data->cap[2]->IsRange = 0
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->NotRange.Usage = 0x0082
|
||||
pp_data->cap[2]->NotRange.Reserved1 = 0x0082
|
||||
pp_data->cap[2]->NotRange.StringIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[2]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[2]->NotRange.DataIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[2]->Button.LogicalMin = 1
|
||||
pp_data->cap[2]->Button.LogicalMax = 3
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0080
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
4
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0080_0001_expected.rpt_desc
generated
vendored
Normal file
4
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0080_0001_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
0x05, 0x01, 0x09, 0x80, 0xA1, 0x01, 0x85, 0x04, 0x09, 0x82,
|
||||
0x09, 0x81, 0x09, 0x83, 0x15, 0x01, 0x25, 0x03, 0x75, 0x02,
|
||||
0x95, 0x01, 0x81, 0x60, 0x75, 0x06, 0x95, 0x01, 0x81, 0x03,
|
||||
0xC0,
|
||||
22
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0080_0001_real.rpt_desc
generated
vendored
Normal file
22
node_modules/node-hid/hidapi/windows/test/data/046D_C534_0080_0001_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
|
||||
05 01 09 80 A1 01 85 04 75 02 95 01 15 01 25 03
|
||||
09 82 09 81 09 83 81 60 75 06 81 03 C0
|
||||
|
||||
Parser output:
|
||||
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
|
||||
0x09, 0x80, // Usage (Sys Control)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x85, 0x04, // Report ID (4)
|
||||
0x75, 0x02, // Report Size (2)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x15, 0x01, // Logical Minimum (1)
|
||||
0x25, 0x03, // Logical Maximum (3)
|
||||
0x09, 0x82, // Usage (Sys Sleep)
|
||||
0x09, 0x81, // Usage (Sys Power Down)
|
||||
0x09, 0x83, // Usage (Sys Wake Up)
|
||||
0x81, 0x60, // Input (Data,Array,Abs,No Wrap,Linear,No Preferred State,Null State)
|
||||
0x75, 0x06, // Report Size (6)
|
||||
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
|
||||
// 29 bytes
|
||||
385
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0001_000C.pp_data
generated
vendored
Normal file
385
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0001_000C.pp_data
generated
vendored
Normal file
@@ -0,0 +1,385 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x047F
|
||||
dev->product_id = 0xC056
|
||||
dev->manufacturer_string = "Plantronics"
|
||||
dev->product_string = "Plantronics Blackwire 3220 Series"
|
||||
dev->release_number = 0x0210
|
||||
dev->interface_number = 3
|
||||
dev->usage = 0x0001
|
||||
dev->usage_page = 0x000C
|
||||
dev->path = "\\?\hid#vid_047f&pid_c056&mi_03&col01#f&39e6f119&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0001
|
||||
pp_data->UsagePage = 0x000C
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 5
|
||||
pp_data->caps_info[0]->NumberOfCaps = 5
|
||||
pp_data->caps_info[0]->ReportByteLength = 33
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 5
|
||||
pp_data->caps_info[1]->LastCap = 7
|
||||
pp_data->caps_info[1]->NumberOfCaps = 2
|
||||
pp_data->caps_info[1]->ReportByteLength = 37
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 7
|
||||
pp_data->caps_info[2]->LastCap = 7
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x02D8
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x000C
|
||||
pp_data->cap[0]->ReportID = 0x01
|
||||
pp_data->cap[0]->BitPosition = 1
|
||||
pp_data->cap[0]->BitSize = 1
|
||||
pp_data->cap[0]->ReportCount = 1
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 1
|
||||
pp_data->cap[0]->BitField = 0x06
|
||||
pp_data->cap[0]->NextBytePosition = 0x0002
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 0
|
||||
pp_data->cap[0]->IsRange = 0
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->NotRange.Usage = 0x00EA
|
||||
pp_data->cap[0]->NotRange.Reserved1 = 0x00EA
|
||||
pp_data->cap[0]->NotRange.StringIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[0]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[0]->NotRange.DataIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 0
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0x000C
|
||||
pp_data->cap[1]->ReportID = 0x01
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 1
|
||||
pp_data->cap[1]->ReportCount = 1
|
||||
pp_data->cap[1]->BytePosition = 0x0001
|
||||
pp_data->cap[1]->BitCount = 1
|
||||
pp_data->cap[1]->BitField = 0x06
|
||||
pp_data->cap[1]->NextBytePosition = 0x0002
|
||||
pp_data->cap[1]->LinkCollection = 0x0000
|
||||
pp_data->cap[1]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[1]->LinkUsage = 0x0001
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 1
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 0
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x00E9
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x00E9
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 1
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 1
|
||||
pp_data->cap[1]->Button.LogicalMin = 0
|
||||
pp_data->cap[1]->Button.LogicalMax = 0
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[2]->UsagePage = 0x000C
|
||||
pp_data->cap[2]->ReportID = 0x02
|
||||
pp_data->cap[2]->BitPosition = 0
|
||||
pp_data->cap[2]->BitSize = 1
|
||||
pp_data->cap[2]->ReportCount = 16
|
||||
pp_data->cap[2]->BytePosition = 0x0001
|
||||
pp_data->cap[2]->BitCount = 16
|
||||
pp_data->cap[2]->BitField = 0x02
|
||||
pp_data->cap[2]->NextBytePosition = 0x0003
|
||||
pp_data->cap[2]->LinkCollection = 0x0000
|
||||
pp_data->cap[2]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[2]->LinkUsage = 0x0001
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 1
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 1
|
||||
pp_data->cap[2]->IsRange = 0
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->NotRange.Usage = 0x0000
|
||||
pp_data->cap[2]->NotRange.Reserved1 = 0x0000
|
||||
pp_data->cap[2]->NotRange.StringIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[2]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[2]->NotRange.DataIndex = 2
|
||||
pp_data->cap[2]->NotRange.Reserved4 = 2
|
||||
pp_data->cap[2]->Button.LogicalMin = 0
|
||||
pp_data->cap[2]->Button.LogicalMax = 0
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[3]->UsagePage = 0x000C
|
||||
pp_data->cap[3]->ReportID = 0x05
|
||||
pp_data->cap[3]->BitPosition = 0
|
||||
pp_data->cap[3]->BitSize = 8
|
||||
pp_data->cap[3]->ReportCount = 32
|
||||
pp_data->cap[3]->BytePosition = 0x0001
|
||||
pp_data->cap[3]->BitCount = 256
|
||||
pp_data->cap[3]->BitField = 0x02
|
||||
pp_data->cap[3]->NextBytePosition = 0x0021
|
||||
pp_data->cap[3]->LinkCollection = 0x0000
|
||||
pp_data->cap[3]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[3]->LinkUsage = 0x0001
|
||||
pp_data->cap[3]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[3]->IsButtonCap = 0
|
||||
pp_data->cap[3]->IsPadding = 0
|
||||
pp_data->cap[3]->IsAbsolute = 1
|
||||
pp_data->cap[3]->IsRange = 0
|
||||
pp_data->cap[3]->IsAlias = 0
|
||||
pp_data->cap[3]->IsStringRange = 0
|
||||
pp_data->cap[3]->IsDesignatorRange = 0
|
||||
pp_data->cap[3]->Reserved1 = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[3]->NotRange.Usage = 0x0000
|
||||
pp_data->cap[3]->NotRange.Reserved1 = 0x0000
|
||||
pp_data->cap[3]->NotRange.StringIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[3]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[3]->NotRange.DataIndex = 3
|
||||
pp_data->cap[3]->NotRange.Reserved4 = 3
|
||||
pp_data->cap[3]->NotButton.HasNull = 0
|
||||
pp_data->cap[3]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[3]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[3]->NotButton.LogicalMax = 1
|
||||
pp_data->cap[3]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[3]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[3]->Units = 0
|
||||
pp_data->cap[3]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[4]->UsagePage = 0x000C
|
||||
pp_data->cap[4]->ReportID = 0x07
|
||||
pp_data->cap[4]->BitPosition = 0
|
||||
pp_data->cap[4]->BitSize = 8
|
||||
pp_data->cap[4]->ReportCount = 32
|
||||
pp_data->cap[4]->BytePosition = 0x0001
|
||||
pp_data->cap[4]->BitCount = 256
|
||||
pp_data->cap[4]->BitField = 0x02
|
||||
pp_data->cap[4]->NextBytePosition = 0x0021
|
||||
pp_data->cap[4]->LinkCollection = 0x0000
|
||||
pp_data->cap[4]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[4]->LinkUsage = 0x0001
|
||||
pp_data->cap[4]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[4]->IsButtonCap = 0
|
||||
pp_data->cap[4]->IsPadding = 0
|
||||
pp_data->cap[4]->IsAbsolute = 1
|
||||
pp_data->cap[4]->IsRange = 0
|
||||
pp_data->cap[4]->IsAlias = 0
|
||||
pp_data->cap[4]->IsStringRange = 0
|
||||
pp_data->cap[4]->IsDesignatorRange = 0
|
||||
pp_data->cap[4]->Reserved1 = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[4]->NotRange.Usage = 0x0000
|
||||
pp_data->cap[4]->NotRange.Reserved1 = 0x0000
|
||||
pp_data->cap[4]->NotRange.StringIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[4]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[4]->NotRange.DataIndex = 4
|
||||
pp_data->cap[4]->NotRange.Reserved4 = 4
|
||||
pp_data->cap[4]->NotButton.HasNull = 0
|
||||
pp_data->cap[4]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[4]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[4]->NotButton.LogicalMax = 1
|
||||
pp_data->cap[4]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[4]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[4]->Units = 0
|
||||
pp_data->cap[4]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
pp_data->cap[5]->UsagePage = 0x000C
|
||||
pp_data->cap[5]->ReportID = 0x04
|
||||
pp_data->cap[5]->BitPosition = 0
|
||||
pp_data->cap[5]->BitSize = 8
|
||||
pp_data->cap[5]->ReportCount = 36
|
||||
pp_data->cap[5]->BytePosition = 0x0001
|
||||
pp_data->cap[5]->BitCount = 288
|
||||
pp_data->cap[5]->BitField = 0x02
|
||||
pp_data->cap[5]->NextBytePosition = 0x0025
|
||||
pp_data->cap[5]->LinkCollection = 0x0000
|
||||
pp_data->cap[5]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[5]->LinkUsage = 0x0001
|
||||
pp_data->cap[5]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[5]->IsButtonCap = 0
|
||||
pp_data->cap[5]->IsPadding = 0
|
||||
pp_data->cap[5]->IsAbsolute = 1
|
||||
pp_data->cap[5]->IsRange = 0
|
||||
pp_data->cap[5]->IsAlias = 0
|
||||
pp_data->cap[5]->IsStringRange = 0
|
||||
pp_data->cap[5]->IsDesignatorRange = 0
|
||||
pp_data->cap[5]->Reserved1 = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[5]->NotRange.Usage = 0x0000
|
||||
pp_data->cap[5]->NotRange.Reserved1 = 0x0000
|
||||
pp_data->cap[5]->NotRange.StringIndex = 0
|
||||
pp_data->cap[5]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[5]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[5]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[5]->NotRange.DataIndex = 0
|
||||
pp_data->cap[5]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[5]->NotButton.HasNull = 0
|
||||
pp_data->cap[5]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[5]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[5]->NotButton.LogicalMax = 1
|
||||
pp_data->cap[5]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[5]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[5]->Units = 0
|
||||
pp_data->cap[5]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[6]->UsagePage = 0x000C
|
||||
pp_data->cap[6]->ReportID = 0x06
|
||||
pp_data->cap[6]->BitPosition = 0
|
||||
pp_data->cap[6]->BitSize = 8
|
||||
pp_data->cap[6]->ReportCount = 36
|
||||
pp_data->cap[6]->BytePosition = 0x0001
|
||||
pp_data->cap[6]->BitCount = 288
|
||||
pp_data->cap[6]->BitField = 0x02
|
||||
pp_data->cap[6]->NextBytePosition = 0x0025
|
||||
pp_data->cap[6]->LinkCollection = 0x0000
|
||||
pp_data->cap[6]->LinkUsagePage = 0x000C
|
||||
pp_data->cap[6]->LinkUsage = 0x0001
|
||||
pp_data->cap[6]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[6]->IsButtonCap = 0
|
||||
pp_data->cap[6]->IsPadding = 0
|
||||
pp_data->cap[6]->IsAbsolute = 1
|
||||
pp_data->cap[6]->IsRange = 0
|
||||
pp_data->cap[6]->IsAlias = 0
|
||||
pp_data->cap[6]->IsStringRange = 0
|
||||
pp_data->cap[6]->IsDesignatorRange = 0
|
||||
pp_data->cap[6]->Reserved1 = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[6]->NotRange.Usage = 0x0000
|
||||
pp_data->cap[6]->NotRange.Reserved1 = 0x0000
|
||||
pp_data->cap[6]->NotRange.StringIndex = 0
|
||||
pp_data->cap[6]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[6]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[6]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[6]->NotRange.DataIndex = 1
|
||||
pp_data->cap[6]->NotRange.Reserved4 = 1
|
||||
pp_data->cap[6]->NotButton.HasNull = 0
|
||||
pp_data->cap[6]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[6]->NotButton.LogicalMin = 0
|
||||
pp_data->cap[6]->NotButton.LogicalMax = 1
|
||||
pp_data->cap[6]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[6]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[6]->Units = 0
|
||||
pp_data->cap[6]->UnitsExp = 0
|
||||
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x000C
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
10
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0001_000C_expected.rpt_desc
generated
vendored
Normal file
10
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0001_000C_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
0x05, 0x0C, 0x09, 0x01, 0xA1, 0x01, 0x85, 0x01, 0x09, 0xE9,
|
||||
0x09, 0xEA, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x02,
|
||||
0x81, 0x06, 0x75, 0x06, 0x95, 0x01, 0x81, 0x03, 0x85, 0x02,
|
||||
0x09, 0x00, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x10,
|
||||
0x81, 0x02, 0x85, 0x05, 0x09, 0x00, 0x15, 0x00, 0x25, 0x01,
|
||||
0x75, 0x08, 0x95, 0x20, 0x81, 0x02, 0x85, 0x07, 0x09, 0x00,
|
||||
0x15, 0x00, 0x25, 0x01, 0x75, 0x08, 0x95, 0x20, 0x81, 0x02,
|
||||
0x85, 0x04, 0x09, 0x00, 0x15, 0x00, 0x25, 0x01, 0x75, 0x08,
|
||||
0x95, 0x24, 0x91, 0x02, 0x85, 0x06, 0x09, 0x00, 0x15, 0x00,
|
||||
0x25, 0x01, 0x75, 0x08, 0x95, 0x24, 0x91, 0x02, 0xC0,
|
||||
47
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0001_000C_real.rpt_desc
generated
vendored
Normal file
47
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0001_000C_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,47 @@
|
||||
macOS USB Prober about 0x047F/0xC056 "Plantronics Blackwire 3220 Series"
|
||||
05 0C 09 01 A1 01 85 01 15 00 25 01 09 E9 09 EA
|
||||
75 01 95 02 81 06 95 06 81 01 85 02 05 0C 09 00
|
||||
95 10 81 02 85 04 09 00 75 08 95 24 91 02 85 05
|
||||
09 00 95 20 81 02 85 06 09 00 95 24 91 02 85 07
|
||||
09 00 95 20 81 02 C0
|
||||
|
||||
# Parser output:
|
||||
|
||||
0x05, 0x0C, // Usage Page (Consumer)
|
||||
0x09, 0x01, // Usage (Consumer Control)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x85, 0x01, // Report ID (1)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x25, 0x01, // Logical Maximum (1)
|
||||
0x09, 0xE9, // Usage (Volume Increment)
|
||||
0x09, 0xEA, // Usage (Volume Decrement)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x81, 0x06, // Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x95, 0x06, // Report Count (6)
|
||||
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x85, 0x02, // Report ID (2)
|
||||
0x05, 0x0C, // Usage Page (Consumer)
|
||||
0x09, 0x00, // Usage (Unassigned)
|
||||
0x95, 0x10, // Report Count (16)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x85, 0x04, // Report ID (4)
|
||||
0x09, 0x00, // Usage (Unassigned)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x24, // Report Count (36)
|
||||
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x85, 0x05, // Report ID (5)
|
||||
0x09, 0x00, // Usage (Unassigned)
|
||||
0x95, 0x20, // Report Count (32)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x85, 0x06, // Report ID (6)
|
||||
0x09, 0x00, // Usage (Unassigned)
|
||||
0x95, 0x24, // Report Count (36)
|
||||
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x85, 0x07, // Report ID (7)
|
||||
0x09, 0x00, // Usage (Unassigned)
|
||||
0x95, 0x20, // Report Count (32)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
|
||||
// 71 bytes
|
||||
1255
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0003_FFA0.pp_data
generated
vendored
Normal file
1255
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0003_FFA0.pp_data
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
24
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0003_FFA0_expected.rpt_desc
generated
vendored
Normal file
24
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0003_FFA0_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
0x06, 0xA0, 0xFF, 0x09, 0x03, 0xA1, 0x01, 0x85, 0x03, 0x09,
|
||||
0x30, 0x15, 0x00, 0x25, 0x01, 0x75, 0x08, 0x95, 0x20, 0x81,
|
||||
0x02, 0x85, 0x14, 0x09, 0xB1, 0x09, 0xB2, 0x09, 0xB5, 0x09,
|
||||
0xB7, 0x09, 0xB3, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95,
|
||||
0x05, 0x81, 0x06, 0x75, 0x03, 0x95, 0x01, 0x81, 0x03, 0x85,
|
||||
0x15, 0x09, 0x8C, 0x15, 0x00, 0x27, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0x75, 0x10, 0x95, 0x01, 0x81, 0x22, 0x85, 0x1F, 0x09, 0x9C,
|
||||
0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x01, 0x81, 0x06,
|
||||
0x75, 0x07, 0x95, 0x01, 0x81, 0x03, 0x85, 0x03, 0x09, 0x30,
|
||||
0x15, 0x00, 0x25, 0x01, 0x75, 0x08, 0x95, 0x20, 0x91, 0x02,
|
||||
0x85, 0x19, 0x09, 0x8D, 0x09, 0x8F, 0x09, 0x9E, 0x09, 0xDC,
|
||||
0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x04, 0x91, 0x22,
|
||||
0x09, 0xD2, 0x09, 0xD9, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01,
|
||||
0x95, 0x02, 0x91, 0x06, 0x75, 0x02, 0x95, 0x01, 0x91, 0x03,
|
||||
0x85, 0x1A, 0x09, 0xB5, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01,
|
||||
0x95, 0x01, 0x91, 0x22, 0x75, 0x07, 0x95, 0x01, 0x91, 0x03,
|
||||
0x85, 0x1B, 0x09, 0xCF, 0x09, 0xB5, 0x15, 0x00, 0x25, 0x01,
|
||||
0x75, 0x01, 0x95, 0x02, 0xB1, 0x22, 0x09, 0xDE, 0x15, 0x00,
|
||||
0x25, 0x01, 0x75, 0x01, 0x95, 0x01, 0xB1, 0x23, 0x09, 0xD8,
|
||||
0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x01, 0xB1, 0x22,
|
||||
0x75, 0x04, 0x95, 0x01, 0xB1, 0x03, 0x09, 0x09, 0x09, 0x17,
|
||||
0x09, 0x18, 0x09, 0x1E, 0x09, 0x20, 0x09, 0x2A, 0x15, 0x00,
|
||||
0x25, 0x01, 0x75, 0x01, 0x95, 0x06, 0xB1, 0x22, 0x75, 0x02,
|
||||
0x95, 0x01, 0xB1, 0x03, 0xC0,
|
||||
113
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0003_FFA0_real.rpt_desc
generated
vendored
Normal file
113
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0003_FFA0_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,113 @@
|
||||
macOS USB Prober about 0x047F/0xC056 "Plantronics Blackwire 3220 Series"
|
||||
06 A0 FF 09 03 A1 01 85 03 09 30 75
|
||||
08 95 20 91 02 85 03 09 30 75 08 95 20 81 02 85
|
||||
14 09 B1 09 B2 09 B5 09 B7 09 B3 15 00 25 01 75
|
||||
01 95 05 81 06 95 03 81 01 85 15 09 8C 15 00 27
|
||||
FF FF 00 00 75 10 95 01 81 22 85 19 09 8D 09 8F
|
||||
09 9E 09 DC 15 00 25 01 75 01 95 04 91 22 09 D2
|
||||
09 D9 15 00 25 01 75 01 95 02 91 06 95 02 91 01
|
||||
85 1A 09 B5 15 00 25 01 75 01 95 01 91 22 95 07
|
||||
91 01 85 1B 09 CF 09 B5 75 01 95 02 B1 22 09 DE
|
||||
75 01 95 01 B1 23 09 D8 95 01 B1 22 95 04 B1 01
|
||||
09 09 09 17 09 18 09 1E 09 20 09 2A 75 01 95 06
|
||||
B1 22 95 02 B1 01 85 1F 09 9C 75 01 95 01 81 06
|
||||
95 07 81 01 C0
|
||||
|
||||
Parser output:
|
||||
0x06, 0xA0, 0xFF, // Usage Page (Vendor Defined 0xFFA0)
|
||||
0x09, 0x03, // Usage (0x03)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x85, 0x03, // Report ID (3)
|
||||
0x09, 0x30, // Usage (0x30)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x20, // Report Count (32)
|
||||
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x85, 0x03, // Report ID (3)
|
||||
0x09, 0x30, // Usage (0x30)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x20, // Report Count (32)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x85, 0x14, // Report ID (20)
|
||||
0x09, 0xB1, // Usage (0xB1)
|
||||
0x09, 0xB2, // Usage (0xB2)
|
||||
0x09, 0xB5, // Usage (0xB5)
|
||||
0x09, 0xB7, // Usage (0xB7)
|
||||
0x09, 0xB3, // Usage (0xB3)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x25, 0x01, // Logical Maximum (1)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x05, // Report Count (5)
|
||||
0x81, 0x06, // Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x95, 0x03, // Report Count (3)
|
||||
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x85, 0x15, // Report ID (21)
|
||||
0x09, 0x8C, // Usage (0x8C)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x27, 0xFF, 0xFF, 0x00, 0x00, // Logical Maximum (65534)
|
||||
0x75, 0x10, // Report Size (16)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x81, 0x22, // Input (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position)
|
||||
0x85, 0x19, // Report ID (25)
|
||||
0x09, 0x8D, // Usage (0x8D)
|
||||
0x09, 0x8F, // Usage (0x8F)
|
||||
0x09, 0x9E, // Usage (0x9E)
|
||||
0x09, 0xDC, // Usage (0xDC)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x25, 0x01, // Logical Maximum (1)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x04, // Report Count (4)
|
||||
0x91, 0x22, // Output (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position,Non-volatile)
|
||||
0x09, 0xD2, // Usage (0xD2)
|
||||
0x09, 0xD9, // Usage (0xD9)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x25, 0x01, // Logical Maximum (1)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x91, 0x06, // Output (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x91, 0x01, // Output (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x85, 0x1A, // Report ID (26)
|
||||
0x09, 0xB5, // Usage (0xB5)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x25, 0x01, // Logical Maximum (1)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x91, 0x22, // Output (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x07, // Report Count (7)
|
||||
0x91, 0x01, // Output (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x85, 0x1B, // Report ID (27)
|
||||
0x09, 0xCF, // Usage (0xCF)
|
||||
0x09, 0xB5, // Usage (0xB5)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0xB1, 0x22, // Feature (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position,Non-volatile)
|
||||
0x09, 0xDE, // Usage (0xDE)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0xB1, 0x23, // Feature (Const,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position,Non-volatile)
|
||||
0x09, 0xD8, // Usage (0xD8)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0xB1, 0x22, // Feature (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x04, // Report Count (4)
|
||||
0xB1, 0x01, // Feature (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x09, 0x09, // Usage (0x09)
|
||||
0x09, 0x17, // Usage (0x17)
|
||||
0x09, 0x18, // Usage (0x18)
|
||||
0x09, 0x1E, // Usage (0x1E)
|
||||
0x09, 0x20, // Usage (0x20)
|
||||
0x09, 0x2A, // Usage (0x2A)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x06, // Report Count (6)
|
||||
0xB1, 0x22, // Feature (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0xB1, 0x01, // Feature (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x85, 0x1F, // Report ID (31)
|
||||
0x09, 0x9C, // Usage (0x9C)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x81, 0x06, // Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x95, 0x07, // Report Count (7)
|
||||
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
|
||||
// 193 bytes
|
||||
461
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0005_000B.pp_data
generated
vendored
Normal file
461
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0005_000B.pp_data
generated
vendored
Normal file
@@ -0,0 +1,461 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x047F
|
||||
dev->product_id = 0xC056
|
||||
dev->manufacturer_string = "Plantronics"
|
||||
dev->product_string = "Plantronics Blackwire 3220 Series"
|
||||
dev->release_number = 0x0210
|
||||
dev->interface_number = 3
|
||||
dev->usage = 0x0005
|
||||
dev->usage_page = 0x000B
|
||||
dev->path = "\\?\hid#vid_047f&pid_c056&mi_03&col02#f&39e6f119&0&0001#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0005
|
||||
pp_data->UsagePage = 0x000B
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 3
|
||||
pp_data->caps_info[0]->NumberOfCaps = 3
|
||||
pp_data->caps_info[0]->ReportByteLength = 2
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 3
|
||||
pp_data->caps_info[1]->LastCap = 9
|
||||
pp_data->caps_info[1]->NumberOfCaps = 6
|
||||
pp_data->caps_info[1]->ReportByteLength = 2
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 9
|
||||
pp_data->caps_info[2]->LastCap = 9
|
||||
pp_data->caps_info[2]->NumberOfCaps = 0
|
||||
pp_data->caps_info[2]->ReportByteLength = 0
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x03A8
|
||||
pp_data->NumberLinkCollectionNodes = 1
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x000B
|
||||
pp_data->cap[0]->ReportID = 0x08
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 1
|
||||
pp_data->cap[0]->ReportCount = 1
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 1
|
||||
pp_data->cap[0]->BitField = 0x06
|
||||
pp_data->cap[0]->NextBytePosition = 0x0002
|
||||
pp_data->cap[0]->LinkCollection = 0x0000
|
||||
pp_data->cap[0]->LinkUsagePage = 0x000B
|
||||
pp_data->cap[0]->LinkUsage = 0x0005
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 0
|
||||
pp_data->cap[0]->IsRange = 0
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->NotRange.Usage = 0x002F
|
||||
pp_data->cap[0]->NotRange.Reserved1 = 0x002F
|
||||
pp_data->cap[0]->NotRange.StringIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[0]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[0]->NotRange.DataIndex = 0
|
||||
pp_data->cap[0]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 0
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0x000B
|
||||
pp_data->cap[1]->ReportID = 0x08
|
||||
pp_data->cap[1]->BitPosition = 2
|
||||
pp_data->cap[1]->BitSize = 1
|
||||
pp_data->cap[1]->ReportCount = 1
|
||||
pp_data->cap[1]->BytePosition = 0x0001
|
||||
pp_data->cap[1]->BitCount = 1
|
||||
pp_data->cap[1]->BitField = 0x22
|
||||
pp_data->cap[1]->NextBytePosition = 0x0002
|
||||
pp_data->cap[1]->LinkCollection = 0x0000
|
||||
pp_data->cap[1]->LinkUsagePage = 0x000B
|
||||
pp_data->cap[1]->LinkUsage = 0x0005
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 1
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0021
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0021
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 1
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 1
|
||||
pp_data->cap[1]->Button.LogicalMin = 0
|
||||
pp_data->cap[1]->Button.LogicalMax = 0
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[2]->UsagePage = 0x000B
|
||||
pp_data->cap[2]->ReportID = 0x08
|
||||
pp_data->cap[2]->BitPosition = 1
|
||||
pp_data->cap[2]->BitSize = 1
|
||||
pp_data->cap[2]->ReportCount = 1
|
||||
pp_data->cap[2]->BytePosition = 0x0001
|
||||
pp_data->cap[2]->BitCount = 1
|
||||
pp_data->cap[2]->BitField = 0x22
|
||||
pp_data->cap[2]->NextBytePosition = 0x0002
|
||||
pp_data->cap[2]->LinkCollection = 0x0000
|
||||
pp_data->cap[2]->LinkUsagePage = 0x000B
|
||||
pp_data->cap[2]->LinkUsage = 0x0005
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 1
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 1
|
||||
pp_data->cap[2]->IsRange = 0
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->NotRange.Usage = 0x0020
|
||||
pp_data->cap[2]->NotRange.Reserved1 = 0x0020
|
||||
pp_data->cap[2]->NotRange.StringIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[2]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[2]->NotRange.DataIndex = 2
|
||||
pp_data->cap[2]->NotRange.Reserved4 = 2
|
||||
pp_data->cap[2]->Button.LogicalMin = 0
|
||||
pp_data->cap[2]->Button.LogicalMax = 0
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
pp_data->cap[3]->UsagePage = 0x0008
|
||||
pp_data->cap[3]->ReportID = 0x09
|
||||
pp_data->cap[3]->BitPosition = 0
|
||||
pp_data->cap[3]->BitSize = 1
|
||||
pp_data->cap[3]->ReportCount = 1
|
||||
pp_data->cap[3]->BytePosition = 0x0001
|
||||
pp_data->cap[3]->BitCount = 1
|
||||
pp_data->cap[3]->BitField = 0x22
|
||||
pp_data->cap[3]->NextBytePosition = 0x0002
|
||||
pp_data->cap[3]->LinkCollection = 0x0000
|
||||
pp_data->cap[3]->LinkUsagePage = 0x000B
|
||||
pp_data->cap[3]->LinkUsage = 0x0005
|
||||
pp_data->cap[3]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[3]->IsButtonCap = 1
|
||||
pp_data->cap[3]->IsPadding = 0
|
||||
pp_data->cap[3]->IsAbsolute = 1
|
||||
pp_data->cap[3]->IsRange = 0
|
||||
pp_data->cap[3]->IsAlias = 0
|
||||
pp_data->cap[3]->IsStringRange = 0
|
||||
pp_data->cap[3]->IsDesignatorRange = 0
|
||||
pp_data->cap[3]->Reserved1 = 0x000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[3]->NotRange.Usage = 0x0009
|
||||
pp_data->cap[3]->NotRange.Reserved1 = 0x0009
|
||||
pp_data->cap[3]->NotRange.StringIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[3]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[3]->NotRange.DataIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved4 = 0
|
||||
pp_data->cap[3]->Button.LogicalMin = 0
|
||||
pp_data->cap[3]->Button.LogicalMax = 0
|
||||
pp_data->cap[3]->Units = 0
|
||||
pp_data->cap[3]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[4]->UsagePage = 0x0008
|
||||
pp_data->cap[4]->ReportID = 0x17
|
||||
pp_data->cap[4]->BitPosition = 0
|
||||
pp_data->cap[4]->BitSize = 1
|
||||
pp_data->cap[4]->ReportCount = 1
|
||||
pp_data->cap[4]->BytePosition = 0x0001
|
||||
pp_data->cap[4]->BitCount = 1
|
||||
pp_data->cap[4]->BitField = 0x22
|
||||
pp_data->cap[4]->NextBytePosition = 0x0002
|
||||
pp_data->cap[4]->LinkCollection = 0x0000
|
||||
pp_data->cap[4]->LinkUsagePage = 0x000B
|
||||
pp_data->cap[4]->LinkUsage = 0x0005
|
||||
pp_data->cap[4]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[4]->IsButtonCap = 1
|
||||
pp_data->cap[4]->IsPadding = 0
|
||||
pp_data->cap[4]->IsAbsolute = 1
|
||||
pp_data->cap[4]->IsRange = 0
|
||||
pp_data->cap[4]->IsAlias = 0
|
||||
pp_data->cap[4]->IsStringRange = 0
|
||||
pp_data->cap[4]->IsDesignatorRange = 0
|
||||
pp_data->cap[4]->Reserved1 = 0x000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[4]->NotRange.Usage = 0x0017
|
||||
pp_data->cap[4]->NotRange.Reserved1 = 0x0017
|
||||
pp_data->cap[4]->NotRange.StringIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[4]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[4]->NotRange.DataIndex = 1
|
||||
pp_data->cap[4]->NotRange.Reserved4 = 1
|
||||
pp_data->cap[4]->Button.LogicalMin = 0
|
||||
pp_data->cap[4]->Button.LogicalMax = 0
|
||||
pp_data->cap[4]->Units = 0
|
||||
pp_data->cap[4]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[5]->UsagePage = 0x0008
|
||||
pp_data->cap[5]->ReportID = 0x18
|
||||
pp_data->cap[5]->BitPosition = 0
|
||||
pp_data->cap[5]->BitSize = 1
|
||||
pp_data->cap[5]->ReportCount = 1
|
||||
pp_data->cap[5]->BytePosition = 0x0001
|
||||
pp_data->cap[5]->BitCount = 1
|
||||
pp_data->cap[5]->BitField = 0x22
|
||||
pp_data->cap[5]->NextBytePosition = 0x0002
|
||||
pp_data->cap[5]->LinkCollection = 0x0000
|
||||
pp_data->cap[5]->LinkUsagePage = 0x000B
|
||||
pp_data->cap[5]->LinkUsage = 0x0005
|
||||
pp_data->cap[5]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[5]->IsButtonCap = 1
|
||||
pp_data->cap[5]->IsPadding = 0
|
||||
pp_data->cap[5]->IsAbsolute = 1
|
||||
pp_data->cap[5]->IsRange = 0
|
||||
pp_data->cap[5]->IsAlias = 0
|
||||
pp_data->cap[5]->IsStringRange = 0
|
||||
pp_data->cap[5]->IsDesignatorRange = 0
|
||||
pp_data->cap[5]->Reserved1 = 0x000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[5]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[5]->NotRange.Usage = 0x0018
|
||||
pp_data->cap[5]->NotRange.Reserved1 = 0x0018
|
||||
pp_data->cap[5]->NotRange.StringIndex = 0
|
||||
pp_data->cap[5]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[5]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[5]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[5]->NotRange.DataIndex = 2
|
||||
pp_data->cap[5]->NotRange.Reserved4 = 2
|
||||
pp_data->cap[5]->Button.LogicalMin = 0
|
||||
pp_data->cap[5]->Button.LogicalMax = 0
|
||||
pp_data->cap[5]->Units = 0
|
||||
pp_data->cap[5]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[6]->UsagePage = 0x0008
|
||||
pp_data->cap[6]->ReportID = 0x1E
|
||||
pp_data->cap[6]->BitPosition = 0
|
||||
pp_data->cap[6]->BitSize = 1
|
||||
pp_data->cap[6]->ReportCount = 1
|
||||
pp_data->cap[6]->BytePosition = 0x0001
|
||||
pp_data->cap[6]->BitCount = 1
|
||||
pp_data->cap[6]->BitField = 0x22
|
||||
pp_data->cap[6]->NextBytePosition = 0x0002
|
||||
pp_data->cap[6]->LinkCollection = 0x0000
|
||||
pp_data->cap[6]->LinkUsagePage = 0x000B
|
||||
pp_data->cap[6]->LinkUsage = 0x0005
|
||||
pp_data->cap[6]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[6]->IsButtonCap = 1
|
||||
pp_data->cap[6]->IsPadding = 0
|
||||
pp_data->cap[6]->IsAbsolute = 1
|
||||
pp_data->cap[6]->IsRange = 0
|
||||
pp_data->cap[6]->IsAlias = 0
|
||||
pp_data->cap[6]->IsStringRange = 0
|
||||
pp_data->cap[6]->IsDesignatorRange = 0
|
||||
pp_data->cap[6]->Reserved1 = 0x000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[6]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[6]->NotRange.Usage = 0x001E
|
||||
pp_data->cap[6]->NotRange.Reserved1 = 0x001E
|
||||
pp_data->cap[6]->NotRange.StringIndex = 0
|
||||
pp_data->cap[6]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[6]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[6]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[6]->NotRange.DataIndex = 3
|
||||
pp_data->cap[6]->NotRange.Reserved4 = 3
|
||||
pp_data->cap[6]->Button.LogicalMin = 0
|
||||
pp_data->cap[6]->Button.LogicalMax = 0
|
||||
pp_data->cap[6]->Units = 0
|
||||
pp_data->cap[6]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[7]->UsagePage = 0x0008
|
||||
pp_data->cap[7]->ReportID = 0x20
|
||||
pp_data->cap[7]->BitPosition = 0
|
||||
pp_data->cap[7]->BitSize = 1
|
||||
pp_data->cap[7]->ReportCount = 1
|
||||
pp_data->cap[7]->BytePosition = 0x0001
|
||||
pp_data->cap[7]->BitCount = 1
|
||||
pp_data->cap[7]->BitField = 0x22
|
||||
pp_data->cap[7]->NextBytePosition = 0x0002
|
||||
pp_data->cap[7]->LinkCollection = 0x0000
|
||||
pp_data->cap[7]->LinkUsagePage = 0x000B
|
||||
pp_data->cap[7]->LinkUsage = 0x0005
|
||||
pp_data->cap[7]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[7]->IsButtonCap = 1
|
||||
pp_data->cap[7]->IsPadding = 0
|
||||
pp_data->cap[7]->IsAbsolute = 1
|
||||
pp_data->cap[7]->IsRange = 0
|
||||
pp_data->cap[7]->IsAlias = 0
|
||||
pp_data->cap[7]->IsStringRange = 0
|
||||
pp_data->cap[7]->IsDesignatorRange = 0
|
||||
pp_data->cap[7]->Reserved1 = 0x000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[7]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[7]->NotRange.Usage = 0x0020
|
||||
pp_data->cap[7]->NotRange.Reserved1 = 0x0020
|
||||
pp_data->cap[7]->NotRange.StringIndex = 0
|
||||
pp_data->cap[7]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[7]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[7]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[7]->NotRange.DataIndex = 4
|
||||
pp_data->cap[7]->NotRange.Reserved4 = 4
|
||||
pp_data->cap[7]->Button.LogicalMin = 0
|
||||
pp_data->cap[7]->Button.LogicalMax = 0
|
||||
pp_data->cap[7]->Units = 0
|
||||
pp_data->cap[7]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[8]->UsagePage = 0x0008
|
||||
pp_data->cap[8]->ReportID = 0x2A
|
||||
pp_data->cap[8]->BitPosition = 0
|
||||
pp_data->cap[8]->BitSize = 1
|
||||
pp_data->cap[8]->ReportCount = 1
|
||||
pp_data->cap[8]->BytePosition = 0x0001
|
||||
pp_data->cap[8]->BitCount = 1
|
||||
pp_data->cap[8]->BitField = 0x22
|
||||
pp_data->cap[8]->NextBytePosition = 0x0002
|
||||
pp_data->cap[8]->LinkCollection = 0x0000
|
||||
pp_data->cap[8]->LinkUsagePage = 0x000B
|
||||
pp_data->cap[8]->LinkUsage = 0x0005
|
||||
pp_data->cap[8]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[8]->IsButtonCap = 1
|
||||
pp_data->cap[8]->IsPadding = 0
|
||||
pp_data->cap[8]->IsAbsolute = 1
|
||||
pp_data->cap[8]->IsRange = 0
|
||||
pp_data->cap[8]->IsAlias = 0
|
||||
pp_data->cap[8]->IsStringRange = 0
|
||||
pp_data->cap[8]->IsDesignatorRange = 0
|
||||
pp_data->cap[8]->Reserved1 = 0x000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[8]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[8]->NotRange.Usage = 0x002A
|
||||
pp_data->cap[8]->NotRange.Reserved1 = 0x002A
|
||||
pp_data->cap[8]->NotRange.StringIndex = 0
|
||||
pp_data->cap[8]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[8]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[8]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[8]->NotRange.DataIndex = 5
|
||||
pp_data->cap[8]->NotRange.Reserved4 = 5
|
||||
pp_data->cap[8]->Button.LogicalMin = 0
|
||||
pp_data->cap[8]->Button.LogicalMax = 0
|
||||
pp_data->cap[8]->Units = 0
|
||||
pp_data->cap[8]->UnitsExp = 0
|
||||
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0005
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x000B
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
17
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0005_000B_expected.rpt_desc
generated
vendored
Normal file
17
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0005_000B_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
0x05, 0x0B, 0x09, 0x05, 0xA1, 0x01, 0x85, 0x08, 0x09, 0x2F,
|
||||
0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95, 0x01, 0x81, 0x06,
|
||||
0x09, 0x20, 0x09, 0x21, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01,
|
||||
0x95, 0x02, 0x81, 0x22, 0x75, 0x05, 0x95, 0x01, 0x81, 0x03,
|
||||
0x85, 0x09, 0x05, 0x08, 0x09, 0x09, 0x15, 0x00, 0x25, 0x01,
|
||||
0x75, 0x01, 0x95, 0x01, 0x91, 0x22, 0x75, 0x07, 0x95, 0x01,
|
||||
0x91, 0x03, 0x85, 0x17, 0x09, 0x17, 0x15, 0x00, 0x25, 0x01,
|
||||
0x75, 0x01, 0x95, 0x01, 0x91, 0x22, 0x75, 0x07, 0x95, 0x01,
|
||||
0x91, 0x03, 0x85, 0x18, 0x09, 0x18, 0x15, 0x00, 0x25, 0x01,
|
||||
0x75, 0x01, 0x95, 0x01, 0x91, 0x22, 0x75, 0x07, 0x95, 0x01,
|
||||
0x91, 0x03, 0x85, 0x1E, 0x09, 0x1E, 0x15, 0x00, 0x25, 0x01,
|
||||
0x75, 0x01, 0x95, 0x01, 0x91, 0x22, 0x75, 0x07, 0x95, 0x01,
|
||||
0x91, 0x03, 0x85, 0x20, 0x09, 0x20, 0x15, 0x00, 0x25, 0x01,
|
||||
0x75, 0x01, 0x95, 0x01, 0x91, 0x22, 0x75, 0x07, 0x95, 0x01,
|
||||
0x91, 0x03, 0x85, 0x2A, 0x09, 0x2A, 0x15, 0x00, 0x25, 0x01,
|
||||
0x75, 0x01, 0x95, 0x01, 0x91, 0x22, 0x75, 0x07, 0x95, 0x01,
|
||||
0x91, 0x03, 0xC0,
|
||||
68
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0005_000B_real.rpt_desc
generated
vendored
Normal file
68
node_modules/node-hid/hidapi/windows/test/data/047F_C056_0005_000B_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,68 @@
|
||||
macOS USB Prober about 0x047F/0xC056 "Plantronics Blackwire 3220 Series"
|
||||
05 0B 09 05 A1 01 85 08 15
|
||||
00 25 01 09 2F 75 01 95 01 81 06 09 20 09 21 75
|
||||
01 95 02 81 22 95 05 81 01 05 08 85 09 09 09 95
|
||||
01 91 22 95 07 91 01 85 17 09 17 95 01 91 22 95
|
||||
07 91 01 85 18 09 18 95 01 91 22 95 07 91 01 85
|
||||
1E 09 1E 95 01 91 22 95 07 91 01 85 20 09 20 95
|
||||
01 91 22 95 07 91 01 85 2A 09 2A 95 01 91 22 95
|
||||
07 91 01 C0
|
||||
|
||||
Parser output:
|
||||
0x05, 0x0B, // Usage Page (Telephony)
|
||||
0x09, 0x05, // Usage (Headset)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x85, 0x08, // Report ID (8)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x25, 0x01, // Logical Maximum (1)
|
||||
0x09, 0x2F, // Usage (Phone Mute)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x81, 0x06, // Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x09, 0x20, // Usage (Hook Switch)
|
||||
0x09, 0x21, // Usage (Flash)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x81, 0x22, // Input (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position)
|
||||
0x95, 0x05, // Report Count (5)
|
||||
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x05, 0x08, // Usage Page (LEDs)
|
||||
0x85, 0x09, // Report ID (9)
|
||||
0x09, 0x09, // Usage (Mute)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x91, 0x22, // Output (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x07, // Report Count (7)
|
||||
0x91, 0x01, // Output (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x85, 0x17, // Report ID (23)
|
||||
0x09, 0x17, // Usage (Off-Hook)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x91, 0x22, // Output (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x07, // Report Count (7)
|
||||
0x91, 0x01, // Output (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x85, 0x18, // Report ID (24)
|
||||
0x09, 0x18, // Usage (Ring)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x91, 0x22, // Output (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x07, // Report Count (7)
|
||||
0x91, 0x01, // Output (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x85, 0x1E, // Report ID (30)
|
||||
0x09, 0x1E, // Usage (Speaker)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x91, 0x22, // Output (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x07, // Report Count (7)
|
||||
0x91, 0x01, // Output (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x85, 0x20, // Report ID (32)
|
||||
0x09, 0x20, // Usage (Hold)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x91, 0x22, // Output (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x07, // Report Count (7)
|
||||
0x91, 0x01, // Output (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x85, 0x2A, // Report ID (42)
|
||||
0x09, 0x2A, // Usage (On-Line)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x91, 0x22, // Output (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position,Non-volatile)
|
||||
0x95, 0x07, // Report Count (7)
|
||||
0x91, 0x01, // Output (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0xC0, // End Collection
|
||||
|
||||
// 109 bytes
|
||||
302
node_modules/node-hid/hidapi/windows/test/data/1532_00A3_0002_0001.pp_data
generated
vendored
Normal file
302
node_modules/node-hid/hidapi/windows/test/data/1532_00A3_0002_0001.pp_data
generated
vendored
Normal file
@@ -0,0 +1,302 @@
|
||||
# HIDAPI device info struct:
|
||||
dev->vendor_id = 0x1532
|
||||
dev->product_id = 0x00A3
|
||||
dev->manufacturer_string = "Razer"
|
||||
dev->product_string = "Razer Cobra"
|
||||
dev->release_number = 0x0200
|
||||
dev->interface_number = 0
|
||||
dev->usage = 0x0002
|
||||
dev->usage_page = 0x0001
|
||||
dev->path = "\\?\HID#VID_1532&PID_00A3&MI_00#7&370ad372&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
|
||||
|
||||
# Preparsed Data struct:
|
||||
pp_data->MagicKey = 0x48696450204B4452
|
||||
pp_data->Usage = 0x0002
|
||||
pp_data->UsagePage = 0x0001
|
||||
pp_data->Reserved = 0x00000000
|
||||
# Input caps_info struct:
|
||||
pp_data->caps_info[0]->FirstCap = 0
|
||||
pp_data->caps_info[0]->LastCap = 5
|
||||
pp_data->caps_info[0]->NumberOfCaps = 5
|
||||
pp_data->caps_info[0]->ReportByteLength = 9
|
||||
# Output caps_info struct:
|
||||
pp_data->caps_info[1]->FirstCap = 5
|
||||
pp_data->caps_info[1]->LastCap = 5
|
||||
pp_data->caps_info[1]->NumberOfCaps = 0
|
||||
pp_data->caps_info[1]->ReportByteLength = 0
|
||||
# Feature caps_info struct:
|
||||
pp_data->caps_info[2]->FirstCap = 5
|
||||
pp_data->caps_info[2]->LastCap = 5
|
||||
pp_data->caps_info[2]->NumberOfCaps = 1
|
||||
pp_data->caps_info[2]->ReportByteLength = 91
|
||||
# LinkCollectionArray Offset & Size:
|
||||
pp_data->FirstByteOfLinkCollectionArray = 0x0270
|
||||
pp_data->NumberLinkCollectionNodes = 2
|
||||
# Input hid_pp_cap struct:
|
||||
pp_data->cap[0]->UsagePage = 0x0009
|
||||
pp_data->cap[0]->ReportID = 0x00
|
||||
pp_data->cap[0]->BitPosition = 0
|
||||
pp_data->cap[0]->BitSize = 1
|
||||
pp_data->cap[0]->ReportCount = 5
|
||||
pp_data->cap[0]->BytePosition = 0x0001
|
||||
pp_data->cap[0]->BitCount = 5
|
||||
pp_data->cap[0]->BitField = 0x02
|
||||
pp_data->cap[0]->NextBytePosition = 0x0002
|
||||
pp_data->cap[0]->LinkCollection = 0x0001
|
||||
pp_data->cap[0]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[0]->LinkUsage = 0x0001
|
||||
pp_data->cap[0]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[0]->IsButtonCap = 1
|
||||
pp_data->cap[0]->IsPadding = 0
|
||||
pp_data->cap[0]->IsAbsolute = 1
|
||||
pp_data->cap[0]->IsRange = 1
|
||||
pp_data->cap[0]->IsAlias = 0
|
||||
pp_data->cap[0]->IsStringRange = 0
|
||||
pp_data->cap[0]->IsDesignatorRange = 0
|
||||
pp_data->cap[0]->Reserved1 = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[0]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[0]->Range.UsageMin = 0x0001
|
||||
pp_data->cap[0]->Range.UsageMax = 0x0005
|
||||
pp_data->cap[0]->Range.StringMin = 0
|
||||
pp_data->cap[0]->Range.StringMax = 0
|
||||
pp_data->cap[0]->Range.DesignatorMin = 0
|
||||
pp_data->cap[0]->Range.DesignatorMax = 0
|
||||
pp_data->cap[0]->Range.DataIndexMin = 0
|
||||
pp_data->cap[0]->Range.DataIndexMax = 4
|
||||
pp_data->cap[0]->Button.LogicalMin = 0
|
||||
pp_data->cap[0]->Button.LogicalMax = 0
|
||||
pp_data->cap[0]->Units = 0
|
||||
pp_data->cap[0]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[1]->UsagePage = 0xFF00
|
||||
pp_data->cap[1]->ReportID = 0x00
|
||||
pp_data->cap[1]->BitPosition = 0
|
||||
pp_data->cap[1]->BitSize = 8
|
||||
pp_data->cap[1]->ReportCount = 2
|
||||
pp_data->cap[1]->BytePosition = 0x0002
|
||||
pp_data->cap[1]->BitCount = 16
|
||||
pp_data->cap[1]->BitField = 0x02
|
||||
pp_data->cap[1]->NextBytePosition = 0x0004
|
||||
pp_data->cap[1]->LinkCollection = 0x0001
|
||||
pp_data->cap[1]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[1]->LinkUsage = 0x0001
|
||||
pp_data->cap[1]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[1]->IsButtonCap = 0
|
||||
pp_data->cap[1]->IsPadding = 0
|
||||
pp_data->cap[1]->IsAbsolute = 1
|
||||
pp_data->cap[1]->IsRange = 0
|
||||
pp_data->cap[1]->IsAlias = 0
|
||||
pp_data->cap[1]->IsStringRange = 0
|
||||
pp_data->cap[1]->IsDesignatorRange = 0
|
||||
pp_data->cap[1]->Reserved1 = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[1]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[1]->NotRange.Usage = 0x0040
|
||||
pp_data->cap[1]->NotRange.Reserved1 = 0x0040
|
||||
pp_data->cap[1]->NotRange.StringIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[1]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[1]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[1]->NotRange.DataIndex = 5
|
||||
pp_data->cap[1]->NotRange.Reserved4 = 5
|
||||
pp_data->cap[1]->NotButton.HasNull = 0
|
||||
pp_data->cap[1]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[1]->NotButton.LogicalMin = -127
|
||||
pp_data->cap[1]->NotButton.LogicalMax = 127
|
||||
pp_data->cap[1]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[1]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[1]->Units = 0
|
||||
pp_data->cap[1]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[2]->UsagePage = 0x0001
|
||||
pp_data->cap[2]->ReportID = 0x00
|
||||
pp_data->cap[2]->BitPosition = 0
|
||||
pp_data->cap[2]->BitSize = 8
|
||||
pp_data->cap[2]->ReportCount = 1
|
||||
pp_data->cap[2]->BytePosition = 0x0004
|
||||
pp_data->cap[2]->BitCount = 8
|
||||
pp_data->cap[2]->BitField = 0x06
|
||||
pp_data->cap[2]->NextBytePosition = 0x0005
|
||||
pp_data->cap[2]->LinkCollection = 0x0001
|
||||
pp_data->cap[2]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[2]->LinkUsage = 0x0001
|
||||
pp_data->cap[2]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[2]->IsButtonCap = 0
|
||||
pp_data->cap[2]->IsPadding = 0
|
||||
pp_data->cap[2]->IsAbsolute = 0
|
||||
pp_data->cap[2]->IsRange = 0
|
||||
pp_data->cap[2]->IsAlias = 0
|
||||
pp_data->cap[2]->IsStringRange = 0
|
||||
pp_data->cap[2]->IsDesignatorRange = 0
|
||||
pp_data->cap[2]->Reserved1 = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[2]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[2]->NotRange.Usage = 0x0038
|
||||
pp_data->cap[2]->NotRange.Reserved1 = 0x0038
|
||||
pp_data->cap[2]->NotRange.StringIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[2]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[2]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[2]->NotRange.DataIndex = 6
|
||||
pp_data->cap[2]->NotRange.Reserved4 = 6
|
||||
pp_data->cap[2]->NotButton.HasNull = 0
|
||||
pp_data->cap[2]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[2]->NotButton.LogicalMin = -127
|
||||
pp_data->cap[2]->NotButton.LogicalMax = 127
|
||||
pp_data->cap[2]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[2]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[2]->Units = 0
|
||||
pp_data->cap[2]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[3]->UsagePage = 0x0001
|
||||
pp_data->cap[3]->ReportID = 0x00
|
||||
pp_data->cap[3]->BitPosition = 0
|
||||
pp_data->cap[3]->BitSize = 16
|
||||
pp_data->cap[3]->ReportCount = 1
|
||||
pp_data->cap[3]->BytePosition = 0x0007
|
||||
pp_data->cap[3]->BitCount = 16
|
||||
pp_data->cap[3]->BitField = 0x06
|
||||
pp_data->cap[3]->NextBytePosition = 0x0009
|
||||
pp_data->cap[3]->LinkCollection = 0x0001
|
||||
pp_data->cap[3]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[3]->LinkUsage = 0x0001
|
||||
pp_data->cap[3]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[3]->IsButtonCap = 0
|
||||
pp_data->cap[3]->IsPadding = 0
|
||||
pp_data->cap[3]->IsAbsolute = 0
|
||||
pp_data->cap[3]->IsRange = 0
|
||||
pp_data->cap[3]->IsAlias = 0
|
||||
pp_data->cap[3]->IsStringRange = 0
|
||||
pp_data->cap[3]->IsDesignatorRange = 0
|
||||
pp_data->cap[3]->Reserved1 = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[3]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[3]->NotRange.Usage = 0x0031
|
||||
pp_data->cap[3]->NotRange.Reserved1 = 0x0031
|
||||
pp_data->cap[3]->NotRange.StringIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[3]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[3]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[3]->NotRange.DataIndex = 7
|
||||
pp_data->cap[3]->NotRange.Reserved4 = 7
|
||||
pp_data->cap[3]->NotButton.HasNull = 0
|
||||
pp_data->cap[3]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[3]->NotButton.LogicalMin = -32768
|
||||
pp_data->cap[3]->NotButton.LogicalMax = 32767
|
||||
pp_data->cap[3]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[3]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[3]->Units = 0
|
||||
pp_data->cap[3]->UnitsExp = 0
|
||||
|
||||
pp_data->cap[4]->UsagePage = 0x0001
|
||||
pp_data->cap[4]->ReportID = 0x00
|
||||
pp_data->cap[4]->BitPosition = 0
|
||||
pp_data->cap[4]->BitSize = 16
|
||||
pp_data->cap[4]->ReportCount = 1
|
||||
pp_data->cap[4]->BytePosition = 0x0005
|
||||
pp_data->cap[4]->BitCount = 16
|
||||
pp_data->cap[4]->BitField = 0x06
|
||||
pp_data->cap[4]->NextBytePosition = 0x0007
|
||||
pp_data->cap[4]->LinkCollection = 0x0001
|
||||
pp_data->cap[4]->LinkUsagePage = 0x0001
|
||||
pp_data->cap[4]->LinkUsage = 0x0001
|
||||
pp_data->cap[4]->IsMultipleItemsForArray = 0
|
||||
pp_data->cap[4]->IsButtonCap = 0
|
||||
pp_data->cap[4]->IsPadding = 0
|
||||
pp_data->cap[4]->IsAbsolute = 0
|
||||
pp_data->cap[4]->IsRange = 0
|
||||
pp_data->cap[4]->IsAlias = 0
|
||||
pp_data->cap[4]->IsStringRange = 0
|
||||
pp_data->cap[4]->IsDesignatorRange = 0
|
||||
pp_data->cap[4]->Reserved1 = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[0].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[1].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[2].BitField = 0x00000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Token = 0x00
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].Reserved = 0x000000
|
||||
pp_data->cap[4]->pp_cap->UnknownTokens[3].BitField = 0x00000000
|
||||
pp_data->cap[4]->NotRange.Usage = 0x0030
|
||||
pp_data->cap[4]->NotRange.Reserved1 = 0x0030
|
||||
pp_data->cap[4]->NotRange.StringIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved2 = 0
|
||||
pp_data->cap[4]->NotRange.DesignatorIndex = 0
|
||||
pp_data->cap[4]->NotRange.Reserved3 = 0
|
||||
pp_data->cap[4]->NotRange.DataIndex = 8
|
||||
pp_data->cap[4]->NotRange.Reserved4 = 8
|
||||
pp_data->cap[4]->NotButton.HasNull = 0
|
||||
pp_data->cap[4]->NotButton.Reserved4 = 0x000000
|
||||
pp_data->cap[4]->NotButton.LogicalMin = -32768
|
||||
pp_data->cap[4]->NotButton.LogicalMax = 32767
|
||||
pp_data->cap[4]->NotButton.PhysicalMin = 0
|
||||
pp_data->cap[4]->NotButton.PhysicalMax = 0
|
||||
pp_data->cap[4]->Units = 0
|
||||
pp_data->cap[4]->UnitsExp = 0
|
||||
|
||||
# Output hid_pp_cap struct:
|
||||
# Feature hid_pp_cap struct:
|
||||
# Link Collections:
|
||||
pp_data->LinkCollectionArray[0]->LinkUsage = 0x0002
|
||||
pp_data->LinkCollectionArray[0]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[0]->Parent = 0
|
||||
pp_data->LinkCollectionArray[0]->NumberOfChildren = 1
|
||||
pp_data->LinkCollectionArray[0]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[0]->FirstChild = 1
|
||||
pp_data->LinkCollectionArray[0]->CollectionType = 1
|
||||
pp_data->LinkCollectionArray[0]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[0]->Reserved = 0x00000000
|
||||
pp_data->LinkCollectionArray[1]->LinkUsage = 0x0001
|
||||
pp_data->LinkCollectionArray[1]->LinkUsagePage = 0x0001
|
||||
pp_data->LinkCollectionArray[1]->Parent = 0
|
||||
pp_data->LinkCollectionArray[1]->NumberOfChildren = 0
|
||||
pp_data->LinkCollectionArray[1]->NextSibling = 0
|
||||
pp_data->LinkCollectionArray[1]->FirstChild = 0
|
||||
pp_data->LinkCollectionArray[1]->CollectionType = 0
|
||||
pp_data->LinkCollectionArray[1]->IsAlias = 0
|
||||
pp_data->LinkCollectionArray[1]->Reserved = 0x00000000
|
||||
9
node_modules/node-hid/hidapi/windows/test/data/1532_00A3_0002_0001_expected.rpt_desc
generated
vendored
Normal file
9
node_modules/node-hid/hidapi/windows/test/data/1532_00A3_0002_0001_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
0x05, 0x01, 0x09, 0x02, 0xA1, 0x01, 0x09, 0x01, 0xA1, 0x00,
|
||||
0x05, 0x09, 0x19, 0x01, 0x29, 0x05, 0x15, 0x00, 0x25, 0x01,
|
||||
0x75, 0x01, 0x95, 0x05, 0x81, 0x02, 0x75, 0x03, 0x95, 0x01,
|
||||
0x81, 0x03, 0x06, 0x00, 0xFF, 0x09, 0x40, 0x15, 0x81, 0x25,
|
||||
0x7F, 0x75, 0x08, 0x95, 0x02, 0x81, 0x02, 0x05, 0x01, 0x09,
|
||||
0x38, 0x15, 0x81, 0x25, 0x7F, 0x75, 0x08, 0x95, 0x01, 0x81,
|
||||
0x06, 0x09, 0x30, 0x09, 0x31, 0x16, 0x00, 0x80, 0x26, 0xFF,
|
||||
0x7F, 0x75, 0x10, 0x95, 0x02, 0x81, 0x06, 0xC0, 0x75, 0x08,
|
||||
0x95, 0x5A, 0xB1, 0x03, 0xC0,
|
||||
53
node_modules/node-hid/hidapi/windows/test/data/1532_00A3_0002_0001_real.rpt_desc
generated
vendored
Normal file
53
node_modules/node-hid/hidapi/windows/test/data/1532_00A3_0002_0001_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,53 @@
|
||||
HID report descriptor (dumped on Linux with hid-decode)
|
||||
Source: https://github.com/libusb/hidapi/issues/703
|
||||
|
||||
# device 0:0
|
||||
# 0x05, 0x01, // Usage Page (Generic Desktop) 0
|
||||
# 0x09, 0x02, // Usage (Mouse) 2
|
||||
# 0xa1, 0x01, // Collection (Application) 4
|
||||
# 0x09, 0x01, // Usage (Pointer) 6
|
||||
# 0xa1, 0x00, // Collection (Physical) 8
|
||||
# 0x05, 0x09, // Usage Page (Button) 10
|
||||
# 0x19, 0x01, // Usage Minimum (1) 12
|
||||
# 0x29, 0x05, // Usage Maximum (5) 14
|
||||
# 0x15, 0x00, // Logical Minimum (0) 16
|
||||
# 0x25, 0x01, // Logical Maximum (1) 18
|
||||
# 0x75, 0x01, // Report Size (1) 20
|
||||
# 0x95, 0x05, // Report Count (5) 22
|
||||
# 0x81, 0x02, // Input (Data,Var,Abs) 24
|
||||
# 0x75, 0x01, // Report Size (1) 26
|
||||
# 0x95, 0x03, // Report Count (3) 28
|
||||
# 0x81, 0x03, // Input (Cnst,Var,Abs) 30
|
||||
# 0x06, 0x00, 0xff, // Usage Page (Vendor Defined Page 1) 32
|
||||
# 0x09, 0x40, // Usage (Vendor Usage 0x40) 35
|
||||
# 0x75, 0x08, // Report Size (8) 37
|
||||
# 0x95, 0x02, // Report Count (2) 39
|
||||
# 0x15, 0x81, // Logical Minimum (-127) 41
|
||||
# 0x25, 0x7f, // Logical Maximum (127) 43
|
||||
# 0x81, 0x02, // Input (Data,Var,Abs) 45
|
||||
# 0x05, 0x01, // Usage Page (Generic Desktop) 47
|
||||
# 0x09, 0x38, // Usage (Wheel) 49
|
||||
# 0x15, 0x81, // Logical Minimum (-127) 51
|
||||
# 0x25, 0x7f, // Logical Maximum (127) 53
|
||||
# 0x75, 0x08, // Report Size (8) 55
|
||||
# 0x95, 0x01, // Report Count (1) 57
|
||||
# 0x81, 0x06, // Input (Data,Var,Rel) 59
|
||||
# 0x09, 0x30, // Usage (X) 61
|
||||
# 0x09, 0x31, // Usage (Y) 63
|
||||
# 0x16, 0x00, 0x80, // Logical Minimum (-32768) 65
|
||||
# 0x26, 0xff, 0x7f, // Logical Maximum (32767) 68
|
||||
# 0x75, 0x10, // Report Size (16) 71
|
||||
# 0x95, 0x02, // Report Count (2) 73
|
||||
# 0x81, 0x06, // Input (Data,Var,Rel) 75
|
||||
# 0xc0, // End Collection 77
|
||||
# 0x06, 0x00, 0xff, // Usage Page (Vendor Defined Page 1) 78
|
||||
# 0x09, 0x02, // Usage (Vendor Usage 2) 81
|
||||
# 0x15, 0x00, // Logical Minimum (0) 83
|
||||
# 0x25, 0x01, // Logical Maximum (1) 85
|
||||
# 0x75, 0x08, // Report Size (8) 87
|
||||
# 0x95, 0x5a, // Report Count (90) 89
|
||||
# 0xb1, 0x01, // Feature (Cnst,Arr,Abs) 91
|
||||
# 0xc0, // End Collection 93
|
||||
#
|
||||
R: 94 05 01 09 02 a1 01 09 01 a1 00 05 09 19 01 29 05 15 00 25 01 75 01 95 05 81 02 75 01 95 03 81 03 06 00 ff 09 40 75 08 95 02 15 81 25 7f 81 02 05 01 09 38 15 81 25 7f 75 08 95 01 81 06 09 30 09 31 16 00 80 26 ff 7f 75 10 95 02 81 06 c0 06 00 ff 09 02 15 00 25 01 75 08 95 5a b1 01 c0
|
||||
N: device 0:0
|
||||
11508
node_modules/node-hid/hidapi/windows/test/data/17CC_1130_0000_FF01.pp_data
generated
vendored
Normal file
11508
node_modules/node-hid/hidapi/windows/test/data/17CC_1130_0000_FF01.pp_data
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
75
node_modules/node-hid/hidapi/windows/test/data/17CC_1130_0000_FF01_expected.rpt_desc
generated
vendored
Normal file
75
node_modules/node-hid/hidapi/windows/test/data/17CC_1130_0000_FF01_expected.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,75 @@
|
||||
0x06, 0x01, 0xFF, 0x09, 0x00, 0xA1, 0x01, 0x09, 0x01, 0xA1,
|
||||
0x02, 0x85, 0x01, 0x09, 0x03, 0x09, 0x03, 0x09, 0x03, 0x09,
|
||||
0x03, 0x15, 0x00, 0x25, 0x0F, 0x75, 0x04, 0x95, 0x04, 0x81,
|
||||
0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09,
|
||||
0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09,
|
||||
0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09,
|
||||
0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09,
|
||||
0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09,
|
||||
0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09,
|
||||
0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09,
|
||||
0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09,
|
||||
0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09,
|
||||
0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x02, 0x09, 0x0B, 0x09,
|
||||
0x0B, 0x09, 0x0B, 0x09, 0x0B, 0x09, 0x0B, 0x09, 0x0B, 0x09,
|
||||
0x0B, 0x09, 0x0B, 0x15, 0x00, 0x25, 0x01, 0x75, 0x01, 0x95,
|
||||
0x38, 0x81, 0x02, 0xC0, 0x09, 0x02, 0xA1, 0x02, 0x85, 0x02,
|
||||
0x09, 0x04, 0x09, 0x04, 0x09, 0x04, 0x09, 0x04, 0x09, 0x04,
|
||||
0x09, 0x04, 0x09, 0x04, 0x09, 0x04, 0x09, 0x04, 0x09, 0x04,
|
||||
0x09, 0x04, 0x09, 0x04, 0x09, 0x04, 0x09, 0x04, 0x09, 0x04,
|
||||
0x09, 0x04, 0x09, 0x04, 0x09, 0x04, 0x09, 0x04, 0x09, 0x04,
|
||||
0x09, 0x04, 0x09, 0x04, 0x09, 0x04, 0x09, 0x04, 0x09, 0x04,
|
||||
0x09, 0x04, 0x15, 0x00, 0x26, 0xFF, 0x0F, 0x75, 0x10, 0x95,
|
||||
0x1A, 0x81, 0x02, 0xC0, 0x09, 0x80, 0xA1, 0x02, 0x85, 0x80,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81,
|
||||
0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x15, 0x00,
|
||||
0x25, 0x7F, 0x75, 0x08, 0x95, 0x5E, 0x91, 0x02, 0xC0, 0x09,
|
||||
0x80, 0xA1, 0x02, 0x85, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09,
|
||||
0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09,
|
||||
0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09,
|
||||
0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09,
|
||||
0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09,
|
||||
0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09,
|
||||
0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09,
|
||||
0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09, 0x81, 0x09,
|
||||
0x81, 0x09, 0x81, 0x09, 0x81, 0x15, 0x00, 0x25, 0x7F, 0x75,
|
||||
0x08, 0x95, 0x28, 0x91, 0x02, 0xC0, 0x09, 0xD0, 0xA1, 0x02,
|
||||
0x85, 0xD0, 0x09, 0xD1, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x20, 0xB1, 0x82, 0xC0, 0x09, 0xD0, 0xA1, 0x02,
|
||||
0x85, 0xD1, 0x09, 0xD1, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x20, 0xB1, 0x82, 0xC0, 0x09, 0xD0, 0xA1, 0x02,
|
||||
0x85, 0xD2, 0x09, 0xD1, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x20, 0xB1, 0x82, 0xC0, 0x09, 0xD0, 0xA1, 0x02,
|
||||
0x85, 0xD3, 0x09, 0xD1, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x20, 0xB1, 0x82, 0xC0, 0x09, 0xD0, 0xA1, 0x02,
|
||||
0x85, 0xD4, 0x09, 0xD1, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x20, 0xB1, 0x82, 0xC0, 0x09, 0xD0, 0xA1, 0x02,
|
||||
0x85, 0xD5, 0x09, 0xD1, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x20, 0xB1, 0x82, 0xC0, 0x09, 0xD0, 0xA1, 0x02,
|
||||
0x85, 0xD6, 0x09, 0xD1, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x20, 0xB1, 0x82, 0xC0, 0x09, 0xD0, 0xA1, 0x02,
|
||||
0x85, 0xD8, 0x09, 0xD1, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x20, 0xB1, 0x82, 0xC0, 0x09, 0xD0, 0xA1, 0x02,
|
||||
0x85, 0xD9, 0x09, 0xD1, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x20, 0xB1, 0x82, 0xC0, 0x09, 0xD0, 0xA1, 0x02,
|
||||
0x85, 0xF1, 0x09, 0xD1, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75,
|
||||
0x08, 0x95, 0x02, 0xB1, 0x82, 0xC0, 0x09, 0xD0, 0xA1, 0x02,
|
||||
0x85, 0xF3, 0x09, 0xD1, 0x15, 0x00, 0x25, 0x7F, 0x75, 0x08,
|
||||
0x95, 0x02, 0xB1, 0x82, 0xC0, 0xC0,
|
||||
381
node_modules/node-hid/hidapi/windows/test/data/17CC_1130_0000_FF01_real.rpt_desc
generated
vendored
Normal file
381
node_modules/node-hid/hidapi/windows/test/data/17CC_1130_0000_FF01_real.rpt_desc
generated
vendored
Normal file
@@ -0,0 +1,381 @@
|
||||
Usage Page (Vendor-Defined 2) 06 01 FF
|
||||
Usage (Undefined) 09 00
|
||||
Collection (Application) A1 01
|
||||
Usage (Vendor-Defined 1) 09 01
|
||||
Collection (Logical) A1 02
|
||||
Report ID (1) 85 01
|
||||
Usage (Vendor-Defined 3) 09 03
|
||||
Usage (Vendor-Defined 3) 09 03
|
||||
Usage (Vendor-Defined 3) 09 03
|
||||
Usage (Vendor-Defined 3) 09 03
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (15) 25 0F
|
||||
Report Size (4) 75 04
|
||||
Report Count (4) 95 04
|
||||
Input (Data,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (1) 25 01
|
||||
Report Size (1) 75 01
|
||||
Report Count (48) 95 30
|
||||
Input (Data,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 02
|
||||
Usage (Vendor-Defined 11) 09 0B
|
||||
Usage (Vendor-Defined 11) 09 0B
|
||||
Usage (Vendor-Defined 11) 09 0B
|
||||
Usage (Vendor-Defined 11) 09 0B
|
||||
Usage (Vendor-Defined 11) 09 0B
|
||||
Usage (Vendor-Defined 11) 09 0B
|
||||
Usage (Vendor-Defined 11) 09 0B
|
||||
Usage (Vendor-Defined 11) 09 0B
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (1) 25 01
|
||||
Report Size (1) 75 01
|
||||
Report Count (8) 95 08
|
||||
Input (Data,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 02
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 2) 09 02
|
||||
Collection (Logical) A1 02
|
||||
Report ID (2) 85 02
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Usage (Vendor-Defined 4) 09 04
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (4095) 26 FF 0F
|
||||
Report Size (16) 75 10
|
||||
Report Count (26) 95 1A
|
||||
Input (Data,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 02
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 128) 09 80
|
||||
Collection (Logical) A1 02
|
||||
Report ID (128) 85 80
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (127) 25 7F
|
||||
Report Count (94) 95 5E
|
||||
Report Size (8) 75 08
|
||||
Output (Data,Var,Abs,NWrp,Lin,Pref,NNul,NVol,Bit) 91 02
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 128) 09 80
|
||||
Collection (Logical) A1 02
|
||||
Report ID (129) 85 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Usage (Vendor-Defined 129) 09 81
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (127) 25 7F
|
||||
Report Count (40) 95 28
|
||||
Report Size (8) 75 08
|
||||
Output (Data,Var,Abs,NWrp,Lin,Pref,NNul,NVol,Bit) 91 02
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 208) 09 D0
|
||||
Collection (Logical) A1 02
|
||||
Report ID (208) 85 D0
|
||||
Usage (Vendor-Defined 209) 09 D1
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (255) 26 FF 00
|
||||
Report Size (8) 75 08
|
||||
Report Count (32) 95 20
|
||||
Feature (Data,Var,Abs,NWrp,Lin,Pref,NNul,Vol,Bit) B1 82
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 208) 09 D0
|
||||
Collection (Logical) A1 02
|
||||
Report ID (209) 85 D1
|
||||
Usage (Vendor-Defined 209) 09 D1
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (255) 26 FF 00
|
||||
Report Size (8) 75 08
|
||||
Report Count (32) 95 20
|
||||
Feature (Data,Var,Abs,NWrp,Lin,Pref,NNul,Vol,Bit) B1 82
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 208) 09 D0
|
||||
Collection (Logical) A1 02
|
||||
Report ID (210) 85 D2
|
||||
Usage (Vendor-Defined 209) 09 D1
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (255) 26 FF 00
|
||||
Report Size (8) 75 08
|
||||
Report Count (32) 95 20
|
||||
Feature (Data,Var,Abs,NWrp,Lin,Pref,NNul,Vol,Bit) B1 82
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 208) 09 D0
|
||||
Collection (Logical) A1 02
|
||||
Report ID (211) 85 D3
|
||||
Usage (Vendor-Defined 209) 09 D1
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (255) 26 FF 00
|
||||
Report Size (8) 75 08
|
||||
Report Count (32) 95 20
|
||||
Feature (Data,Var,Abs,NWrp,Lin,Pref,NNul,Vol,Bit) B1 82
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 208) 09 D0
|
||||
Collection (Logical) A1 02
|
||||
Report ID (212) 85 D4
|
||||
Usage (Vendor-Defined 209) 09 D1
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (255) 26 FF 00
|
||||
Report Size (8) 75 08
|
||||
Report Count (32) 95 20
|
||||
Feature (Data,Var,Abs,NWrp,Lin,Pref,NNul,Vol,Bit) B1 82
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 208) 09 D0
|
||||
Collection (Logical) A1 02
|
||||
Report ID (213) 85 D5
|
||||
Usage (Vendor-Defined 209) 09 D1
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (255) 26 FF 00
|
||||
Report Size (8) 75 08
|
||||
Report Count (32) 95 20
|
||||
Feature (Data,Var,Abs,NWrp,Lin,Pref,NNul,Vol,Bit) B1 82
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 208) 09 D0
|
||||
Collection (Logical) A1 02
|
||||
Report ID (214) 85 D6
|
||||
Usage (Vendor-Defined 209) 09 D1
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (255) 26 FF 00
|
||||
Report Size (8) 75 08
|
||||
Report Count (32) 95 20
|
||||
Feature (Data,Var,Abs,NWrp,Lin,Pref,NNul,Vol,Bit) B1 82
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 208) 09 D0
|
||||
Collection (Logical) A1 02
|
||||
Report ID (216) 85 D8
|
||||
Usage (Vendor-Defined 209) 09 D1
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (255) 26 FF 00
|
||||
Report Size (8) 75 08
|
||||
Report Count (32) 95 20
|
||||
Feature (Data,Var,Abs,NWrp,Lin,Pref,NNul,Vol,Bit) B1 82
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 208) 09 D0
|
||||
Collection (Logical) A1 02
|
||||
Report ID (217) 85 D9
|
||||
Usage (Vendor-Defined 209) 09 D1
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (255) 26 FF 00
|
||||
Report Size (8) 75 08
|
||||
Report Count (32) 95 20
|
||||
Feature (Data,Var,Abs,NWrp,Lin,Pref,NNul,Vol,Bit) B1 82
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 208) 09 D0
|
||||
Collection (Logical) A1 02
|
||||
Report ID (241) 85 F1
|
||||
Usage (Vendor-Defined 209) 09 D1
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (255) 26 FF 00
|
||||
Report Size (8) 75 08
|
||||
Report Count (2) 95 02
|
||||
Feature (Data,Var,Abs,NWrp,Lin,Pref,NNul,Vol,Bit) B1 82
|
||||
End Collection C0
|
||||
Usage (Vendor-Defined 208) 09 D0
|
||||
Collection (Logical) A1 02
|
||||
Report ID (243) 85 F3
|
||||
Usage (Vendor-Defined 209) 09 D1
|
||||
Logical Minimum (0) 15 00
|
||||
Logical Maximum (127) 25 7F
|
||||
Report Size (8) 75 08
|
||||
Report Count (2) 95 02
|
||||
Feature (Data,Var,Abs,NWrp,Lin,Pref,NNul,Vol,Bit) B1 82
|
||||
End Collection C0
|
||||
End Collection C0
|
||||
Reference in New Issue
Block a user