Elo TouchSystems touchscreen support? (04e7:0022)

9 messages, 3 authors, 2011-02-02 · open the first message on its own page

Elo TouchSystems touchscreen support? (04e7:0022)

From: Bastien Nocera <hadess@hadess.net>
Date: 2011-01-31 14:54:52

Heya,

Built into my Lenovo A700 all-in-one is a touchscreen. lsusb says:
$ lsusb | grep -i touch
Bus 002 Device 006: ID 04e7:0022 Elo TouchSystems 

The touchscreen "works", in that tapping it will create a click event,
though that click event is always in the top left of the screen.

Full output of lsusb -vvv attached.

Anybody with ideas as to what I'm missing, or whether that particular
device is supported?

Using kernel 2.6.38-rc2-git5 (from Fedora rawhide).

Cheers

Re: Elo TouchSystems touchscreen support? (04e7:0022)

From: Henrik Rydberg <hidden>
Date: 2011-01-31 21:27:33

Hi Bastien,
Built into my Lenovo A700 all-in-one is a touchscreen. lsusb says:
$ lsusb | grep -i touch
Bus 002 Device 006: ID 04e7:0022 Elo TouchSystems
I take it this is a dual-touch device?
The touchscreen "works", in that tapping it will create a click event,
though that click event is always in the top left of the screen.
This is quite common for HID multitouch devices without proper driver
support. Sometimes using the HID_MULTI_INPUT quirk helps. Check
usbhid/hid-quirks.c for examples.
Full output of lsusb -vvv attached.

Anybody with ideas as to what I'm missing, or whether that particular
device is supported?
You probably noted already that the 04e7:0020 device is listed in
usbhid. Unless the device claims to be win7 compliant (implying
patching up hid-multitouch), going with the evtouch X driver might get
you a bit on the way. Or - god forbid - the binary blob drivers...
Using kernel 2.6.38-rc2-git5 (from Fedora rawhide).
The serial elo driver has not been updated since 2007...

Cheers,
Henrik

Re: Elo TouchSystems touchscreen support? (04e7:0022)

From: Benjamin Tissoires <hidden>
Date: 2011-02-01 09:00:13

Hi Bastien, Henrik,

On Mon, Jan 31, 2011 at 22:28, Henrik Rydberg [off-list ref] wrote:
Hi Bastien,
quoted
Built into my Lenovo A700 all-in-one is a touchscreen. lsusb says:
$ lsusb | grep -i touch
Bus 002 Device 006: ID 04e7:0022 Elo TouchSystems
I take it this is a dual-touch device?
quoted
The touchscreen "works", in that tapping it will create a click event,
though that click event is always in the top left of the screen.
This is quite common for HID multitouch devices without proper driver
support. Sometimes using the HID_MULTI_INPUT quirk helps. Check
usbhid/hid-quirks.c for examples.
quoted
Full output of lsusb -vvv attached.

Anybody with ideas as to what I'm missing, or whether that particular
device is supported?
You probably noted already that the 04e7:0020 device is listed in
usbhid. Unless the device claims to be win7 compliant (implying
patching up hid-multitouch), going with the evtouch X driver might get
you a bit on the way. Or - god forbid - the binary blob drivers...
To know if the device is "win7 compliant" or not, we need the full
output of lsusb (with the report descriptors).
You need to tell usbhid to release the device before calling lsusb -v.

Please use the script at
http://lii-enac.fr/en/architecture/linux-input/report.py
and run, as root: python report.py > descriptors.txt

This will do the job. You can then send us the descriptors.txt, and we
will see what we can do.
quoted
Using kernel 2.6.38-rc2-git5 (from Fedora rawhide).
If your device is "win7 compliant" you will have to recompile a new kernel.

Cheers,
Benjamin
The serial elo driver has not been updated since 2007...

Cheers,
Henrik
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Re: Elo TouchSystems touchscreen support? (04e7:0022)

From: Bastien Nocera <hadess@hadess.net>
Date: 2011-02-01 12:02:39

On Tue, 2011-02-01 at 10:00 +0100, Benjamin Tissoires wrote:
Hi Bastien, Henrik,

On Mon, Jan 31, 2011 at 22:28, Henrik Rydberg [off-list ref] wrote:
quoted
Hi Bastien,
quoted
Built into my Lenovo A700 all-in-one is a touchscreen. lsusb says:
$ lsusb | grep -i touch
Bus 002 Device 006: ID 04e7:0022 Elo TouchSystems
I take it this is a dual-touch device?
quoted
The touchscreen "works", in that tapping it will create a click event,
though that click event is always in the top left of the screen.
This is quite common for HID multitouch devices without proper driver
support. Sometimes using the HID_MULTI_INPUT quirk helps. Check
usbhid/hid-quirks.c for examples.
quoted
Full output of lsusb -vvv attached.

Anybody with ideas as to what I'm missing, or whether that particular
device is supported?
You probably noted already that the 04e7:0020 device is listed in
usbhid. Unless the device claims to be win7 compliant (implying
patching up hid-multitouch), going with the evtouch X driver might get
you a bit on the way. Or - god forbid - the binary blob drivers...
To know if the device is "win7 compliant" or not, we need the full
output of lsusb (with the report descriptors).
You need to tell usbhid to release the device before calling lsusb -v.

Please use the script at
http://lii-enac.fr/en/architecture/linux-input/report.py
and run, as root: python report.py > descriptors.txt

This will do the job. You can then send us the descriptors.txt, and we
will see what we can do.
Attached (with the rest of the input devices stripped).
quoted
quoted
Using kernel 2.6.38-rc2-git5 (from Fedora rawhide).
If your device is "win7 compliant" you will have to recompile a new kernel.
That's alright, I've done this before ;)

Re: Elo TouchSystems touchscreen support? (04e7:0022)

From: Benjamin Tissoires <hidden>
Date: 2011-02-01 13:25:53

On Tue, Feb 1, 2011 at 13:01, Bastien Nocera [off-list ref] wrote:
On Tue, 2011-02-01 at 10:00 +0100, Benjamin Tissoires wrote:
quoted
Hi Bastien, Henrik,

On Mon, Jan 31, 2011 at 22:28, Henrik Rydberg [off-list ref] wrote:
quoted
Hi Bastien,
quoted
Built into my Lenovo A700 all-in-one is a touchscreen. lsusb says:
$ lsusb | grep -i touch
Bus 002 Device 006: ID 04e7:0022 Elo TouchSystems
I take it this is a dual-touch device?
quoted
The touchscreen "works", in that tapping it will create a click event,
though that click event is always in the top left of the screen.
This is quite common for HID multitouch devices without proper driver
support. Sometimes using the HID_MULTI_INPUT quirk helps. Check
usbhid/hid-quirks.c for examples.
quoted
Full output of lsusb -vvv attached.

Anybody with ideas as to what I'm missing, or whether that particular
device is supported?
You probably noted already that the 04e7:0020 device is listed in
usbhid. Unless the device claims to be win7 compliant (implying
patching up hid-multitouch), going with the evtouch X driver might get
you a bit on the way. Or - god forbid - the binary blob drivers...
To know if the device is "win7 compliant" or not, we need the full
output of lsusb (with the report descriptors).
You need to tell usbhid to release the device before calling lsusb -v.

Please use the script at
http://lii-enac.fr/en/architecture/linux-input/report.py
and run, as root: python report.py > descriptors.txt

This will do the job. You can then send us the descriptors.txt, and we
will see what we can do.
Attached (with the rest of the input devices stripped).
quoted
quoted
quoted
Using kernel 2.6.38-rc2-git5 (from Fedora rawhide).
If your device is "win7 compliant" you will have to recompile a new kernel.
That's alright, I've done this before ;)
Hi Bastian,

well, apparently your device should be supported by hid-multitouch.

We will have to do this in two passes:
1) we enable it with hid-multitouch to be able to understand the protocol.
2) we tune the driver in order not making useless operations in the kernel.


First pass:
- please get the branch multitouch of jiri's tree (at
http://git.kernel.org/?p=linux/kernel/git/jikos/hid.git;a=shortlog;h=refs/heads/multitouch)
- then apply the attached patch (git am
0001-hid-multitouch-Introduce-Elo-TouchSystems-2515-Intel.patch)
- get your config from your current kernel (check that hid-multitouch
is enabled as a module)
- compile, install, reboot
- Now your device should still work and must be handled by hid-multitouch
if it's the case:
- mount -t debugfs none /sys/kernel/debug
- tail -f -n0 /sys/kernel/debug/hid/0003:04e7:0022:*/events | tee
logs_04e7_0022.txt

do one finger move on the screen, release
do 2 fingers move on the screen, release the first finger, then the second.

hit Ctrl-C in the terminal (lots of debug info should have been printed).

And send me the logs_04e7_0022.txt to got to the second pass.

Thanks,
Benjamin

Re: Elo TouchSystems touchscreen support? (04e7:0022)

From: Bastien Nocera <hadess@hadess.net>
Date: 2011-02-02 12:42:52

On Tue, 2011-02-01 at 14:25 +0100, Benjamin Tissoires wrote:
<snip>
First pass:
- please get the branch multitouch of jiri's tree (at
http://git.kernel.org/?p=linux/kernel/git/jikos/hid.git;a=shortlog;h=refs/heads/multitouch)
- then apply the attached patch (git am
0001-hid-multitouch-Introduce-Elo-TouchSystems-2515-Intel.patch)
- get your config from your current kernel (check that hid-multitouch
is enabled as a module)
- compile, install, reboot
That's where I hit a problem. It seems that the kernel on which that
branch is based has broken cgroups support (it panics on startup).

Would your patch, or a patchset be available to apply to the close to
Linus tree Fedora rawhide kernel?
- Now your device should still work and must be handled by hid-multitouch
if it's the case:
As soon as I manage to get it to boot, I'll be doing that :)

Cheers

Re: Elo TouchSystems touchscreen support? (04e7:0022)

From: Benjamin Tissoires <hidden>
Date: 2011-02-02 13:18:38

On Wed, Feb 2, 2011 at 13:42, Bastien Nocera [off-list ref] wrote:
On Tue, 2011-02-01 at 14:25 +0100, Benjamin Tissoires wrote:
<snip>
quoted
First pass:
- please get the branch multitouch of jiri's tree (at
http://git.kernel.org/?p=linux/kernel/git/jikos/hid.git;a=shortlog;h=refs/heads/multitouch)
- then apply the attached patch (git am
0001-hid-multitouch-Introduce-Elo-TouchSystems-2515-Intel.patch)
- get your config from your current kernel (check that hid-multitouch
is enabled as a module)
- compile, install, reboot
That's where I hit a problem. It seems that the kernel on which that
branch is based has broken cgroups support (it panics on startup).

Would your patch, or a patchset be available to apply to the close to
Linus tree Fedora rawhide kernel?
Hi Bastien,

Sorry for that. Attached a new version that bumps a Linus' 2.6.38-rc2
or 2.6.38-rc3 to Jiri's tree and applies the patch above.

If it's still not working, I'll send you the files directly ;)
quoted
- Now your device should still work and must be handled by hid-multitouch
if it's the case:
As soon as I manage to get it to boot, I'll be doing that :)
Cool ;)

Cheers,
Benjamin

Re: Elo TouchSystems touchscreen support? (04e7:0022)

From: Benjamin Tissoires <hidden>
Date: 2011-02-02 13:20:01

With the patch this time.... ;)

On Wed, Feb 2, 2011 at 14:18, Benjamin Tissoires
[off-list ref] wrote:
On Wed, Feb 2, 2011 at 13:42, Bastien Nocera [off-list ref] wrote:
quoted
On Tue, 2011-02-01 at 14:25 +0100, Benjamin Tissoires wrote:
<snip>
quoted
First pass:
- please get the branch multitouch of jiri's tree (at
http://git.kernel.org/?p=linux/kernel/git/jikos/hid.git;a=shortlog;h=refs/heads/multitouch)
- then apply the attached patch (git am
0001-hid-multitouch-Introduce-Elo-TouchSystems-2515-Intel.patch)
- get your config from your current kernel (check that hid-multitouch
is enabled as a module)
- compile, install, reboot
That's where I hit a problem. It seems that the kernel on which that
branch is based has broken cgroups support (it panics on startup).

Would your patch, or a patchset be available to apply to the close to
Linus tree Fedora rawhide kernel?
Hi Bastien,

Sorry for that. Attached a new version that bumps a Linus' 2.6.38-rc2
or 2.6.38-rc3 to Jiri's tree and applies the patch above.

If it's still not working, I'll send you the files directly ;)
quoted
quoted
- Now your device should still work and must be handled by hid-multitouch
if it's the case:
As soon as I manage to get it to boot, I'll be doing that :)
Cool ;)

Cheers,
Benjamin

Re: Elo TouchSystems touchscreen support? (04e7:0022)

From: Henrik Rydberg <hidden>
Date: 2011-02-01 13:34:30

quoted
Please use the script at
http://lii-enac.fr/en/architecture/linux-input/report.py
and run, as root: python report.py > descriptors.txt

This will do the job. You can then send us the descriptors.txt, and we
will see what we can do.
Attached (with the rest of the input devices stripped).
Good good, looks like there is a digitizer in there, with tipswitch,
inrange, contactid, x, y and contactcount. Paching up hid-multitouch
(and adding the device to the hid-core special device list) might
actually do it.

Cheers,
Henrik
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help