Bug 21725 - 16" eGalax USB Touchscreen Not Working Properly
Summary: 16" eGalax USB Touchscreen Not Working Properly
Alias: None
Product: xorg
Classification: Unclassified
Component: Input/evdev (show other bugs)
Version: 7.4 (2008.09)
Hardware: x86 (IA32) All
: medium normal
Assignee: Peter Hutterer
QA Contact: Xorg Project Team
Depends on:
Reported: 2009-05-13 15:50 UTC by Pat Suwalski
Modified: 2016-10-26 05:49 UTC (History)
1 user (show)

See Also:
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)

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.