|Summary:||16" eGalax USB Touchscreen Not Working Properly|
|Product:||xorg||Reporter:||Pat Suwalski <pat>|
|Component:||Input/evdev||Assignee:||Peter Hutterer <peter.hutterer>|
|Status:||RESOLVED WONTFIX||QA Contact:||Xorg Project Team <xorg-team>|
|i915 platform:||i915 features:|
Description Pat Suwalski 2009-05-13 15:50:39 UTC
16" eGalax USB Touchscreen USB ID: 0eef:0001 Using evdev, touchscreen comes up and more or less. Calibration does not work. Moreover, when a drag event happens, the cursor is not moved relative to the position. It appears that the code is entering the relative-positioning block and doing additional offsetting. The device is identified as a TOUCHPAD rather than TOUCHSCREEN: (II) config/hal: Adding input device eGalax Inc. USB TouchController (II) LoadModule: "evdev" (II) Loading /usr/lib/xorg/modules/input//evdev_drv.so (II) Module evdev: vendor="X.Org Foundation" compiled for 1.6.1, module version = 2.2.99 Module class: X.Org XInput Driver ABI class: X.Org XInput driver, version 4.0 (**) eGalax Inc. USB TouchController: always reports core events (**) eGalax Inc. USB TouchController: Device: "/dev/input/event5" (II) eGalax Inc. USB TouchController: Found 2 mouse buttons (II) eGalax Inc. USB TouchController: found absolute axes (II) eGalax Inc. USB TouchController: Found x and y absolute axes (II) eGalax Inc. USB TouchController: Found absolute touchpad (II) eGalax Inc. USB TouchController: Configuring as touchpad (**) eGalax Inc. USB TouchController: YAxisMapping: buttons 4 and 5 (**) eGalax Inc. USB TouchController: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200 (II) XINPUT: Adding extended input device "eGalax Inc. USB TouchController" (type: TOUCHPAD) (**) eGalax Inc. USB TouchController: (accel) keeping acceleration scheme 1 (**) eGalax Inc. USB TouchController: (accel) filter chain progression: 2.00 (**) eGalax Inc. USB TouchController: (accel) filter stage 0: 20.00 ms (**) eGalax Inc. USB TouchController: (accel) set acceleration profile 0 Commenting out the following lines in the event handler (~line 468): abs = 0; rel = 1; Prevents the code from entering the relative motion code, making it drag linearly. Additionally, the above leaves "abs" set, making the code enter the next block ("abs && pEvdev->tool"), where the calibration settings take effect. The reason the touchscreen is detected as a touchpad appears to be that "num_buttons" is 2, as per the above X.org log output. Forcing it down the path of being set as a touchscreen does not affect the behaviour.
Comment 1 Peter Hutterer 2009-05-18 06:03:29 UTC
Please download http://people.freedesktop.org/~whot/evtest.c, compile it with "gcc -o evtest evtest.c" and then run it as root with "./evtest /dev/input/eventX" where X is the number for the device. You can get the number by looking at /proc/bus/input/devices. Use the device to reproduce the issue and attach the output of evtest here.
Comment 2 Peter Hutterer 2009-08-17 22:15:00 UTC
Comment 3 Peter Hutterer 2009-09-02 19:54:47 UTC
INVALID, no response since may.
Comment 4 Pat Suwalski 2009-09-02 21:29:23 UTC
Well, via eMail you blamed the kernel and that was that, and I was on vacation until just recently. But, I suppose it can be marked invalid.
Comment 5 Peter Hutterer 2009-09-02 21:37:12 UTC
christ, I forgot about our email exchange. Sorry. Can you please summarize what was in the emails and attach it here so that it's archived in one place.
Comment 6 Pat Suwalski 2009-09-02 22:28:34 UTC
Turns out it was my bad memory. The exchange I'm thinking of is actually bug #21726. This bug is basically a dupe of that one, though the symptoms are slightly different. I haven't had a chance to try these with a newer kernel, but I'll be surprised if anything's changed.
Comment 7 Peter Hutterer 2016-10-26 05:49:37 UTC
7 years later... let's admit this won't get fixed (if it still is a problem)