Re: Stylus reports 1% battery

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Sep 15, 2018 at 01:59:14AM -0600, Trent Gamblin wrote:
> With an ELAN touchscreen and active stylus, the stylus reports 1% battery at
> all times. I've used several batteries including 2 brand new ones, and tried
> 2 new styluses. I noticed in the USB HID driver the possibility of ignoring
> the battery on devices by adding IDs to the code, perhaps it's a good idea
> with this device.
> 
> When I use the stylus it pops up a notification saying the battery is low.
> On Windows, I don't get any notification nor does there seem to be any way
> to check the battery level, so I think it might not be a valid value at all.
> The troubleshooting manual from Dell for the stylus simply says if the
> stylus isn't working anymore, replace the battery. I'm using a Dell Inspiron
> 5379 laptop.
> 
> lsusb -vd output is attached.

I've added the linux-input mailing list as the developers there should
be able to help you out with this better than just the USB developers
can.

lsusb output preserved below...

thanks,

greg k-h




> 
> Bus 001 Device 007: ID 04f3:2361 Elan Microelectronics Corp. 
> Device Descriptor:
>   bLength                18
>   bDescriptorType         1
>   bcdUSB               2.00
>   bDeviceClass            0 (Defined at Interface level)
>   bDeviceSubClass         0 
>   bDeviceProtocol         0 
>   bMaxPacketSize0         8
>   idVendor           0x04f3 Elan Microelectronics Corp.
>   idProduct          0x2361 
>   bcdDevice           57.13
>   iManufacturer           4 ELAN
>   iProduct               14 Touchscreen
>   iSerial                 0 
>   bNumConfigurations      1
>   Configuration Descriptor:
>     bLength                 9
>     bDescriptorType         2
>     wTotalLength           41
>     bNumInterfaces          1
>     bConfigurationValue     1
>     iConfiguration          0 
>     bmAttributes         0xe0
>       Self Powered
>       Remote Wakeup
>     MaxPower              100mA
>     Interface Descriptor:
>       bLength                 9
>       bDescriptorType         4
>       bInterfaceNumber        0
>       bAlternateSetting       0
>       bNumEndpoints           2
>       bInterfaceClass         3 Human Interface Device
>       bInterfaceSubClass      0 No Subclass
>       bInterfaceProtocol      0 None
>       iInterface              0 
>         HID Device Descriptor:
>           bLength                 9
>           bDescriptorType        33
>           bcdHID               1.10
>           bCountryCode            0 Not supported
>           bNumDescriptors         1
>           bDescriptorType        34 Report
>           wDescriptorLength    1043
>           Report Descriptor: (length is 1043)
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x02 ] 2
>                             Pen
>             Item(Main  ): Collection, data= [ 0x01 ] 1
>                             Application
>             Item(Global): Report ID, data= [ 0x07 ] 7
>             Item(Global): Physical Minimum, data= [ 0x00 ] 0
>             Item(Local ): Usage, data= [ 0x20 ] 32
>                             Stylus
>             Item(Main  ): Collection, data= [ 0x00 ] 0
>                             Physical
>             Item(Local ): Usage, data= [ 0x32 ] 50
>                             In Range
>             Item(Local ): Usage, data= [ 0x42 ] 66
>                             Tip Switch
>             Item(Local ): Usage, data= [ 0x44 ] 68
>                             Barrel Switch
>             Item(Local ): Usage, data= [ 0x3c ] 60
>                             Invert
>             Item(Local ): Usage, data= [ 0x45 ] 69
>                             Eraser
>             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= [ 0x05 ] 5
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Count, data= [ 0x03 ] 3
>             Item(Main  ): Input, data= [ 0x03 ] 3
>                             Constant Variable 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(Global): Report Size, data= [ 0x10 ] 16
>             Item(Global): Report Count, data= [ 0x01 ] 1
>             Item(Global): Push, data=none
>             Item(Global): Unit Exponent, data= [ 0x0f ] 15
>                             Unit Exponent: 15
>             Item(Global): Unit, data= [ 0x11 ] 17
>                             System: SI Linear, Unit: Centimeter
>             Item(Global): Physical Maximum, data= [ 0x26 0x01 ] 294
>             Item(Global): Logical Maximum, data= [ 0x1c 0x48 ] 18460
>             Item(Main  ): Input, data= [ 0x42 ] 66
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State Null_State Non_Volatile Bitfield
>             Item(Local ): Usage, data= [ 0x31 ] 49
>                             Direction-Y
>             Item(Global): Physical Maximum, data= [ 0xa5 0x00 ] 165
>             Item(Global): Logical Maximum, data= [ 0xa0 0x28 ] 10400
>             Item(Main  ): Input, data= [ 0x42 ] 66
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State Null_State Non_Volatile Bitfield
>             Item(Global): Pop, data=none
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x30 ] 48
>                             Tip Pressure
>             Item(Global): Logical Maximum, data= [ 0x00 0x01 ] 256
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Local ): Usage, data= [ 0x3b ] 59
>                             Battery Strength
>             Item(Global): Report Size, data= [ 0x08 ] 8
>             Item(Global): Logical Maximum, data= [ 0x64 ] 100
>             Item(Main  ): Input, data= [ 0x42 ] 66
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State Null_State Non_Volatile Bitfield
>             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
>                             (null)
>             Item(Global): Report Count, data= [ 0x02 ] 2
>             Item(Local ): Usage, data= [ 0x01 ] 1
>                             (null)
>             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(Main  ): End Collection, data=none
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x04 ] 4
>                             Touch Screen
>             Item(Main  ): Collection, data= [ 0x01 ] 1
>                             Application
>             Item(Global): Report ID, data= [ 0x01 ] 1
>             Item(Local ): Usage, data= [ 0x22 ] 34
>                             Finger
>             Item(Main  ): Collection, data= [ 0x02 ] 2
>                             Logical
>             Item(Local ): Usage, data= [ 0x42 ] 66
>                             Tip Switch
>             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= [ 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= [ 0x01 ] 1
>             Item(Main  ): Input, data= [ 0x03 ] 3
>                             Constant Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Size, data= [ 0x06 ] 6
>             Item(Local ): Usage, data= [ 0x51 ] 81
>                             Contact ID
>             Item(Global): Logical Maximum, data= [ 0x3f ] 63
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
>             Item(Global): Report Size, data= [ 0x08 ] 8
>             Item(Local ): Usage, data= [ 0x48 ] 72
>                             Width
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Local ): Usage, data= [ 0x49 ] 73
>                             Height
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Count, data= [ 0x01 ] 1
>             Item(Global): Usage Page, data= [ 0x01 ] 1
>                             Generic Desktop Controls
>             Item(Global): Push, data=none
>             Item(Global): Logical Maximum, data= [ 0x50 0x0d ] 3408
>             Item(Global): Report Size, data= [ 0x10 ] 16
>             Item(Global): Unit Exponent, data= [ 0x0f ] 15
>                             Unit Exponent: 15
>             Item(Global): Unit, data= [ 0x11 ] 17
>                             System: SI Linear, Unit: Centimeter
>             Item(Local ): Usage, data= [ 0x30 ] 48
>                             Direction-X
>             Item(Global): Physical Minimum, data= [ 0x00 ] 0
>             Item(Global): Physical Maximum, data= [ 0x26 0x01 ] 294
>             Item(Global): Report Count, data= [ 0x02 ] 2
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0x80 0x07 ] 1920
>             Item(Global): Physical Maximum, data= [ 0xa5 0x00 ] 165
>             Item(Local ): Usage, data= [ 0x31 ] 49
>                             Direction-Y
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Pop, data=none
>             Item(Main  ): End Collection, data=none
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x22 ] 34
>                             Finger
>             Item(Main  ): Collection, data= [ 0x02 ] 2
>                             Logical
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x42 ] 66
>                             Tip Switch
>             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= [ 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= [ 0x01 ] 1
>             Item(Main  ): Input, data= [ 0x03 ] 3
>                             Constant Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Size, data= [ 0x06 ] 6
>             Item(Local ): Usage, data= [ 0x51 ] 81
>                             Contact ID
>             Item(Global): Logical Maximum, data= [ 0x3f ] 63
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
>             Item(Global): Report Size, data= [ 0x08 ] 8
>             Item(Local ): Usage, data= [ 0x48 ] 72
>                             Width
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Local ): Usage, data= [ 0x49 ] 73
>                             Height
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Count, data= [ 0x01 ] 1
>             Item(Global): Usage Page, data= [ 0x01 ] 1
>                             Generic Desktop Controls
>             Item(Global): Push, data=none
>             Item(Global): Logical Maximum, data= [ 0x50 0x0d ] 3408
>             Item(Global): Report Size, data= [ 0x10 ] 16
>             Item(Global): Unit Exponent, data= [ 0x0f ] 15
>                             Unit Exponent: 15
>             Item(Global): Unit, data= [ 0x11 ] 17
>                             System: SI Linear, Unit: Centimeter
>             Item(Local ): Usage, data= [ 0x30 ] 48
>                             Direction-X
>             Item(Global): Physical Minimum, data= [ 0x00 ] 0
>             Item(Global): Physical Maximum, data= [ 0x26 0x01 ] 294
>             Item(Global): Report Count, data= [ 0x02 ] 2
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0x80 0x07 ] 1920
>             Item(Global): Physical Maximum, data= [ 0xa5 0x00 ] 165
>             Item(Local ): Usage, data= [ 0x31 ] 49
>                             Direction-Y
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Pop, data=none
>             Item(Main  ): End Collection, data=none
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x22 ] 34
>                             Finger
>             Item(Main  ): Collection, data= [ 0x02 ] 2
>                             Logical
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x42 ] 66
>                             Tip Switch
>             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= [ 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= [ 0x01 ] 1
>             Item(Main  ): Input, data= [ 0x03 ] 3
>                             Constant Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Size, data= [ 0x06 ] 6
>             Item(Local ): Usage, data= [ 0x51 ] 81
>                             Contact ID
>             Item(Global): Logical Maximum, data= [ 0x3f ] 63
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
>             Item(Global): Report Size, data= [ 0x08 ] 8
>             Item(Local ): Usage, data= [ 0x48 ] 72
>                             Width
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Local ): Usage, data= [ 0x49 ] 73
>                             Height
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Count, data= [ 0x01 ] 1
>             Item(Global): Usage Page, data= [ 0x01 ] 1
>                             Generic Desktop Controls
>             Item(Global): Push, data=none
>             Item(Global): Logical Maximum, data= [ 0x50 0x0d ] 3408
>             Item(Global): Report Size, data= [ 0x10 ] 16
>             Item(Global): Unit Exponent, data= [ 0x0f ] 15
>                             Unit Exponent: 15
>             Item(Global): Unit, data= [ 0x11 ] 17
>                             System: SI Linear, Unit: Centimeter
>             Item(Local ): Usage, data= [ 0x30 ] 48
>                             Direction-X
>             Item(Global): Physical Minimum, data= [ 0x00 ] 0
>             Item(Global): Physical Maximum, data= [ 0x26 0x01 ] 294
>             Item(Global): Report Count, data= [ 0x02 ] 2
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0x80 0x07 ] 1920
>             Item(Global): Physical Maximum, data= [ 0xa5 0x00 ] 165
>             Item(Local ): Usage, data= [ 0x31 ] 49
>                             Direction-Y
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Pop, data=none
>             Item(Main  ): End Collection, data=none
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x22 ] 34
>                             Finger
>             Item(Main  ): Collection, data= [ 0x02 ] 2
>                             Logical
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x42 ] 66
>                             Tip Switch
>             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= [ 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= [ 0x01 ] 1
>             Item(Main  ): Input, data= [ 0x03 ] 3
>                             Constant Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Size, data= [ 0x06 ] 6
>             Item(Local ): Usage, data= [ 0x51 ] 81
>                             Contact ID
>             Item(Global): Logical Maximum, data= [ 0x3f ] 63
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
>             Item(Global): Report Size, data= [ 0x08 ] 8
>             Item(Local ): Usage, data= [ 0x48 ] 72
>                             Width
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Local ): Usage, data= [ 0x49 ] 73
>                             Height
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Count, data= [ 0x01 ] 1
>             Item(Global): Usage Page, data= [ 0x01 ] 1
>                             Generic Desktop Controls
>             Item(Global): Push, data=none
>             Item(Global): Logical Maximum, data= [ 0x50 0x0d ] 3408
>             Item(Global): Report Size, data= [ 0x10 ] 16
>             Item(Global): Unit Exponent, data= [ 0x0f ] 15
>                             Unit Exponent: 15
>             Item(Global): Unit, data= [ 0x11 ] 17
>                             System: SI Linear, Unit: Centimeter
>             Item(Local ): Usage, data= [ 0x30 ] 48
>                             Direction-X
>             Item(Global): Physical Minimum, data= [ 0x00 ] 0
>             Item(Global): Physical Maximum, data= [ 0x26 0x01 ] 294
>             Item(Global): Report Count, data= [ 0x02 ] 2
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0x80 0x07 ] 1920
>             Item(Global): Physical Maximum, data= [ 0xa5 0x00 ] 165
>             Item(Local ): Usage, data= [ 0x31 ] 49
>                             Direction-Y
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Pop, data=none
>             Item(Main  ): End Collection, data=none
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x22 ] 34
>                             Finger
>             Item(Main  ): Collection, data= [ 0x02 ] 2
>                             Logical
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x42 ] 66
>                             Tip Switch
>             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= [ 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= [ 0x01 ] 1
>             Item(Main  ): Input, data= [ 0x03 ] 3
>                             Constant Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Size, data= [ 0x06 ] 6
>             Item(Local ): Usage, data= [ 0x51 ] 81
>                             Contact ID
>             Item(Global): Logical Maximum, data= [ 0x3f ] 63
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
>             Item(Global): Report Size, data= [ 0x08 ] 8
>             Item(Local ): Usage, data= [ 0x48 ] 72
>                             Width
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Local ): Usage, data= [ 0x49 ] 73
>                             Height
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Count, data= [ 0x01 ] 1
>             Item(Global): Usage Page, data= [ 0x01 ] 1
>                             Generic Desktop Controls
>             Item(Global): Push, data=none
>             Item(Global): Logical Maximum, data= [ 0x50 0x0d ] 3408
>             Item(Global): Report Size, data= [ 0x10 ] 16
>             Item(Global): Unit Exponent, data= [ 0x0f ] 15
>                             Unit Exponent: 15
>             Item(Global): Unit, data= [ 0x11 ] 17
>                             System: SI Linear, Unit: Centimeter
>             Item(Local ): Usage, data= [ 0x30 ] 48
>                             Direction-X
>             Item(Global): Physical Minimum, data= [ 0x00 ] 0
>             Item(Global): Physical Maximum, data= [ 0x26 0x01 ] 294
>             Item(Global): Report Count, data= [ 0x02 ] 2
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0x80 0x07 ] 1920
>             Item(Global): Physical Maximum, data= [ 0xa5 0x00 ] 165
>             Item(Local ): Usage, data= [ 0x31 ] 49
>                             Direction-Y
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Pop, data=none
>             Item(Main  ): End Collection, data=none
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x22 ] 34
>                             Finger
>             Item(Main  ): Collection, data= [ 0x02 ] 2
>                             Logical
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x42 ] 66
>                             Tip Switch
>             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= [ 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= [ 0x01 ] 1
>             Item(Main  ): Input, data= [ 0x03 ] 3
>                             Constant Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Size, data= [ 0x06 ] 6
>             Item(Local ): Usage, data= [ 0x51 ] 81
>                             Contact ID
>             Item(Global): Logical Maximum, data= [ 0x3f ] 63
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
>             Item(Global): Report Size, data= [ 0x08 ] 8
>             Item(Local ): Usage, data= [ 0x48 ] 72
>                             Width
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Local ): Usage, data= [ 0x49 ] 73
>                             Height
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Count, data= [ 0x01 ] 1
>             Item(Global): Usage Page, data= [ 0x01 ] 1
>                             Generic Desktop Controls
>             Item(Global): Push, data=none
>             Item(Global): Logical Maximum, data= [ 0x50 0x0d ] 3408
>             Item(Global): Report Size, data= [ 0x10 ] 16
>             Item(Global): Unit Exponent, data= [ 0x0f ] 15
>                             Unit Exponent: 15
>             Item(Global): Unit, data= [ 0x11 ] 17
>                             System: SI Linear, Unit: Centimeter
>             Item(Local ): Usage, data= [ 0x30 ] 48
>                             Direction-X
>             Item(Global): Physical Minimum, data= [ 0x00 ] 0
>             Item(Global): Physical Maximum, data= [ 0x26 0x01 ] 294
>             Item(Global): Report Count, data= [ 0x02 ] 2
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0x80 0x07 ] 1920
>             Item(Global): Physical Maximum, data= [ 0xa5 0x00 ] 165
>             Item(Local ): Usage, data= [ 0x31 ] 49
>                             Direction-Y
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Pop, data=none
>             Item(Main  ): End Collection, data=none
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x22 ] 34
>                             Finger
>             Item(Main  ): Collection, data= [ 0x02 ] 2
>                             Logical
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x42 ] 66
>                             Tip Switch
>             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= [ 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= [ 0x01 ] 1
>             Item(Main  ): Input, data= [ 0x03 ] 3
>                             Constant Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Size, data= [ 0x06 ] 6
>             Item(Local ): Usage, data= [ 0x51 ] 81
>                             Contact ID
>             Item(Global): Logical Maximum, data= [ 0x3f ] 63
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
>             Item(Global): Report Size, data= [ 0x08 ] 8
>             Item(Local ): Usage, data= [ 0x48 ] 72
>                             Width
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Local ): Usage, data= [ 0x49 ] 73
>                             Height
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Count, data= [ 0x01 ] 1
>             Item(Global): Usage Page, data= [ 0x01 ] 1
>                             Generic Desktop Controls
>             Item(Global): Push, data=none
>             Item(Global): Logical Maximum, data= [ 0x50 0x0d ] 3408
>             Item(Global): Report Size, data= [ 0x10 ] 16
>             Item(Global): Unit Exponent, data= [ 0x0f ] 15
>                             Unit Exponent: 15
>             Item(Global): Unit, data= [ 0x11 ] 17
>                             System: SI Linear, Unit: Centimeter
>             Item(Local ): Usage, data= [ 0x30 ] 48
>                             Direction-X
>             Item(Global): Physical Minimum, data= [ 0x00 ] 0
>             Item(Global): Physical Maximum, data= [ 0x26 0x01 ] 294
>             Item(Global): Report Count, data= [ 0x02 ] 2
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0x80 0x07 ] 1920
>             Item(Global): Physical Maximum, data= [ 0xa5 0x00 ] 165
>             Item(Local ): Usage, data= [ 0x31 ] 49
>                             Direction-Y
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Pop, data=none
>             Item(Main  ): End Collection, data=none
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x22 ] 34
>                             Finger
>             Item(Main  ): Collection, data= [ 0x02 ] 2
>                             Logical
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x42 ] 66
>                             Tip Switch
>             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= [ 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= [ 0x01 ] 1
>             Item(Main  ): Input, data= [ 0x03 ] 3
>                             Constant Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Size, data= [ 0x06 ] 6
>             Item(Local ): Usage, data= [ 0x51 ] 81
>                             Contact ID
>             Item(Global): Logical Maximum, data= [ 0x3f ] 63
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
>             Item(Global): Report Size, data= [ 0x08 ] 8
>             Item(Local ): Usage, data= [ 0x48 ] 72
>                             Width
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Local ): Usage, data= [ 0x49 ] 73
>                             Height
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Count, data= [ 0x01 ] 1
>             Item(Global): Usage Page, data= [ 0x01 ] 1
>                             Generic Desktop Controls
>             Item(Global): Push, data=none
>             Item(Global): Logical Maximum, data= [ 0x50 0x0d ] 3408
>             Item(Global): Report Size, data= [ 0x10 ] 16
>             Item(Global): Unit Exponent, data= [ 0x0f ] 15
>                             Unit Exponent: 15
>             Item(Global): Unit, data= [ 0x11 ] 17
>                             System: SI Linear, Unit: Centimeter
>             Item(Local ): Usage, data= [ 0x30 ] 48
>                             Direction-X
>             Item(Global): Physical Minimum, data= [ 0x00 ] 0
>             Item(Global): Physical Maximum, data= [ 0x26 0x01 ] 294
>             Item(Global): Report Count, data= [ 0x02 ] 2
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0x80 0x07 ] 1920
>             Item(Global): Physical Maximum, data= [ 0xa5 0x00 ] 165
>             Item(Local ): Usage, data= [ 0x31 ] 49
>                             Direction-Y
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Pop, data=none
>             Item(Main  ): End Collection, data=none
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x22 ] 34
>                             Finger
>             Item(Main  ): Collection, data= [ 0x02 ] 2
>                             Logical
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x42 ] 66
>                             Tip Switch
>             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= [ 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= [ 0x01 ] 1
>             Item(Main  ): Input, data= [ 0x03 ] 3
>                             Constant Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Size, data= [ 0x06 ] 6
>             Item(Local ): Usage, data= [ 0x51 ] 81
>                             Contact ID
>             Item(Global): Logical Maximum, data= [ 0x3f ] 63
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
>             Item(Global): Report Size, data= [ 0x08 ] 8
>             Item(Local ): Usage, data= [ 0x48 ] 72
>                             Width
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Local ): Usage, data= [ 0x49 ] 73
>                             Height
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Count, data= [ 0x01 ] 1
>             Item(Global): Usage Page, data= [ 0x01 ] 1
>                             Generic Desktop Controls
>             Item(Global): Push, data=none
>             Item(Global): Logical Maximum, data= [ 0x50 0x0d ] 3408
>             Item(Global): Report Size, data= [ 0x10 ] 16
>             Item(Global): Unit Exponent, data= [ 0x0f ] 15
>                             Unit Exponent: 15
>             Item(Global): Unit, data= [ 0x11 ] 17
>                             System: SI Linear, Unit: Centimeter
>             Item(Local ): Usage, data= [ 0x30 ] 48
>                             Direction-X
>             Item(Global): Physical Minimum, data= [ 0x00 ] 0
>             Item(Global): Physical Maximum, data= [ 0x26 0x01 ] 294
>             Item(Global): Report Count, data= [ 0x02 ] 2
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0x80 0x07 ] 1920
>             Item(Global): Physical Maximum, data= [ 0xa5 0x00 ] 165
>             Item(Local ): Usage, data= [ 0x31 ] 49
>                             Direction-Y
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Pop, data=none
>             Item(Main  ): End Collection, data=none
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x22 ] 34
>                             Finger
>             Item(Main  ): Collection, data= [ 0x02 ] 2
>                             Logical
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x42 ] 66
>                             Tip Switch
>             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= [ 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= [ 0x01 ] 1
>             Item(Main  ): Input, data= [ 0x03 ] 3
>                             Constant Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Size, data= [ 0x06 ] 6
>             Item(Local ): Usage, data= [ 0x51 ] 81
>                             Contact ID
>             Item(Global): Logical Maximum, data= [ 0x3f ] 63
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
>             Item(Global): Report Size, data= [ 0x08 ] 8
>             Item(Local ): Usage, data= [ 0x48 ] 72
>                             Width
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Local ): Usage, data= [ 0x49 ] 73
>                             Height
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Report Count, data= [ 0x01 ] 1
>             Item(Global): Usage Page, data= [ 0x01 ] 1
>                             Generic Desktop Controls
>             Item(Global): Push, data=none
>             Item(Global): Logical Maximum, data= [ 0x50 0x0d ] 3408
>             Item(Global): Report Size, data= [ 0x10 ] 16
>             Item(Global): Unit Exponent, data= [ 0x0f ] 15
>                             Unit Exponent: 15
>             Item(Global): Unit, data= [ 0x11 ] 17
>                             System: SI Linear, Unit: Centimeter
>             Item(Local ): Usage, data= [ 0x30 ] 48
>                             Direction-X
>             Item(Global): Physical Minimum, data= [ 0x00 ] 0
>             Item(Global): Physical Maximum, data= [ 0x26 0x01 ] 294
>             Item(Global): Report Count, data= [ 0x02 ] 2
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Logical Maximum, data= [ 0x80 0x07 ] 1920
>             Item(Global): Physical Maximum, data= [ 0xa5 0x00 ] 165
>             Item(Local ): Usage, data= [ 0x31 ] 49
>                             Direction-Y
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Global): Pop, data=none
>             Item(Main  ): End Collection, data=none
>             Item(Global): Usage Page, data= [ 0x0d ] 13
>                             Digitizer
>             Item(Local ): Usage, data= [ 0x56 ] 86
>                             (null)
>             Item(Global): Unit Exponent, data= [ 0x00 ] 0
>                             Unit Exponent: 0
>             Item(Global): Unit, data= [ 0x00 ] 0
>                             System: None, Unit: (None)
>             Item(Global): Logical Maximum, data= [ 0xff 0xff 0xff 0x7f ] 2147483647
>             Item(Global): Report Count, data= [ 0x01 ] 1
>             Item(Global): Report Size, data= [ 0x20 ] 32
>             Item(Main  ): Input, data= [ 0x02 ] 2
>                             Data Variable Absolute No_Wrap Linear
>                             Preferred_State No_Null_Position Non_Volatile Bitfield
>             Item(Local ): Usage, data= [ 0x54 ] 84
>                             Contact Count
>             Item(Global): Logical Maximum, data= [ 0x7f ] 127
>             Item(Global): Report Count, data= [ 0x01 ] 1
>             Item(Global): Report Size, 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 ID, data= [ 0x0a ] 10
>             Item(Local ): Usage, data= [ 0x55 ] 85
>                             Maximum Contact Number
>             Item(Global): Logical Maximum, data= [ 0x0a ] 10
>             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= [ 0x44 ] 68
>             Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
>                             (null)
>             Item(Local ): Usage, data= [ 0xc5 ] 197
>                             (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= [ 0x00 0x01 ] 256
>             Item(Main  ): Feature, 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= [ 0xff 0x01 ] 511
>                             (null)
>             Item(Local ): Usage, data= [ 0x01 ] 1
>                             (null)
>             Item(Main  ): Collection, data= [ 0x01 ] 1
>                             Application
>             Item(Global): Report ID, data= [ 0x02 ] 2
>             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= [ 0x40 ] 64
>             Item(Local ): Usage, data= [ 0x00 ] 0
>                             (null)
>             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= [ 0x00 0xff ] 65280
>                             (null)
>             Item(Local ): Usage, data= [ 0x01 ] 1
>                             (null)
>             Item(Main  ): Collection, data= [ 0x01 ] 1
>                             Application
>             Item(Global): Report ID, data= [ 0x03 ] 3
>             Item(Global): Report Size, data= [ 0x08 ] 8
>             Item(Global): Report Count, data= [ 0x3f ] 63
>             Item(Local ): Usage, data= [ 0x01 ] 1
>                             (null)
>             Item(Main  ): Output, 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= [ 0x01 0xff ] 65281
>                             (null)
>             Item(Local ): Usage, data= [ 0x01 ] 1
>                             (null)
>             Item(Main  ): Collection, data= [ 0x01 ] 1
>                             Application
>             Item(Global): Report ID, data= [ 0x04 ] 4
>             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= [ 0x13 ] 19
>             Item(Local ): Usage, data= [ 0x00 ] 0
>                             (null)
>             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
>       Endpoint Descriptor:
>         bLength                 7
>         bDescriptorType         5
>         bEndpointAddress     0x81  EP 1 IN
>         bmAttributes            3
>           Transfer Type            Interrupt
>           Synch Type               None
>           Usage Type               Data
>         wMaxPacketSize     0x0040  1x 64 bytes
>         bInterval               1
>       Endpoint Descriptor:
>         bLength                 7
>         bDescriptorType         5
>         bEndpointAddress     0x02  EP 2 OUT
>         bmAttributes            3
>           Transfer Type            Interrupt
>           Synch Type               None
>           Usage Type               Data
>         wMaxPacketSize     0x0040  1x 64 bytes
>         bInterval               2
> Device Status:     0x0001
>   Self Powered





[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux