On 2022/05/09 20:39, Mark Kettenis wrote:
> > Date: Mon, 9 May 2022 17:44:29 +0100
> > From: Stuart Henderson <s...@spacehopper.org>
> > 
> > I have a USB combi keyboard/trackpad thing which is triggering "bad
> > repid 33" frequently while attached (between a couple of times a minute,
> > and once every few minutes). It does work but it's annoying.
> > 
> > Presumably this is because it has non-contiguous report IDs?
> 
> That shouldn't be a problem.
> 
> > Anyone have an idea how to handle it?
> 
> No.  But showing dmesg output might help.

Here's one (the machine I had it connected to previously had been up
for long enough that the live dmesg wasn't any help, and it wasn't
connected early enough for dmesg.boot).

OpenBSD 7.1 (GENERIC.MP) #0: Sun Apr 24 09:30:43 MDT 2022
    
r...@syspatch-71-amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP
real mem = 4169531392 (3976MB)
avail mem = 4025880576 (3839MB)
random: good seed from bootblocks
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.8 @ 0xec240 (83 entries)
bios0: vendor Intel Corp. version "WYLPT10H.86A.0054.2019.0902.1752" date 
09/02/2019
bios0: Intel Corporation D34010WYK
acpi0 at bios0: ACPI 5.0
acpi0: sleep states S0 S3 S4 S5
acpi0: tables DSDT FACP APIC FPDT FIDT SSDT SSDT MCFG HPET SSDT SSDT DMAR CSRT
acpi0: wakeup devices RP01(S4) PXSX(S4) PXSX(S4) PXSX(S4) RP04(S4) PXSX(S4) 
PXSX(S4) PXSX(S4) PXSX(S4) PXSX(S4) GLAN(S4) EHC1(S4) EHC2(S4) XHC_(S4) 
HDEF(S4) PEG0(S4) [...]
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Core(TM) i3-4010U CPU @ 1.70GHz, 1696.37 MHz, 06-45-01
cpu0: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,SDBG,FMA3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,NXE,PAGE1GB,RDTSCP,LONG,LAHF,ABM,PERF,ITSC,FSGSBASE,TSC_ADJUST,BMI1,AVX2,SMEP,BMI2,ERMS,INVPCID,SRBDS_CTRL,MD_CLEAR,IBRS,IBPB,STIBP,L1DF,SSBD,SENSOR,ARAT,XSAVEOPT,MELTDOWN
cpu0: 256KB 64b/line 8-way L2 cache
cpu0: smt 0, core 0, package 0
mtrr: Pentium Pro MTRR support, 10 var ranges, 88 fixed ranges
cpu0: apic clock running at 99MHz
cpu0: mwait min=64, max=64, C-substates=0.2.1.2.4.1.1.1, IBE
cpu1 at mainbus0: apid 2 (application processor)
cpu1: Intel(R) Core(TM) i3-4010U CPU @ 1.70GHz, 1696.08 MHz, 06-45-01
cpu1: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,SDBG,FMA3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,NXE,PAGE1GB,RDTSCP,LONG,LAHF,ABM,PERF,ITSC,FSGSBASE,TSC_ADJUST,BMI1,AVX2,SMEP,BMI2,ERMS,INVPCID,SRBDS_CTRL,MD_CLEAR,IBRS,IBPB,STIBP,L1DF,SSBD,SENSOR,ARAT,XSAVEOPT,MELTDOWN
cpu1: 256KB 64b/line 8-way L2 cache
cpu1: smt 0, core 1, package 0
cpu2 at mainbus0: apid 1 (application processor)
cpu2: Intel(R) Core(TM) i3-4010U CPU @ 1.70GHz, 1696.08 MHz, 06-45-01
cpu2: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,SDBG,FMA3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,NXE,PAGE1GB,RDTSCP,LONG,LAHF,ABM,PERF,ITSC,FSGSBASE,TSC_ADJUST,BMI1,AVX2,SMEP,BMI2,ERMS,INVPCID,SRBDS_CTRL,MD_CLEAR,IBRS,IBPB,STIBP,L1DF,SSBD,SENSOR,ARAT,XSAVEOPT,MELTDOWN
cpu2: 256KB 64b/line 8-way L2 cache
cpu2: smt 1, core 0, package 0
cpu3 at mainbus0: apid 3 (application processor)
cpu3: Intel(R) Core(TM) i3-4010U CPU @ 1.70GHz, 1696.08 MHz, 06-45-01
cpu3: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,SDBG,FMA3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,NXE,PAGE1GB,RDTSCP,LONG,LAHF,ABM,PERF,ITSC,FSGSBASE,TSC_ADJUST,BMI1,AVX2,SMEP,BMI2,ERMS,INVPCID,SRBDS_CTRL,MD_CLEAR,IBRS,IBPB,STIBP,L1DF,SSBD,SENSOR,ARAT,XSAVEOPT,MELTDOWN
cpu3: 256KB 64b/line 8-way L2 cache
cpu3: smt 1, core 1, package 0
ioapic0 at mainbus0: apid 8 pa 0xfec00000, version 20, 40 pins
acpimcfg0 at acpi0
acpimcfg0: addr 0xf8000000, bus 0-63
acpihpet0 at acpi0: 14318179 Hz
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus 1 (RP01)
acpiprt2 at acpi0: bus 2 (RP04)
acpiprt3 at acpi0: bus -1 (PEG0)
acpiec0 at acpi0: not present
acpipci0 at acpi0 PCI0: 0x00000010 0x00000011 0x00000000
acpicmos0 at acpi0
"PNP0C14" at acpi0 not configured
acpibtn0 at acpi0: PWRB
"PNP0C0B" at acpi0 not configured
"PNP0C0B" at acpi0 not configured
"PNP0C0B" at acpi0 not configured
"PNP0C0B" at acpi0 not configured
"PNP0C0B" at acpi0 not configured
acpicpu0 at acpi0: C2(500@67 mwait.1@0x10), C1(1000@1 mwait.1), PSS
acpicpu1 at acpi0: C2(500@67 mwait.1@0x10), C1(1000@1 mwait.1), PSS
acpicpu2 at acpi0: C2(500@67 mwait.1@0x10), C1(1000@1 mwait.1), PSS
acpicpu3 at acpi0: C2(500@67 mwait.1@0x10), C1(1000@1 mwait.1), PSS
acpipwrres0 at acpi0: FN00, resource for FAN0
acpipwrres1 at acpi0: FN01, resource for FAN1
acpipwrres2 at acpi0: FN02, resource for FAN2
acpipwrres3 at acpi0: FN03, resource for FAN3
acpipwrres4 at acpi0: FN04, resource for FAN4
acpitz0 at acpi0: critical temperature is 105 degC
acpitz1 at acpi0: critical temperature is 105 degC
acpivideo0 at acpi0: GFX0
acpivout0 at acpivideo0: DD1F
cpu0: using VERW MDS workaround (except on vmm entry)
cpu0: Enhanced SpeedStep 1696 MHz: speeds: 1700, 1600, 1500, 1400, 1300, 1200, 
1100, 1000, 900, 800, 782 MHz
pci0 at mainbus0 bus 0
pchb0 at pci0 dev 0 function 0 "Intel Core 4G Host" rev 0x09
inteldrm0 at pci0 dev 2 function 0 "Intel HD Graphics" rev 0x09
drm0 at inteldrm0
inteldrm0: msi, HASWELL, gen 7
azalia0 at pci0 dev 3 function 0 "Intel Core 4G HD Audio" rev 0x09: msi
azalia0: No codecs found
xhci0 at pci0 dev 20 function 0 "Intel 8 Series xHCI" rev 0x04: msi, xHCI 1.0
usb0 at xhci0: USB revision 3.0
uhub0 at usb0 configuration 1 interface 0 "Intel xHCI root hub" rev 3.00/1.00 
addr 1
"Intel 8 Series MEI" rev 0x04 at pci0 dev 22 function 0 not configured
em0 at pci0 dev 25 function 0 "Intel I218-V" rev 0x04: msi, address 
c0:3f:d5:60:24:9f
azalia1 at pci0 dev 27 function 0 "Intel 8 Series HD Audio" rev 0x04: msi
azalia1: codecs: Realtek ALC283
audio0 at azalia1
ppb0 at pci0 dev 28 function 0 "Intel 8 Series PCIE" rev 0xe4
pci1 at ppb0 bus 1
ppb1 at pci0 dev 28 function 3 "Intel 8 Series PCIE" rev 0xe4: msi
pci2 at ppb1 bus 2
iwn0 at pci2 dev 0 function 0 "Intel Centrino Advanced-N 6205" rev 0x34: msi, 
MIMO 2T2R, MoW, address 8c:70:5a:62:b7:f8
ehci0 at pci0 dev 29 function 0 "Intel 8 Series USB" rev 0x04: apic 8 int 23
usb1 at ehci0: USB revision 2.0
uhub1 at usb1 configuration 1 interface 0 "Intel EHCI root hub" rev 2.00/1.00 
addr 1
pcib0 at pci0 dev 31 function 0 "Intel 8 Series LPC" rev 0x04
ahci0 at pci0 dev 31 function 2 "Intel 8 Series AHCI" rev 0x04: msi, AHCI 1.3
ahci0: port 3: 6.0Gb/s
scsibus1 at ahci0: 32 targets
sd0 at scsibus1 targ 3 lun 0: <ATA, KINGSTON SUV500M, 0030> naa.50026b778333fd6e
sd0: 114473MB, 512 bytes/sector, 234441648 sectors, thin
ichiic0 at pci0 dev 31 function 3 "Intel 8 Series SMBus" rev 0x04: apic 8 int 18
iic0 at ichiic0
spdmem0 at iic0 addr 0x50: 4GB DDR3 SDRAM PC3-12800 SO-DIMM
isa0 at pcib0
isadma0 at isa0
fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
pckbc0 at isa0 port 0x60/5 irq 1 irq 12
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
lpt0 at isa0 port 0x378/4 irq 7
wbsio0 at isa0 port 0x4e/2: NCT6776F rev 0x33
lm1 at wbsio0 port 0xa00/8: NCT6776F
vmm0 at mainbus0: VMX/EPT
uhidev0 at uhub0 port 1 configuration 1 interface 0 "Microsoft Microsoft\M-. 
Nano Transceiver v2.0" rev 2.00/9.44 addr 2
uhidev0: iclass 3/1
ukbd0 at uhidev0: 8 variable keys, 6 key codes
wskbd0 at ukbd0: console keyboard
uhidev1 at uhub0 port 1 configuration 1 interface 1 "Microsoft Microsoft\M-. 
Nano Transceiver v2.0" rev 2.00/9.44 addr 2
uhidev1: iclass 3/1, 26 report ids
uhid0 at uhidev1 reportid 18: input=0, output=0, feature=1
uhid1 at uhidev1 reportid 23: input=0, output=0, feature=1
ums0 at uhidev1 reportid 26: 5 buttons, Z and W dir
wsmouse0 at ums0 mux 0
uhidev2 at uhub0 port 1 configuration 1 interface 2 "Microsoft Microsoft\M-. 
Nano Transceiver v2.0" rev 2.00/9.44 addr 2
uhidev2: iclass 3/0, 8 report ids
uhid2 at uhidev2 reportid 3: input=1, output=0, feature=0
uhid3 at uhidev2 reportid 4: input=1, output=0, feature=0
ucc0 at uhidev2 reportid 7: 1024 usages, 18 keys, array
wskbd1 at ucc0 mux 1
uhid4 at uhidev2 reportid 8: input=1, output=0, feature=0
uhub2 at uhub1 port 1 configuration 1 interface 0 "Intel Rate Matching Hub" rev 
2.00/0.04 addr 2
vscsi0 at root
scsibus2 at vscsi0: 256 targets
softraid0 at root
scsibus3 at softraid0: 256 targets
root on sd0a (840581441134145c.a) swap on sd0b dump on sd0b
inteldrm0: 1920x1200, 32bpp
wsdisplay0 at inteldrm0 mux 1: console (std, vt100 emulation), using wskbd0
wskbd1: connecting to wsdisplay0
uhidev_intr: bad repid 33
wsdisplay0: screen 1-5 added (std, vt100 emulation)
fd0 at fdc0 drive 0: density unknown
fd1 at fdc0 drive 1: density unknown

> > Bus 000 Device 002: ID 045e:0800 Microsoft Corp. 
> > Device Descriptor:
> >   bLength                18
> >   bDescriptorType         1
> >   bcdUSB               2.00
> >   bDeviceClass            0 (Defined at Interface level)
> >   bDeviceSubClass         0 
> >   bDeviceProtocol         0 
> >   bMaxPacketSize0        64
> >   idVendor           0x045e Microsoft Corp.
> >   idProduct          0x0800 
> >   bcdDevice            9.44
> >   iManufacturer           1 Microsoft
> >   iProduct                2 Microsoft? Nano Transceiver v2.0
> >   iSerial                 0 
> >   bNumConfigurations      1
> >   Configuration Descriptor:
> >     bLength                 9
> >     bDescriptorType         2
> >     wTotalLength           84
> >     bNumInterfaces          3
> >     bConfigurationValue     1
> >     iConfiguration          0 
> >     bmAttributes         0xa0
> >       (Bus Powered)
> >       Remote Wakeup
> >     MaxPower              100mA
> >     Interface Descriptor:
> >       bLength                 9
> >       bDescriptorType         4
> >       bInterfaceNumber        0
> >       bAlternateSetting       0
> >       bNumEndpoints           1
> >       bInterfaceClass         3 Human Interface Device
> >       bInterfaceSubClass      1 Boot Interface Subclass
> >       bInterfaceProtocol      1 Keyboard
> >       iInterface              0 
> >         HID Device Descriptor:
> >           bLength                 9
> >           bDescriptorType        33
> >           bcdHID               1.11
> >           bCountryCode            0 Not supported
> >           bNumDescriptors         1
> >           bDescriptorType        34 Report
> >           wDescriptorLength      57
> >           Report Descriptor: (length is 57)
> >             Item(Global): Usage Page, data= [ 0x01 ] 1
> >                             Generic Desktop Controls
> >             Item(Local ): Usage, data= [ 0x06 ] 6
> >                             Keyboard
> >             Item(Main  ): Collection, data= [ 0x01 ] 1
> >                             Application
> >             Item(Global): Usage Page, data= [ 0x08 ] 8
> >                             LEDs
> >             Item(Local ): Usage Minimum, data= [ 0x01 ] 1
> >                             NumLock
> >             Item(Local ): Usage Maximum, data= [ 0x03 ] 3
> >                             Scroll Lock
> >             Item(Global): Logical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Logical Maximum, data= [ 0x01 ] 1
> >             Item(Global): Report Size, data= [ 0x01 ] 1
> >             Item(Global): Report Count, data= [ 0x03 ] 3
> >             Item(Main  ): Output, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report Count, data= [ 0x05 ] 5
> >             Item(Main  ): Output, data= [ 0x01 ] 1
> >                             Constant Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Usage Page, data= [ 0x07 ] 7
> >                             Keyboard
> >             Item(Local ): Usage Minimum, data= [ 0xe0 0x00 ] 224
> >                             Control Left
> >             Item(Local ): Usage Maximum, data= [ 0xe7 0x00 ] 231
> >                             GUI Right
> >             Item(Global): Report Count, data= [ 0x08 ] 8
> >             Item(Main  ): Input, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report Size, data= [ 0x08 ] 8
> >             Item(Global): Report Count, data= [ 0x01 ] 1
> >             Item(Main  ): Input, data= [ 0x01 ] 1
> >                             Constant Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Local ): Usage Minimum, data= [ 0x00 ] 0
> >                             No Event
> >             Item(Local ): Usage Maximum, data= [ 0x91 0x00 ] 145
> >                             LANG 2 (Hanja Conversion, Korea)
> >             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
> >             Item(Global): Report Count, data= [ 0x06 ] 6
> >             Item(Main  ): Input, data= [ 0x00 ] 0
> >                             Data Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Main  ): End Collection, data=none
> >       Endpoint Descriptor:
> >         bLength                 7
> >         bDescriptorType         5
> >         bEndpointAddress     0x81  EP 1 IN
> >         bmAttributes            3
> >           Transfer Type            Interrupt
> >           Synch Type               None
> >           Usage Type               Data
> >         wMaxPacketSize     0x0008  1x 8 bytes
> >         bInterval               4
> >     Interface Descriptor:
> >       bLength                 9
> >       bDescriptorType         4
> >       bInterfaceNumber        1
> >       bAlternateSetting       0
> >       bNumEndpoints           1
> >       bInterfaceClass         3 Human Interface Device
> >       bInterfaceSubClass      1 Boot Interface Subclass
> >       bInterfaceProtocol      2 Mouse
> >       iInterface              0 
> >         HID Device Descriptor:
> >           bLength                 9
> >           bDescriptorType        33
> >           bcdHID               1.11
> >           bCountryCode            0 Not supported
> >           bNumDescriptors         1
> >           bDescriptorType        34 Report
> >           wDescriptorLength     223
> >           Report Descriptor: (length is 223)
> >             Item(Global): Usage Page, data= [ 0x01 ] 1
> >                             Generic Desktop Controls
> >             Item(Local ): Usage, data= [ 0x02 ] 2
> >                             Mouse
> >             Item(Main  ): Collection, data= [ 0x01 ] 1
> >                             Application
> >             Item(Global): Usage Page, data= [ 0x01 ] 1
> >                             Generic Desktop Controls
> >             Item(Local ): Usage, data= [ 0x02 ] 2
> >                             Mouse
> >             Item(Main  ): Collection, data= [ 0x02 ] 2
> >                             Logical
> >             Item(Global): Report ID, data= [ 0x1a ] 26
> >             Item(Local ): Usage, data= [ 0x01 ] 1
> >                             Pointer
> >             Item(Main  ): Collection, data= [ 0x00 ] 0
> >                             Physical
> >             Item(Global): Usage Page, data= [ 0x09 ] 9
> >                             Buttons
> >             Item(Local ): Usage Minimum, data= [ 0x01 ] 1
> >                             Button 1 (Primary)
> >             Item(Local ): Usage Maximum, data= [ 0x05 ] 5
> >                             Button 5
> >             Item(Global): Report Count, data= [ 0x05 ] 5
> >             Item(Global): Report Size, data= [ 0x01 ] 1
> >             Item(Global): Logical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Logical Maximum, data= [ 0x01 ] 1
> >             Item(Main  ): Input, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report Size, data= [ 0x03 ] 3
> >             Item(Global): Report Count, data= [ 0x01 ] 1
> >             Item(Main  ): Input, data= [ 0x01 ] 1
> >                             Constant Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Usage Page, data= [ 0x01 ] 1
> >                             Generic Desktop Controls
> >             Item(Local ): Usage, data= [ 0x30 ] 48
> >                             Direction-X
> >             Item(Local ): Usage, data= [ 0x31 ] 49
> >                             Direction-Y
> >             Item(Global): Report Count, data= [ 0x02 ] 2
> >             Item(Global): Report Size, data= [ 0x10 ] 16
> >             Item(Global): Logical Minimum, data= [ 0x01 0x80 ] 32769
> >             Item(Global): Logical Maximum, data= [ 0xff 0x7f ] 32767
> >             Item(Main  ): Input, data= [ 0x06 ] 6
> >                             Data Variable Relative No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Main  ): Collection, data= [ 0x02 ] 2
> >                             Logical
> >             Item(Global): Report ID, data= [ 0x12 ] 18
> >             Item(Local ): Usage, data= [ 0x48 ] 72
> >                             (null)
> >             Item(Global): Report Count, data= [ 0x01 ] 1
> >             Item(Global): Report Size, data= [ 0x02 ] 2
> >             Item(Global): Logical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Logical Maximum, data= [ 0x01 ] 1
> >             Item(Global): Physical Minimum, data= [ 0x01 ] 1
> >             Item(Global): Physical Maximum, data= [ 0x10 ] 16
> >             Item(Main  ): Feature, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report ID, data= [ 0x1a ] 26
> >             Item(Local ): Usage, data= [ 0x38 ] 56
> >                             Wheel
> >             Item(Global): Physical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Physical Maximum, data= [ 0x00 ] 0
> >             Item(Global): Report Count, data= [ 0x01 ] 1
> >             Item(Global): Report Size, data= [ 0x10 ] 16
> >             Item(Global): Logical Minimum, data= [ 0x01 0x80 ] 32769
> >             Item(Global): Logical Maximum, data= [ 0xff 0x7f ] 32767
> >             Item(Main  ): Input, data= [ 0x06 ] 6
> >                             Data Variable Relative No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Main  ): End Collection, data=none
> >             Item(Main  ): Collection, data= [ 0x02 ] 2
> >                             Logical
> >             Item(Global): Report ID, data= [ 0x12 ] 18
> >             Item(Local ): Usage, data= [ 0x48 ] 72
> >                             (null)
> >             Item(Global): Report Size, data= [ 0x02 ] 2
> >             Item(Global): Logical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Logical Maximum, data= [ 0x01 ] 1
> >             Item(Global): Physical Minimum, data= [ 0x01 ] 1
> >             Item(Global): Physical Maximum, data= [ 0x10 ] 16
> >             Item(Main  ): Feature, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Physical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Physical Maximum, data= [ 0x00 ] 0
> >             Item(Global): Report Size, data= [ 0x04 ] 4
> >             Item(Main  ): Feature, data= [ 0x01 ] 1
> >                             Constant Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report ID, data= [ 0x1a ] 26
> >             Item(Global): Usage Page, data= [ 0x0c ] 12
> >                             Consumer
> >             Item(Global): Report Count, data= [ 0x01 ] 1
> >             Item(Global): Report Size, data= [ 0x10 ] 16
> >             Item(Global): Logical Minimum, data= [ 0x01 0x80 ] 32769
> >             Item(Global): Logical Maximum, data= [ 0xff 0x7f ] 32767
> >             Item(Local ): Usage, data= [ 0x38 0x02 ] 568
> >                             AC Pan
> >             Item(Main  ): Input, data= [ 0x06 ] 6
> >                             Data Variable Relative No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Main  ): End Collection, data=none
> >             Item(Main  ): End Collection, data=none
> >             Item(Main  ): End Collection, data=none
> >             Item(Main  ): End Collection, data=none
> >             Item(Global): Usage Page, data= [ 0x0c ] 12
> >                             Consumer
> >             Item(Local ): Usage, data= [ 0x01 ] 1
> >                             Consumer Control
> >             Item(Main  ): Collection, data= [ 0x01 ] 1
> >                             Application
> >             Item(Global): Usage Page, data= [ 0x01 ] 1
> >                             Generic Desktop Controls
> >             Item(Local ): Usage, data= [ 0x02 ] 2
> >                             Mouse
> >             Item(Main  ): Collection, data= [ 0x02 ] 2
> >                             Logical
> >             Item(Global): Report ID, data= [ 0x1f ] 31
> >             Item(Global): Usage Page, data= [ 0x0c ] 12
> >                             Consumer
> >             Item(Local ): Usage, data= [ 0x38 0x02 ] 568
> >                             AC Pan
> >             Item(Global): Report Count, data= [ 0x01 ] 1
> >             Item(Global): Report Size, data= [ 0x10 ] 16
> >             Item(Global): Logical Minimum, data= [ 0x01 0x80 ] 32769
> >             Item(Global): Logical Maximum, data= [ 0xff 0x7f ] 32767
> >             Item(Main  ): Input, data= [ 0x06 ] 6
> >                             Data Variable Relative No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report ID, data= [ 0x17 ] 23
> >             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> >                             (null)
> >             Item(Local ): Usage, data= [ 0x06 0xff ] 65286
> >                             (null)
> >             Item(Local ): Usage, data= [ 0x0f 0xff ] 65295
> >                             (null)
> >             Item(Global): Logical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Logical Maximum, data= [ 0x01 ] 1
> >             Item(Global): Physical Minimum, data= [ 0x01 ] 1
> >             Item(Global): Physical Maximum, data= [ 0x10 ] 16
> >             Item(Global): Report Count, data= [ 0x02 ] 2
> >             Item(Global): Report Size, data= [ 0x02 ] 2
> >             Item(Main  ): Feature, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Local ): Usage, data= [ 0x04 0xff ] 65284
> >                             (null)
> >             Item(Global): Physical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Physical Maximum, data= [ 0x00 ] 0
> >             Item(Global): Report Count, data= [ 0x01 ] 1
> >             Item(Global): Report Size, data= [ 0x01 ] 1
> >             Item(Main  ): Feature, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report Size, data= [ 0x03 ] 3
> >             Item(Main  ): Feature, data= [ 0x01 ] 1
> >                             Constant Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Main  ): End Collection, data=none
> >             Item(Main  ): End Collection, data=none
> >       Endpoint Descriptor:
> >         bLength                 7
> >         bDescriptorType         5
> >         bEndpointAddress     0x82  EP 2 IN
> >         bmAttributes            3
> >           Transfer Type            Interrupt
> >           Synch Type               None
> >           Usage Type               Data
> >         wMaxPacketSize     0x000a  1x 10 bytes
> >         bInterval               1
> >     Interface Descriptor:
> >       bLength                 9
> >       bDescriptorType         4
> >       bInterfaceNumber        2
> >       bAlternateSetting       0
> >       bNumEndpoints           1
> >       bInterfaceClass         3 Human Interface Device
> >       bInterfaceSubClass      0 No Subclass
> >       bInterfaceProtocol      0 None
> >       iInterface              0 
> >         HID Device Descriptor:
> >           bLength                 9
> >           bDescriptorType        33
> >           bcdHID               1.11
> >           bCountryCode            0 Not supported
> >           bNumDescriptors         1
> >           bDescriptorType        34 Report
> >           wDescriptorLength     319
> >           Report Descriptor: (length is 319)
> >             Item(Global): Usage Page, data= [ 0x0c ] 12
> >                             Consumer
> >             Item(Local ): Usage, data= [ 0x01 ] 1
> >                             Consumer Control
> >             Item(Main  ): Collection, data= [ 0x01 ] 1
> >                             Application
> >             Item(Global): Report ID, data= [ 0x20 ] 32
> >             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> >                             (null)
> >             Item(Global): Logical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
> >             Item(Global): Report Size, data= [ 0x08 ] 8
> >             Item(Global): Report Count, data= [ 0x12 ] 18
> >             Item(Local ): Usage, data= [ 0x0a 0xfa ] 64010
> >                             (null)
> >             Item(Main  ): Feature, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report ID, data= [ 0x21 ] 33
> >             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> >                             (null)
> >             Item(Global): Logical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Logical Maximum, data= [ 0x01 ] 1
> >             Item(Global): Report Size, data= [ 0x01 ] 1
> >             Item(Global): Report Count, data= [ 0x10 ] 16
> >             Item(Local ): Usage Minimum, data= [ 0x10 0xfa ] 64016
> >                             (null)
> >             Item(Local ): Usage Maximum, data= [ 0x1f 0xfa ] 64031
> >                             (null)
> >             Item(Main  ): Input, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report ID, data= [ 0x28 ] 40
> >             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> >                             (null)
> >             Item(Local ): Usage Minimum, data= [ 0x10 0xfa ] 64016
> >                             (null)
> >             Item(Local ): Usage Maximum, data= [ 0x1f 0xfa ] 64031
> >                             (null)
> >             Item(Main  ): Feature, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report ID, data= [ 0x22 ] 34
> >             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> >                             (null)
> >             Item(Global): Logical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
> >             Item(Global): Report Size, data= [ 0x08 ] 8
> >             Item(Global): Report Count, data= [ 0x1a ] 26
> >             Item(Local ): Usage, data= [ 0x0a 0xfa ] 64010
> >                             (null)
> >             Item(Main  ): Feature, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report ID, data= [ 0x23 ] 35
> >             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> >                             (null)
> >             Item(Local ): Usage, data= [ 0x0a 0xfa ] 64010
> >                             (null)
> >             Item(Main  ): Feature, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report ID, data= [ 0x24 ] 36
> >             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> >                             (null)
> >             Item(Global): Report Count, data= [ 0x1f ] 31
> >             Item(Local ): Usage, data= [ 0x0a 0xfa ] 64010
> >                             (null)
> >             Item(Main  ): Feature, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report ID, data= [ 0x25 ] 37
> >             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> >                             (null)
> >             Item(Local ): Usage, data= [ 0x0a 0xfa ] 64010
> >                             (null)
> >             Item(Main  ): Feature, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report ID, data= [ 0x26 ] 38
> >             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> >                             (null)
> >             Item(Local ): Usage, data= [ 0x0a 0xfa ] 64010
> >                             (null)
> >             Item(Main  ): Feature, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report ID, data= [ 0x27 ] 39
> >             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> >                             (null)
> >             Item(Local ): Usage, data= [ 0x0a 0xfa ] 64010
> >                             (null)
> >             Item(Main  ): Input, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report ID, data= [ 0x14 ] 20
> >             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> >                             (null)
> >             Item(Global): Logical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Logical Maximum, data= [ 0x03 ] 3
> >             Item(Global): Report Size, data= [ 0x02 ] 2
> >             Item(Global): Report Count, data= [ 0x01 ] 1
> >             Item(Local ): Usage, data= [ 0x01 0xfe ] 65025
> >                             (null)
> >             Item(Main  ): Input, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report Size, data= [ 0x06 ] 6
> >             Item(Main  ): Input, data= [ 0x01 ] 1
> >                             Constant Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report ID, data= [ 0x04 ] 4
> >             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> >                             (null)
> >             Item(Global): Logical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Logical Maximum, data= [ 0x03 ] 3
> >             Item(Global): Report Size, data= [ 0x02 ] 2
> >             Item(Global): Report Count, data= [ 0x01 ] 1
> >             Item(Local ): Usage, data= [ 0x01 0xfe ] 65025
> >                             (null)
> >             Item(Main  ): Input, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report Size, data= [ 0x06 ] 6
> >             Item(Main  ): Input, data= [ 0x01 ] 1
> >                             Constant Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Main  ): End Collection, data=none
> >             Item(Global): Usage Page, data= [ 0x0c ] 12
> >                             Consumer
> >             Item(Local ): Usage, data= [ 0x01 ] 1
> >                             Consumer Control
> >             Item(Main  ): Collection, data= [ 0x01 ] 1
> >                             Application
> >             Item(Global): Report ID, data= [ 0x07 ] 7
> >             Item(Global): Usage Page, data= [ 0x0c ] 12
> >                             Consumer
> >             Item(Local ): Usage Minimum, data= [ 0x00 ] 0
> >                             Unassigned
> >             Item(Local ): Usage Maximum, data= [ 0xff 0x03 ] 1023
> >                             (null)
> >             Item(Global): Report Count, data= [ 0x01 ] 1
> >             Item(Global): Report Size, data= [ 0x10 ] 16
> >             Item(Global): Logical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Logical Maximum, data= [ 0xff 0x03 ] 1023
> >             Item(Main  ): Input, data= [ 0x00 ] 0
> >                             Data Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Usage Page, data= [ 0x07 ] 7
> >                             Keyboard
> >             Item(Local ): Usage Minimum, data= [ 0x00 ] 0
> >                             No Event
> >             Item(Local ): Usage Maximum, data= [ 0xff ] 255
> >                             (null)
> >             Item(Global): Report Size, data= [ 0x08 ] 8
> >             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
> >             Item(Main  ): Input, data= [ 0x00 ] 0
> >                             Data Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Main  ): Input, data= [ 0x01 ] 1
> >                             Constant Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
> >                             (null)
> >             Item(Local ): Usage, data= [ 0x03 0xfe ] 65027
> >                             (null)
> >             Item(Local ): Usage, data= [ 0x04 0xfe ] 65028
> >                             (null)
> >             Item(Global): Report Size, data= [ 0x01 ] 1
> >             Item(Global): Report Count, data= [ 0x02 ] 2
> >             Item(Global): Logical Maximum, data= [ 0x01 ] 1
> >             Item(Main  ): Input, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Local ): Usage, data= [ 0x05 0xff ] 65285
> >                             (null)
> >             Item(Global): Report Count, data= [ 0x01 ] 1
> >             Item(Global): Report Size, data= [ 0x05 ] 5
> >             Item(Global): Logical Maximum, data= [ 0x1f ] 31
> >             Item(Main  ): Input, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Global): Report Size, data= [ 0x01 ] 1
> >             Item(Main  ): Input, data= [ 0x01 ] 1
> >                             Constant Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Local ): Usage Minimum, data= [ 0x01 0xfd ] 64769
> >                             (null)
> >             Item(Local ): Usage Maximum, data= [ 0xff 0xfd ] 65023
> >                             (null)
> >             Item(Global): Logical Minimum, data= [ 0x01 ] 1
> >             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
> >             Item(Global): Report Size, data= [ 0x08 ] 8
> >             Item(Main  ): Input, data= [ 0x00 ] 0
> >                             Data Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Local ): Usage, data= [ 0x02 0xff ] 65282
> >                             (null)
> >             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
> >             Item(Global): Logical Minimum, data= [ 0x00 ] 0
> >             Item(Main  ): Input, data= [ 0x02 ] 2
> >                             Data Variable Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Main  ): End Collection, data=none
> >             Item(Global): Usage Page, data= [ 0xbc 0xff ] 65468
> >                             (null)
> >             Item(Local ): Usage, data= [ 0x88 ] 136
> >                             (null)
> >             Item(Main  ): Collection, data= [ 0x01 ] 1
> >                             Application
> >             Item(Global): Report ID, data= [ 0x08 ] 8
> >             Item(Local ): Usage Minimum, data= [ 0x01 ] 1
> >                             (null)
> >             Item(Local ): Usage Maximum, data= [ 0xff ] 255
> >                             (null)
> >             Item(Global): Logical Minimum, data= [ 0x01 ] 1
> >             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
> >             Item(Global): Report Count, data= [ 0x01 ] 1
> >             Item(Global): Report Size, data= [ 0x08 ] 8
> >             Item(Main  ): Input, data= [ 0x00 ] 0
> >                             Data Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Main  ): End Collection, data=none
> >             Item(Global): Usage Page, data= [ 0x01 ] 1
> >                             Generic Desktop Controls
> >             Item(Local ): Usage, data= [ 0x80 ] 128
> >                             System Control
> >             Item(Main  ): Collection, data= [ 0x01 ] 1
> >                             Application
> >             Item(Global): Report ID, data= [ 0x03 ] 3
> >             Item(Local ): Usage Minimum, data= [ 0x00 ] 0
> >                             Undefined
> >             Item(Local ): Usage Maximum, data= [ 0xff ] 255
> >                             (null)
> >             Item(Global): Logical Minimum, data= [ 0x00 ] 0
> >             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
> >             Item(Main  ): Input, data= [ 0x00 ] 0
> >                             Data Array Absolute No_Wrap Linear
> >                             Preferred_State No_Null_Position Non_Volatile 
> > Bitfield
> >             Item(Main  ): End Collection, data=none
> >       Endpoint Descriptor:
> >         bLength                 7
> >         bDescriptorType         5
> >         bEndpointAddress     0x83  EP 3 IN
> >         bmAttributes            3
> >           Transfer Type            Interrupt
> >           Synch Type               None
> >           Usage Type               Data
> >         wMaxPacketSize     0x0020  1x 32 bytes
> >         bInterval               1
> > Device Status:     0x0000
> >   (Bus Powered)
> > 
> > 

Reply via email to