So I have got an Elo 7" USB Touchscreen. With default generic-usb
driver, the touchscreen
reports both BTN event & ABS event.
evtest shows something like:
Input device ID: bus 0x3 vendor 0x4e7 product 0x50 version 0x100
Input device name: "EloTouchSystems,Inc Elo TouchSystems 2216 AccuTouch®
USB Touchmonitor Interface"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 272 (BTN_LEFT)
Event type 3 (EV_ABS)
Event code 0 (ABS_X)
Value 1831
Min 184
Max 3932
Event code 1 (ABS_Y)
Value 1898
Min 184
Max 3932
Event code 40 (ABS_MISC)
Value 0
Min 0
Max 256
Event type 4 (EV_MSC)
Event code 4 (MSC_SCAN)
When one touches the screen, BTN press event is sent, then ABS_X/Y events
are sent for finger move, and last BTN release event is sent for finger lift.
The way the device uses BTN/ABS events make the device functionality quite
confusing and limited -- It can only be used for point-to-click without special
handling in userspace.
So I am wondering if it is better to make this device to use
hid-multitouch driver
and add quirks for :
1) set maxcontact = 1 (the device can only track 1 finger)
2) convert ABS_X/ABS_Y to MT_ABS_X/Y
3) use BTN press/release to indicate touch down/release
The benefit for doing this in my opinion is more clear and multi-touch standard
complying events for userspace. And userspace multitouch library can naturally
use the multi-touch data to do like software based multi finger
tracking, tap-to-click,
scrolling and other gestures.
--
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