2011-05-18 13:27:38

by Benjamin Tissoires

[permalink] [raw]
Subject: [PATCH] hid-multitouch: Add support for Lumio panels

This patch enables support for Lumio optical devices.

Signed-off-by: Benjamin Tissoires <[email protected]>
---
drivers/hid/Kconfig | 1 +
drivers/hid/hid-core.c | 1 +
drivers/hid/hid-ids.h | 3 +++
drivers/hid/hid-multitouch.c | 5 +++++
4 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig
index d9635d6..5a54b13 100644
--- a/drivers/hid/Kconfig
+++ b/drivers/hid/Kconfig
@@ -308,6 +308,7 @@ config HID_MULTITOUCH
- Hanvon dual touch panels
- Ilitek dual touch panel
- IrTouch Infrared USB panels
+ - Lumio CrystalTouch panels
- MosArt dual-touch panels
- PenMount dual touch panels
- Pixcir dual touch panels
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
index 77f27ed..8a3ae13 100644
--- a/drivers/hid/hid-core.c
+++ b/drivers/hid/hid-core.c
@@ -1411,6 +1411,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD2) },
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_SPACETRAVELLER) },
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_SPACENAVIGATOR) },
+ { HID_USB_DEVICE(USB_VENDOR_ID_LUMIO, USB_DEVICE_ID_CRYSTALTOUCH) },
{ HID_USB_DEVICE(USB_VENDOR_ID_MICROCHIP, USB_DEVICE_ID_PICOLCD) },
{ HID_USB_DEVICE(USB_VENDOR_ID_MICROCHIP, USB_DEVICE_ID_PICOLCD_BOOTLOADER) },
{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_SIDEWINDER_GV) },
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index 2e46eb2..a8c46b0 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
@@ -411,6 +411,9 @@
#define USB_DEVICE_ID_DINOVO_MINI 0xc71f
#define USB_DEVICE_ID_LOGITECH_MOMO_WHEEL2 0xca03

+#define USB_VENDOR_ID_LUMIO 0x202e
+#define USB_DEVICE_ID_CRYSTALTOUCH 0x0006
+
#define USB_VENDOR_ID_MCC 0x09db
#define USB_DEVICE_ID_MCC_PMD1024LS 0x0076
#define USB_DEVICE_ID_MCC_PMD1208LS 0x007a
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
index b21251b..ef33e2d 100644
--- a/drivers/hid/hid-multitouch.c
+++ b/drivers/hid/hid-multitouch.c
@@ -599,6 +599,11 @@ static const struct hid_device_id mt_devices[] = {
HID_USB_DEVICE(USB_VENDOR_ID_IRTOUCHSYSTEMS,
USB_DEVICE_ID_IRTOUCH_INFRARED_USB) },

+ /* Lumio panels */
+ { .driver_data = MT_CLS_CONFIDENCE_MINUS_ONE,
+ HID_USB_DEVICE(USB_VENDOR_ID_LUMIO,
+ USB_DEVICE_ID_CRYSTALTOUCH) },
+
/* MosArt panels */
{ .driver_data = MT_CLS_CONFIDENCE_MINUS_ONE,
HID_USB_DEVICE(USB_VENDOR_ID_ASUS,
--
1.7.4.4


2011-05-18 13:36:33

by Jiri Kosina

[permalink] [raw]
Subject: Re: [PATCH] hid-multitouch: Add support for Lumio panels

On Wed, 18 May 2011, Benjamin Tissoires wrote:

> This patch enables support for Lumio optical devices.

Applied, thanks Benjamin.

--
Jiri Kosina
SUSE Labs

2011-05-19 21:16:27

by Peter Korsgaard

[permalink] [raw]
Subject: Re: [PATCH] hid-multitouch: Add support for Lumio panels

>>>>> "Benjamin" == Benjamin Tissoires <[email protected]> writes:

Benjamin> This patch enables support for Lumio optical devices.
Benjamin> Signed-off-by: Benjamin Tissoires <[email protected]>

Benjamin> diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
Benjamin> index 2e46eb2..a8c46b0 100644
Benjamin> --- a/drivers/hid/hid-ids.h
Benjamin> +++ b/drivers/hid/hid-ids.h
Benjamin> @@ -411,6 +411,9 @@
Benjamin> #define USB_DEVICE_ID_DINOVO_MINI 0xc71f
Benjamin> #define USB_DEVICE_ID_LOGITECH_MOMO_WHEEL2 0xca03

Benjamin> +#define USB_VENDOR_ID_LUMIO 0x202e
Benjamin> +#define USB_DEVICE_ID_CRYSTALTOUCH 0x0006
Benjamin> +

Does this require any special configuration of the touchscreen
controller? I have a 202e:0005 device which afaik normally doesn't send
any multi touch events.

HID descriptors:

Bus 001 Device 021: ID 202e:0005
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x202e
idProduct 0x0005
bcdDevice 2.00
iManufacturer 1 LUMIO Inc
iProduct 2 LUMIO CrystalTouch ver 1.1C
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 116
bNumInterfaces 4
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
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 38
Report Descriptor: (length is 38)
Item(Global): Usage Page, data= [ 0xa0 0xff ] 65440
(null)
Item(Local ): Usage, data= [ 0x05 ] 5
(null)
Item(Main ): Collection, data= [ 0x01 ] 1
Application
Item(Local ): Usage, data= [ 0xa6 ] 166
(null)
Item(Local ): Usage, data= [ 0xa7 ] 167
(null)
Item(Global): Logical Minimum, data= [ 0x80 ] 128
Item(Global): Logical Maximum, data= [ 0x7f ] 127
Item(Global): Report Size, data= [ 0x08 ] 8
Item(Global): Report Count, data= [ 0x40 ] 64
Item(Main ): Input, data= [ 0x02 ] 2
Data Variable Absolute No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Bitfield
Item(Local ): Usage, data= [ 0x33 ] 51
(null)
Item(Global): Report Size, data= [ 0x08 ] 8
Item(Global): Report Count, data= [ 0x40 ] 64
Item(Main ): Output, data= [ 0x00 ] 0
Data Array Absolute No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Bitfield
Item(Local ): Usage, data= [ 0x33 ] 51
(null)
Item(Global): Report Size, data= [ 0x08 ] 8
Item(Global): Report Count, data= [ 0x08 ] 8
Item(Main ): Feature, 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 0x0040 1x 64 bytes
bInterval 2
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
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
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 64
Report Descriptor: (length is 64)
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= [ 0x07 ] 7
Keyboard
Item(Local ): Usage Minimum, data= [ 0xe0 ] 224
Control Left
Item(Local ): Usage Maximum, data= [ 0xe7 ] 231
GUI Right
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= [ 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 Count, data= [ 0x01 ] 1
Item(Global): Report Size, data= [ 0x08 ] 8
Item(Main ): Input, data= [ 0x03 ] 3
Constant Variable Absolute No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Bitfield
Item(Global): Report Count, data= [ 0x05 ] 5
Item(Global): Report Size, data= [ 0x01 ] 1
Item(Global): Report Count, data= [ 0x06 ] 6
Item(Global): Report Size, data= [ 0x08 ] 8
Item(Global): Logical Minimum, data= [ 0x00 ] 0
Item(Global): Logical Maximum, data= [ 0x65 ] 101
Item(Global): Usage Page, data= [ 0x07 ] 7
Keyboard
Item(Local ): Usage Minimum, data= [ 0x00 ] 0
No Event
Item(Local ): Usage Maximum, data= [ 0x65 ] 101
Keyboard Application (Windows Key for Win95 or Compose)
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= [ 0xa0 0xff ] 65440
(null)
Item(Local ): Usage, data= [ 0xa5 ] 165
(null)
Item(Global): Logical Minimum, data= [ 0x80 ] 128
Item(Global): Logical Maximum, data= [ 0x7f ] 127
Item(Global): Report Size, data= [ 0x08 ] 8
Item(Global): Report Count, data= [ 0x08 ] 8
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
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x86 EP 6 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 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 85
Report Descriptor: (length is 85)
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(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= [ 0x03 ] 3
Button 3 (Tertiary)
Item(Global): Logical Minimum, data= [ 0x00 ] 0
Item(Global): Logical Maximum, data= [ 0x01 ] 1
Item(Global): Report Count, data= [ 0x03 ] 3
Item(Global): Report Size, 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 Count, data= [ 0x01 ] 1
Item(Global): Report Size, data= [ 0x05 ] 5
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): Logical Minimum, data= [ 0x00 0x00 ] 0
Item(Global): Logical Maximum, data= [ 0xff 0x0f ] 4095
Item(Global): Physical Minimum, data= [ 0x00 0x00 ] 0
Item(Global): Physical Maximum, data= [ 0xff 0x7f ] 32767
Item(Global): Unit, data= [ 0x00 0x00 ] 0
System: None, Unit: (None)
Item(Global): Report Size, data= [ 0x10 ] 16
Item(Global): Report Count, data= [ 0x02 ] 2
Item(Main ): Input, data= [ 0x62 ] 98
Data Variable Absolute No_Wrap Linear
No_Preferred_State Null_State Non_Volatile Bitfield
Item(Global): Usage Page, data= [ 0x01 ] 1
Generic Desktop Controls
Item(Local ): Usage, data= [ 0x88 ] 136
System Menu Exit
Item(Global): Logical Minimum, data= [ 0x81 ] 129
Item(Global): Logical Maximum, data= [ 0x7f ] 127
Item(Global): Report Size, data= [ 0x08 ] 8
Item(Global): Report Count, data= [ 0x01 ] 1
Item(Main ): Input, data= [ 0x06 ] 6
Data Variable Relative No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Bitfield
Item(Global): Usage Page, data= [ 0xff ] 255
Vendor Specific
Item(Local ): Usage, data= [ 0x02 ] 2
(null)
Item(Global): Report Count, data= [ 0x02 ] 2
Item(Global): Report Size, data= [ 0x08 ] 8
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(Main ): End Collection, data=none
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x85 EP 5 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
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 89
Report Descriptor: (length is 89)
Item(Global): Usage Page, data= [ 0x0d ] 13
Digitizer
Item(Local ): Usage, data= [ 0x04 ] 4
Touch Screen
Item(Main ): Collection, data= [ 0x01 ] 1
Application
Item(Local ): Usage, data= [ 0x22 ] 34
Finger
Item(Main ): Collection, data= [ 0x00 ] 0
Physical
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 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(Local ): Usage, data= [ 0x32 ] 50
In Range
Item(Local ): Usage, data= [ 0x47 ] 71
Confidence
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): Report Count, data= [ 0x0a ] 10
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(Global): Logical Maximum, data= [ 0xff 0x7f ] 32767
Item(Global): Unit, data= [ 0x11 ] 17
System: SI Linear, Unit: Centimeter
Item(Global): Unit Exponent, data= [ 0x0e ] 14
Unit Exponent: 14
Item(Global): Physical Maximum, data= [ 0x5d 0x14 ] 5213
Item(Global): Report Size, data= [ 0x10 ] 16
Item(Global): Report Count, data= [ 0x01 ] 1
Item(Local ): Usage, data= [ 0x30 ] 48
Direction-X
Item(Main ): Input, data= [ 0x02 ] 2
Data Variable Absolute No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Bitfield
Item(Local ): Usage, data= [ 0x31 ] 49
Direction-Y
Item(Global): Physical Maximum, data= [ 0x75 0x0b ] 2933
Item(Main ): Input, data= [ 0x02 ] 2
Data Variable Absolute No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Bitfield
Item(Global): Usage Page, data= [ 0x0d ] 13
Digitizer
Item(Local ): Usage, data= [ 0x51 ] 81
Contact ID
Item(Global): Report Size, data= [ 0x10 ] 16
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(Local ): Usage, data= [ 0x55 ] 85
Maximum Contact Number
Item(Global): Logical Minimum, data= [ 0x00 ] 0
Item(Global): Logical Maximum, data= [ 0x08 ] 8
Item(Global): Report Size, data= [ 0x08 ] 8
Item(Global): Report Count, data= [ 0x01 ] 1
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(Main ): End Collection, data=none
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x87 EP 7 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 1
Device Status: 0x0001
Self Powered

--
Bye, Peter Korsgaard

2011-05-19 22:37:10

by Benjamin Tissoires

[permalink] [raw]
Subject: Re: [PATCH] hid-multitouch: Add support for Lumio panels

Hi Peter,

your device presents Contact ID, Tip Switch, In Range and Confidence.
I would say that Win 7 would treat it as a multitouch screen, so this
might work with hid-multitouch. Please note that's the first time I
see a report descriptor with only one touch reported for a multitouch
screen.

For the configuration, the device may emulate a mouse by default, and
hid-multitouch is able to switch to the multitouch mode. You will
loose the right click, but it can be enabled in gnome at least
(accessibility settings).

Can you just replace in hid-ids.h:
- #define USB_DEVICE_ID_CRYSTALTOUCH 0x0006
+ #define USB_DEVICE_ID_CRYSTALTOUCH 0x0005

and see if it's working?
If you prefer, I can make a new patch, but I'll need to know which
kernel you are running (tree and branch). A 2.6.39 and above would be
great.

Cheers,
Benjamin

On Thu, May 19, 2011 at 23:16, Peter Korsgaard <[email protected]> wrote:
>>>>>> "Benjamin" == Benjamin Tissoires <[email protected]> writes:
>
> ?Benjamin> This patch enables support for Lumio optical devices.
> ?Benjamin> Signed-off-by: Benjamin Tissoires <[email protected]>
>
> ?Benjamin> diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
> ?Benjamin> index 2e46eb2..a8c46b0 100644
> ?Benjamin> --- a/drivers/hid/hid-ids.h
> ?Benjamin> +++ b/drivers/hid/hid-ids.h
> ?Benjamin> @@ -411,6 +411,9 @@
> ?Benjamin> ?#define USB_DEVICE_ID_DINOVO_MINI ? 0xc71f
> ?Benjamin> ?#define USB_DEVICE_ID_LOGITECH_MOMO_WHEEL2 ?0xca03
>
> ?Benjamin> +#define USB_VENDOR_ID_LUMIO ? ? ? ? 0x202e
> ?Benjamin> +#define USB_DEVICE_ID_CRYSTALTOUCH ?0x0006
> ?Benjamin> +
>
> Does this require any special configuration of the touchscreen
> controller? I have a 202e:0005 device which afaik normally doesn't send
> any multi touch events.
>
> HID descriptors:
>
> Bus 001 Device 021: ID 202e:0005
> Device Descriptor:
> ?bLength ? ? ? ? ? ? ? ?18
> ?bDescriptorType ? ? ? ? 1
> ?bcdUSB ? ? ? ? ? ? ? 2.00
> ?bDeviceClass ? ? ? ? ? ?0 (Defined at Interface level)
> ?bDeviceSubClass ? ? ? ? 0
> ?bDeviceProtocol ? ? ? ? 0
> ?bMaxPacketSize0 ? ? ? ?64
> ?idVendor ? ? ? ? ? 0x202e
> ?idProduct ? ? ? ? ?0x0005
> ?bcdDevice ? ? ? ? ? ?2.00
> ?iManufacturer ? ? ? ? ? 1 LUMIO Inc
> ?iProduct ? ? ? ? ? ? ? ?2 LUMIO CrystalTouch ver 1.1C
> ?iSerial ? ? ? ? ? ? ? ? 0
> ?bNumConfigurations ? ? ?1
> ?Configuration Descriptor:
> ? ?bLength ? ? ? ? ? ? ? ? 9
> ? ?bDescriptorType ? ? ? ? 2
> ? ?wTotalLength ? ? ? ? ?116
> ? ?bNumInterfaces ? ? ? ? ?4
> ? ?bConfigurationValue ? ? 1
> ? ?iConfiguration ? ? ? ? ?0
> ? ?bmAttributes ? ? ? ? 0x80
> ? ? ?(Bus Powered)
> ? ?MaxPower ? ? ? ? ? ? ?500mA
> ? ?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 ? ? ?38
> ? ? ? ? ?Report Descriptor: (length is 38)
> ? ? ? ? ? ?Item(Global): Usage Page, data= [ 0xa0 0xff ] 65440
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?(null)
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0x05 ] 5
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?(null)
> ? ? ? ? ? ?Item(Main ?): Collection, data= [ 0x01 ] 1
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Application
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0xa6 ] 166
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?(null)
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0xa7 ] 167
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?(null)
> ? ? ? ? ? ?Item(Global): Logical Minimum, data= [ 0x80 ] 128
> ? ? ? ? ? ?Item(Global): Logical Maximum, data= [ 0x7f ] 127
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x08 ] 8
> ? ? ? ? ? ?Item(Global): Report Count, data= [ 0x40 ] 64
> ? ? ? ? ? ?Item(Main ?): Input, data= [ 0x02 ] 2
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Data Variable Absolute No_Wrap Linear
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Preferred_State No_Null_Position Non_Volatile Bitfield
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0x33 ] 51
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?(null)
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x08 ] 8
> ? ? ? ? ? ?Item(Global): Report Count, data= [ 0x40 ] 64
> ? ? ? ? ? ?Item(Main ?): Output, data= [ 0x00 ] 0
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Data Array Absolute No_Wrap Linear
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Preferred_State No_Null_Position Non_Volatile Bitfield
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0x33 ] 51
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?(null)
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x08 ] 8
> ? ? ? ? ? ?Item(Global): Report Count, data= [ 0x08 ] 8
> ? ? ? ? ? ?Item(Main ?): Feature, 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 ? ? 0x0040 ?1x 64 bytes
> ? ? ? ?bInterval ? ? ? ? ? ? ? 2
> ? ? ?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
> ? ?Interface Descriptor:
> ? ? ?bLength ? ? ? ? ? ? ? ? 9
> ? ? ?bDescriptorType ? ? ? ? 4
> ? ? ?bInterfaceNumber ? ? ? ?1
> ? ? ?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 ? ? ?64
> ? ? ? ? ?Report Descriptor: (length is 64)
> ? ? ? ? ? ?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= [ 0x07 ] 7
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Keyboard
> ? ? ? ? ? ?Item(Local ): Usage Minimum, data= [ 0xe0 ] 224
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Control Left
> ? ? ? ? ? ?Item(Local ): Usage Maximum, data= [ 0xe7 ] 231
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?GUI Right
> ? ? ? ? ? ?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= [ 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 Count, data= [ 0x01 ] 1
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x08 ] 8
> ? ? ? ? ? ?Item(Main ?): Input, data= [ 0x03 ] 3
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Constant Variable Absolute No_Wrap Linear
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Preferred_State No_Null_Position Non_Volatile Bitfield
> ? ? ? ? ? ?Item(Global): Report Count, data= [ 0x05 ] 5
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x01 ] 1
> ? ? ? ? ? ?Item(Global): Report Count, data= [ 0x06 ] 6
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x08 ] 8
> ? ? ? ? ? ?Item(Global): Logical Minimum, data= [ 0x00 ] 0
> ? ? ? ? ? ?Item(Global): Logical Maximum, data= [ 0x65 ] 101
> ? ? ? ? ? ?Item(Global): Usage Page, data= [ 0x07 ] 7
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Keyboard
> ? ? ? ? ? ?Item(Local ): Usage Minimum, data= [ 0x00 ] 0
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?No Event
> ? ? ? ? ? ?Item(Local ): Usage Maximum, data= [ 0x65 ] 101
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Keyboard Application (Windows Key for Win95 or Compose)
> ? ? ? ? ? ?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= [ 0xa0 0xff ] 65440
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?(null)
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0xa5 ] 165
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?(null)
> ? ? ? ? ? ?Item(Global): Logical Minimum, data= [ 0x80 ] 128
> ? ? ? ? ? ?Item(Global): Logical Maximum, data= [ 0x7f ] 127
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x08 ] 8
> ? ? ? ? ? ?Item(Global): Report Count, data= [ 0x08 ] 8
> ? ? ? ? ? ?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
> ? ? ?Endpoint Descriptor:
> ? ? ? ?bLength ? ? ? ? ? ? ? ? 7
> ? ? ? ?bDescriptorType ? ? ? ? 5
> ? ? ? ?bEndpointAddress ? ? 0x86 ?EP 6 IN
> ? ? ? ?bmAttributes ? ? ? ? ? ?3
> ? ? ? ? ?Transfer Type ? ? ? ? ? ?Interrupt
> ? ? ? ? ?Synch Type ? ? ? ? ? ? ? None
> ? ? ? ? ?Usage Type ? ? ? ? ? ? ? Data
> ? ? ? ?wMaxPacketSize ? ? 0x0008 ?1x 8 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 ? ? ?85
> ? ? ? ? ?Report Descriptor: (length is 85)
> ? ? ? ? ? ?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(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= [ 0x03 ] 3
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Button 3 (Tertiary)
> ? ? ? ? ? ?Item(Global): Logical Minimum, data= [ 0x00 ] 0
> ? ? ? ? ? ?Item(Global): Logical Maximum, data= [ 0x01 ] 1
> ? ? ? ? ? ?Item(Global): Report Count, data= [ 0x03 ] 3
> ? ? ? ? ? ?Item(Global): Report Size, 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 Count, data= [ 0x01 ] 1
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x05 ] 5
> ? ? ? ? ? ?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): Logical Minimum, data= [ 0x00 0x00 ] 0
> ? ? ? ? ? ?Item(Global): Logical Maximum, data= [ 0xff 0x0f ] 4095
> ? ? ? ? ? ?Item(Global): Physical Minimum, data= [ 0x00 0x00 ] 0
> ? ? ? ? ? ?Item(Global): Physical Maximum, data= [ 0xff 0x7f ] 32767
> ? ? ? ? ? ?Item(Global): Unit, data= [ 0x00 0x00 ] 0
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?System: None, Unit: (None)
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x10 ] 16
> ? ? ? ? ? ?Item(Global): Report Count, data= [ 0x02 ] 2
> ? ? ? ? ? ?Item(Main ?): Input, data= [ 0x62 ] 98
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Data Variable Absolute No_Wrap Linear
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?No_Preferred_State Null_State Non_Volatile Bitfield
> ? ? ? ? ? ?Item(Global): Usage Page, data= [ 0x01 ] 1
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Generic Desktop Controls
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0x88 ] 136
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?System Menu Exit
> ? ? ? ? ? ?Item(Global): Logical Minimum, data= [ 0x81 ] 129
> ? ? ? ? ? ?Item(Global): Logical Maximum, data= [ 0x7f ] 127
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x08 ] 8
> ? ? ? ? ? ?Item(Global): Report Count, data= [ 0x01 ] 1
> ? ? ? ? ? ?Item(Main ?): Input, data= [ 0x06 ] 6
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Data Variable Relative No_Wrap Linear
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Preferred_State No_Null_Position Non_Volatile Bitfield
> ? ? ? ? ? ?Item(Global): Usage Page, data= [ 0xff ] 255
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Vendor Specific
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0x02 ] 2
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?(null)
> ? ? ? ? ? ?Item(Global): Report Count, data= [ 0x02 ] 2
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x08 ] 8
> ? ? ? ? ? ?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(Main ?): End Collection, data=none
> ? ? ?Endpoint Descriptor:
> ? ? ? ?bLength ? ? ? ? ? ? ? ? 7
> ? ? ? ?bDescriptorType ? ? ? ? 5
> ? ? ? ?bEndpointAddress ? ? 0x85 ?EP 5 IN
> ? ? ? ?bmAttributes ? ? ? ? ? ?3
> ? ? ? ? ?Transfer Type ? ? ? ? ? ?Interrupt
> ? ? ? ? ?Synch Type ? ? ? ? ? ? ? None
> ? ? ? ? ?Usage Type ? ? ? ? ? ? ? Data
> ? ? ? ?wMaxPacketSize ? ? 0x0008 ?1x 8 bytes
> ? ? ? ?bInterval ? ? ? ? ? ? ? 1
> ? ?Interface Descriptor:
> ? ? ?bLength ? ? ? ? ? ? ? ? 9
> ? ? ?bDescriptorType ? ? ? ? 4
> ? ? ?bInterfaceNumber ? ? ? ?3
> ? ? ?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 ? ? ?89
> ? ? ? ? ?Report Descriptor: (length is 89)
> ? ? ? ? ? ?Item(Global): Usage Page, data= [ 0x0d ] 13
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Digitizer
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0x04 ] 4
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Touch Screen
> ? ? ? ? ? ?Item(Main ?): Collection, data= [ 0x01 ] 1
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Application
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0x22 ] 34
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Finger
> ? ? ? ? ? ?Item(Main ?): Collection, data= [ 0x00 ] 0
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Physical
> ? ? ? ? ? ?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 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(Local ): Usage, data= [ 0x32 ] 50
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?In Range
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0x47 ] 71
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Confidence
> ? ? ? ? ? ?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): Report Count, data= [ 0x0a ] 10
> ? ? ? ? ? ?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(Global): Logical Maximum, data= [ 0xff 0x7f ] 32767
> ? ? ? ? ? ?Item(Global): Unit, data= [ 0x11 ] 17
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?System: SI Linear, Unit: Centimeter
> ? ? ? ? ? ?Item(Global): Unit Exponent, data= [ 0x0e ] 14
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Unit Exponent: 14
> ? ? ? ? ? ?Item(Global): Physical Maximum, data= [ 0x5d 0x14 ] 5213
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x10 ] 16
> ? ? ? ? ? ?Item(Global): Report Count, data= [ 0x01 ] 1
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0x30 ] 48
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Direction-X
> ? ? ? ? ? ?Item(Main ?): Input, data= [ 0x02 ] 2
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Data Variable Absolute No_Wrap Linear
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Preferred_State No_Null_Position Non_Volatile Bitfield
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0x31 ] 49
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Direction-Y
> ? ? ? ? ? ?Item(Global): Physical Maximum, data= [ 0x75 0x0b ] 2933
> ? ? ? ? ? ?Item(Main ?): Input, data= [ 0x02 ] 2
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Data Variable Absolute No_Wrap Linear
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Preferred_State No_Null_Position Non_Volatile Bitfield
> ? ? ? ? ? ?Item(Global): Usage Page, data= [ 0x0d ] 13
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Digitizer
> ? ? ? ? ? ?Item(Local ): Usage, data= [ 0x51 ] 81
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Contact ID
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x10 ] 16
> ? ? ? ? ? ?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(Local ): Usage, data= [ 0x55 ] 85
> ? ? ? ? ? ? ? ? ? ? ? ? ? ?Maximum Contact Number
> ? ? ? ? ? ?Item(Global): Logical Minimum, data= [ 0x00 ] 0
> ? ? ? ? ? ?Item(Global): Logical Maximum, data= [ 0x08 ] 8
> ? ? ? ? ? ?Item(Global): Report Size, data= [ 0x08 ] 8
> ? ? ? ? ? ?Item(Global): Report Count, data= [ 0x01 ] 1
> ? ? ? ? ? ?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(Main ?): End Collection, data=none
> ? ? ?Endpoint Descriptor:
> ? ? ? ?bLength ? ? ? ? ? ? ? ? 7
> ? ? ? ?bDescriptorType ? ? ? ? 5
> ? ? ? ?bEndpointAddress ? ? 0x87 ?EP 7 IN
> ? ? ? ?bmAttributes ? ? ? ? ? ?3
> ? ? ? ? ?Transfer Type ? ? ? ? ? ?Interrupt
> ? ? ? ? ?Synch Type ? ? ? ? ? ? ? None
> ? ? ? ? ?Usage Type ? ? ? ? ? ? ? Data
> ? ? ? ?wMaxPacketSize ? ? 0x0008 ?1x 8 bytes
> ? ? ? ?bInterval ? ? ? ? ? ? ? 1
> Device Status: ? ? 0x0001
> ?Self Powered
>
> --
> Bye, Peter Korsgaard
> --
> To unsubscribe from this list: send the line "unsubscribe linux-input" in
> the body of a message to [email protected]
> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
>

2011-05-20 07:31:24

by Stéphane Chatty

[permalink] [raw]
Subject: Re: [PATCH] hid-multitouch: Add support for Lumio panels


Le 20 mai 2011 ? 00:37, Benjamin Tissoires a ?crit :

> Hi Peter,
>
> your device presents Contact ID, Tip Switch, In Range and Confidence.
> I would say that Win 7 would treat it as a multitouch screen, so this
> might work with hid-multitouch. Please note that's the first time I
> see a report descriptor with only one touch reported for a multitouch
> screen.

Might be the same serial protocol as in capacitive eGalax panels.

St.


2011-05-20 10:12:22

by Peter Korsgaard

[permalink] [raw]
Subject: Re: [PATCH] hid-multitouch: Add support for Lumio panels

>>>>> "Benjamin" == Benjamin Tissoires <[email protected]> writes:

Hi,

Benjamin> your device presents Contact ID, Tip Switch, In Range and
Benjamin> Confidence. I would say that Win 7 would treat it as a
Benjamin> multitouch screen, so this might work with
Benjamin> hid-multitouch. Please note that's the first time I see a
Benjamin> report descriptor with only one touch reported for a
Benjamin> multitouch screen.

Benjamin> For the configuration, the device may emulate a mouse by
Benjamin> default, and hid-multitouch is able to switch to the
Benjamin> multitouch mode. You will loose the right click, but it can
Benjamin> be enabled in gnome at least (accessibility settings).

Benjamin> Can you just replace in hid-ids.h:
Benjamin> - #define USB_DEVICE_ID_CRYSTALTOUCH 0x0006
Benjamin> + #define USB_DEVICE_ID_CRYSTALTOUCH 0x0005

Benjamin> and see if it's working? If you prefer, I can make a new
Benjamin> patch, but I'll need to know which kernel you are running
Benjamin> (tree and branch). A 2.6.39 and above would be great.

I'm on 2.6.39. The patch doesn't apply cleanly, but I've fixed it up
manually (http://peter.korsgaard.com/lumio-2.6.29.patch).

hid-multitouch does get loaded, and everything looks OK:

usb 2-1.1: new full speed USB device number 4 using uhci_hcd
hid-multitouch 0003:202E:0005.0008: hiddev0: USB HID v1.10 Device [LUMIO Inc LUMIO CrystalTouch ver 1.1C] on usb-0000:00:1d.0-1.1/input0
input: LUMIO Inc LUMIO CrystalTouch ver 1.1C as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.1/input/input18
hid-multitouch 0003:202E:0005.0009: input: USB HID v1.11 Keyboard [LUMIO Inc LUMIO CrystalTouch ver 1.1C] on usb-0000:00:1d.0-1.1/input1
input: LUMIO Inc LUMIO CrystalTouch ver 1.1C as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.2/input/input19
hid-multitouch 0003:202E:0005.000A: input: USB HID v1.11 Mouse [LUMIO Inc LUMIO CrystalTouch ver 1.1C] on usb-0000:00:1d.0-1.1/input2
input: LUMIO Inc LUMIO CrystalTouch ver 1.1C as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.3/input/input20
hid-multitouch 0003:202E:0005.000B: input: USB HID v1.11 Device [LUMIO Inc LUMIO CrystalTouch ver 1.1C] on usb-0000:00:1d.0-1.1/input3

Evdev output is also different, but it doesn't seem to ever generate any
events when I touch the screen.

Before I had:

I: Bus=0003 Vendor=202e Product=0005 Version=0111
N: Name="LUMIO Inc LUMIO CrystalTouch ver 1.1C"
P: Phys=usb-0000:00:1d.0-1.1/input1
S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.1/input/input28
U: Uniq=
H: Handlers=mac-button-emul sysrq kbd event16
B: PROP=0
B: EV=100013
B: KEY=e080ffdf01cfffff fffffffffffffffe
B: MSC=10

I: Bus=0003 Vendor=202e Product=0005 Version=0111
N: Name="LUMIO Inc LUMIO CrystalTouch ver 1.1C"
P: Phys=usb-0000:00:1d.0-1.1/input2
S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.2/input/input29
U: Uniq=
H: Handlers=mac-button-emul event17
B: PROP=0
B: EV=1f
B: KEY=70000 0 0 0 0
B: REL=200
B: ABS=3
B: MSC=10

I: Bus=0003 Vendor=202e Product=0005 Version=0111
N: Name="LUMIO Inc LUMIO CrystalTouch ver 1.1C"
P: Phys=usb-0000:00:1d.0-1.1/input3
S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.3/input/input30
U: Uniq=
H: Handlers=mac-button-emul event18
B: PROP=0
B: EV=1b
B: KEY=420 1 0 0 0 0
B: ABS=10000000003
B: MSC=10

With event16 + event18 never generating any events, and event17 giving:

Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x202e product 0x5 version 0x111
Input device name: "LUMIO Inc LUMIO CrystalTouch ver 1.1C"
Supported events:
Event type 0 (Sync)
Event type 1 (Key)
Event code 272 (LeftBtn)
Event code 273 (RightBtn)
Event code 274 (MiddleBtn)
Event type 2 (Relative)
Event code 9 (Misc)
Event type 3 (Absolute)
Event code 0 (X)
Value 650
Min 0
Max 4095
Event code 1 (Y)
Value 3221
Min 0
Max 4095
Event type 4 (Misc)
Event code 4 (ScanCode)
Testing ... (interrupt to exit)
Event: time 1305882024.934011, type 4 (Misc), code 4 (ScanCode), value 90001
Event: time 1305882024.934017, type 1 (Key), code 272 (LeftBtn), value 1
Event: time 1305882024.934029, type 3 (Absolute), code 0 (X), value 270
Event: time 1305882024.934034, type 3 (Absolute), code 1 (Y), value 1513
Event: time 1305882024.934039, type 2 (Relative), code 9 (Misc), value 1
Event: time 1305882024.934043, -------------- Report Sync ------------
Event: time 1305882024.943019, type 2 (Relative), code 9 (Misc), value 1
Event: time 1305882024.943025, -------------- Report Sync ------------
Event: time 1305882024.951998, type 3 (Absolute), code 0 (X), value 275
Event: time 1305882024.952006, type 3 (Absolute), code 1 (Y), value 1519
Event: time 1305882024.952010, type 2 (Relative), code 9 (Misc), value 1
Event: time 1305882024.952014, -------------- Report Sync ------------


Now with hid-multitouch I have:

I: Bus=0003 Vendor=202e Product=0005 Version=0111
N: Name="LUMIO Inc LUMIO CrystalTouch ver 1.1C"
P: Phys=usb-0000:00:1d.0-1.1/input1
S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.1/input/input18
U: Uniq=
H: Handlers=mac-button-emul event16
B: PROP=0
B: EV=100003
B: KEY=0

I: Bus=0003 Vendor=202e Product=0005 Version=0111
N: Name="LUMIO Inc LUMIO CrystalTouch ver 1.1C"
P: Phys=usb-0000:00:1d.0-1.1/input2
S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.2/input/input19
U: Uniq=
H: Handlers=mac-button-emul event17
B: PROP=0
B: EV=b
B: KEY=0
B: ABS=60000000000003

I: Bus=0003 Vendor=202e Product=0005 Version=0111
N: Name="LUMIO Inc LUMIO CrystalTouch ver 1.1C"
P: Phys=usb-0000:00:1d.0-1.1/input3
S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.3/input/input20
U: Uniq=
H: Handlers=mac-button-emul event18
B: PROP=0
B: EV=b
B: KEY=400 0 0 0 0 0
B: ABS=60000000000003

And event17:

Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x202e product 0x5 version 0x111
Input device name: "LUMIO Inc LUMIO CrystalTouch ver 1.1C"
Supported events:
Event type 0 (Sync)
Event type 1 (Key)
Event type 3 (Absolute)
Event code 0 (X)
Value 0
Min 0
Max 4095
Event code 1 (Y)
Value 0
Min 0
Max 4095
Event code 53 (?)
Value 0
Min 0
Max 4095
Event code 54 (?)
Value 0
Min 0
Max 4095
Testing ... (interrupt to exit)
Event: time 1305886175.641112, -------------- Report Sync ------------

And then nothing. Any idea about how to progress?

--
Bye, Peter Korsgaard

2011-05-20 13:12:55

by Benjamin Tissoires

[permalink] [raw]
Subject: Re: [PATCH] hid-multitouch: Add support for Lumio panels

Hi Peter,

I'll see with the device maker if your device should work in
multitouch. Your new evtest does not report enough multitouch things,
which is weird.

Cheers,
Benjamin

On Fri, May 20, 2011 at 12:12, Peter Korsgaard <[email protected]> wrote:
>>>>>> "Benjamin" == Benjamin Tissoires <[email protected]> writes:
>
> Hi,
>
> ?Benjamin> your device presents Contact ID, Tip Switch, In Range and
> ?Benjamin> Confidence. ?I would say that Win 7 would treat it as a
> ?Benjamin> multitouch screen, so this might work with
> ?Benjamin> hid-multitouch. Please note that's the first time I see a
> ?Benjamin> report descriptor with only one touch reported for a
> ?Benjamin> multitouch screen.
>
> ?Benjamin> For the configuration, the device may emulate a mouse by
> ?Benjamin> default, and hid-multitouch is able to switch to the
> ?Benjamin> multitouch mode. You will loose the right click, but it can
> ?Benjamin> be enabled in gnome at least (accessibility settings).
>
> ?Benjamin> Can you just replace in hid-ids.h:
> ?Benjamin> - #define USB_DEVICE_ID_CRYSTALTOUCH ?0x0006
> ?Benjamin> + #define USB_DEVICE_ID_CRYSTALTOUCH ?0x0005
>
> ?Benjamin> and see if it's working? ?If you prefer, I can make a new
> ?Benjamin> patch, but I'll need to know which kernel you are running
> ?Benjamin> (tree and branch). A 2.6.39 and above would be great.
>
> I'm on 2.6.39. The patch doesn't apply cleanly, but I've fixed it up
> manually (http://peter.korsgaard.com/lumio-2.6.29.patch).
>
> hid-multitouch does get loaded, and everything looks OK:
>
> usb 2-1.1: new full speed USB device number 4 using uhci_hcd
> hid-multitouch 0003:202E:0005.0008: hiddev0: USB HID v1.10 Device [LUMIO Inc LUMIO CrystalTouch ver 1.1C] on usb-0000:00:1d.0-1.1/input0
> input: LUMIO Inc LUMIO CrystalTouch ver 1.1C as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.1/input/input18
> hid-multitouch 0003:202E:0005.0009: input: USB HID v1.11 Keyboard [LUMIO Inc LUMIO CrystalTouch ver 1.1C] on usb-0000:00:1d.0-1.1/input1
> input: LUMIO Inc LUMIO CrystalTouch ver 1.1C as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.2/input/input19
> hid-multitouch 0003:202E:0005.000A: input: USB HID v1.11 Mouse [LUMIO Inc LUMIO CrystalTouch ver 1.1C] on usb-0000:00:1d.0-1.1/input2
> input: LUMIO Inc LUMIO CrystalTouch ver 1.1C as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.3/input/input20
> hid-multitouch 0003:202E:0005.000B: input: USB HID v1.11 Device [LUMIO Inc LUMIO CrystalTouch ver 1.1C] on usb-0000:00:1d.0-1.1/input3
>
> Evdev output is also different, but it doesn't seem to ever generate any
> events when I touch the screen.
>
> Before I had:
>
> I: Bus=0003 Vendor=202e Product=0005 Version=0111
> N: Name="LUMIO Inc LUMIO CrystalTouch ver 1.1C"
> P: Phys=usb-0000:00:1d.0-1.1/input1
> S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.1/input/input28
> U: Uniq=
> H: Handlers=mac-button-emul sysrq kbd event16
> B: PROP=0
> B: EV=100013
> B: KEY=e080ffdf01cfffff fffffffffffffffe
> B: MSC=10
>
> I: Bus=0003 Vendor=202e Product=0005 Version=0111
> N: Name="LUMIO Inc LUMIO CrystalTouch ver 1.1C"
> P: Phys=usb-0000:00:1d.0-1.1/input2
> S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.2/input/input29
> U: Uniq=
> H: Handlers=mac-button-emul event17
> B: PROP=0
> B: EV=1f
> B: KEY=70000 0 0 0 0
> B: REL=200
> B: ABS=3
> B: MSC=10
>
> I: Bus=0003 Vendor=202e Product=0005 Version=0111
> N: Name="LUMIO Inc LUMIO CrystalTouch ver 1.1C"
> P: Phys=usb-0000:00:1d.0-1.1/input3
> S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.3/input/input30
> U: Uniq=
> H: Handlers=mac-button-emul event18
> B: PROP=0
> B: EV=1b
> B: KEY=420 1 0 0 0 0
> B: ABS=10000000003
> B: MSC=10
>
> With event16 + event18 never generating any events, and event17 giving:
>
> Input driver version is 1.0.1
> Input device ID: bus 0x3 vendor 0x202e product 0x5 version 0x111
> Input device name: "LUMIO Inc LUMIO CrystalTouch ver 1.1C"
> Supported events:
> ?Event type 0 (Sync)
> ?Event type 1 (Key)
> ? ?Event code 272 (LeftBtn)
> ? ?Event code 273 (RightBtn)
> ? ?Event code 274 (MiddleBtn)
> ?Event type 2 (Relative)
> ? ?Event code 9 (Misc)
> ?Event type 3 (Absolute)
> ? ?Event code 0 (X)
> ? ? ?Value ? ?650
> ? ? ?Min ? ? ? ?0
> ? ? ?Max ? ? 4095
> ? ?Event code 1 (Y)
> ? ? ?Value ? 3221
> ? ? ?Min ? ? ? ?0
> ? ? ?Max ? ? 4095
> ?Event type 4 (Misc)
> ? ?Event code 4 (ScanCode)
> Testing ... (interrupt to exit)
> Event: time 1305882024.934011, type 4 (Misc), code 4 (ScanCode), value 90001
> Event: time 1305882024.934017, type 1 (Key), code 272 (LeftBtn), value 1
> Event: time 1305882024.934029, type 3 (Absolute), code 0 (X), value 270
> Event: time 1305882024.934034, type 3 (Absolute), code 1 (Y), value 1513
> Event: time 1305882024.934039, type 2 (Relative), code 9 (Misc), value 1
> Event: time 1305882024.934043, -------------- Report Sync ------------
> Event: time 1305882024.943019, type 2 (Relative), code 9 (Misc), value 1
> Event: time 1305882024.943025, -------------- Report Sync ------------
> Event: time 1305882024.951998, type 3 (Absolute), code 0 (X), value 275
> Event: time 1305882024.952006, type 3 (Absolute), code 1 (Y), value 1519
> Event: time 1305882024.952010, type 2 (Relative), code 9 (Misc), value 1
> Event: time 1305882024.952014, -------------- Report Sync ------------
>
>
> Now with hid-multitouch I have:
>
> I: Bus=0003 Vendor=202e Product=0005 Version=0111
> N: Name="LUMIO Inc LUMIO CrystalTouch ver 1.1C"
> P: Phys=usb-0000:00:1d.0-1.1/input1
> S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.1/input/input18
> U: Uniq=
> H: Handlers=mac-button-emul event16
> B: PROP=0
> B: EV=100003
> B: KEY=0
>
> I: Bus=0003 Vendor=202e Product=0005 Version=0111
> N: Name="LUMIO Inc LUMIO CrystalTouch ver 1.1C"
> P: Phys=usb-0000:00:1d.0-1.1/input2
> S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.2/input/input19
> U: Uniq=
> H: Handlers=mac-button-emul event17
> B: PROP=0
> B: EV=b
> B: KEY=0
> B: ABS=60000000000003
>
> I: Bus=0003 Vendor=202e Product=0005 Version=0111
> N: Name="LUMIO Inc LUMIO CrystalTouch ver 1.1C"
> P: Phys=usb-0000:00:1d.0-1.1/input3
> S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.3/input/input20
> U: Uniq=
> H: Handlers=mac-button-emul event18
> B: PROP=0
> B: EV=b
> B: KEY=400 0 0 0 0 0
> B: ABS=60000000000003
>
> And event17:
>
> Input driver version is 1.0.1
> Input device ID: bus 0x3 vendor 0x202e product 0x5 version 0x111
> Input device name: "LUMIO Inc LUMIO CrystalTouch ver 1.1C"
> Supported events:
> ?Event type 0 (Sync)
> ?Event type 1 (Key)
> ?Event type 3 (Absolute)
> ? ?Event code 0 (X)
> ? ? ?Value ? ? ?0
> ? ? ?Min ? ? ? ?0
> ? ? ?Max ? ? 4095
> ? ?Event code 1 (Y)
> ? ? ?Value ? ? ?0
> ? ? ?Min ? ? ? ?0
> ? ? ?Max ? ? 4095
> ? ?Event code 53 (?)
> ? ? ?Value ? ? ?0
> ? ? ?Min ? ? ? ?0
> ? ? ?Max ? ? 4095
> ? ?Event code 54 (?)
> ? ? ?Value ? ? ?0
> ? ? ?Min ? ? ? ?0
> ? ? ?Max ? ? 4095
> Testing ... (interrupt to exit)
> Event: time 1305886175.641112, -------------- Report Sync ------------
>
> And then nothing. Any idea about how to progress?
>
> --
> Bye, Peter Korsgaard
> --
> To unsubscribe from this list: send the line "unsubscribe linux-input" in
> the body of a message to [email protected]
> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
>

2011-05-20 13:31:50

by Peter Korsgaard

[permalink] [raw]
Subject: Re: [PATCH] hid-multitouch: Add support for Lumio panels

>>>>> "Benjamin" == Benjamin Tissoires <[email protected]> writes:

Benjamin> Hi Peter,

Benjamin> I'll see with the device maker if your device should work in
Benjamin> multitouch. Your new evtest does not report enough multitouch
Benjamin> things, which is weird.

Thanks. I haven't tried myself, but I believe it works with multitouch
in Win7.

--
Bye, Peter Korsgaard

2011-05-24 09:05:28

by Stéphane Chatty

[permalink] [raw]
Subject: Re: [PATCH] hid-multitouch: Add support for Lumio panels


Le 20 mai 2011 ? 15:31, Peter Korsgaard a ?crit :

>>>>>> "Benjamin" == Benjamin Tissoires <[email protected]> writes:
>
> Benjamin> Hi Peter,
>
> Benjamin> I'll see with the device maker if your device should work in
> Benjamin> multitouch. Your new evtest does not report enough multitouch
> Benjamin> things, which is weird.
>
> Thanks. I haven't tried myself, but I believe it works with multitouch
> in Win7.

Benjamin and I have been in touch with the Lumio people about this device and their reply is "old firmware, not supported anymore". Peter, is there a way to upgrade your firmware?

Cheers,

St.

2011-05-24 11:38:51

by Peter Korsgaard

[permalink] [raw]
Subject: Re: [PATCH] hid-multitouch: Add support for Lumio panels

>>>>> "Stéphane" == Stéphane Chatty <[email protected]> writes:

Hi,

Stéphane> Benjamin and I have been in touch with the Lumio people about
Stéphane> this device and their reply is "old firmware, not supported
Stéphane> anymore". Peter, is there a way to upgrade your firmware?

Thanks. I've not been directly involved with this project earlier or in
communication with Lumio, so I'm not 100% sure if this controller board
is able to handle new firmware. This configuration uses 2 cameras, but
we also have another setup with 4 cameras (where multitouch has been
verified under Win7). That one uses a different controller board, and
its firmware uses product ID 6 like on your setup.

I'll try to contact Lumio to verify.

--
Bye, Peter Korsgaard