# [solved]Touchscreen (eGalax)  "random" cursor movements in X

## flowrian

Dear community,

I have just installed a fresh copy of 64bit Gentoo on my Intel Atom board (Intel D510MO) along the installation instructions at gentoo.org. The board is connected to a trouchscreen produced by the Taiwanese company Onetouch and identified itself as "eGalax Inc. USB TouchController".

I did emerge the xorg-server along with the xorg drivers "evdev" and "intel".

To test the whole thing I installed twm. The touchscreen is using the usbtouchscreen kernel driver and the evdev X-driver.

The problem now is, that the touchscreen seems to report absolutely radom values to the X server. It's not that they are not calibrated, they just seem to be totally random. If I touch one and the same point on the screen several times, the coordinates move totally crazy around.

Four additional intersting facts:

a) The screen worked fine on a Gentoo 32-bit installation I did some time ago (with kernel 2.6.36-gentoo-r5 and X-Org 1.9.5)

b) The hardware is ok (I tested it on a Windows PC where it works fine)

c) I tried downgrading from X-org 1.10.2 to 1.9.5 but the problem remained

d) The old (working) version of X detected the toruchscreen as "TABLET" and/or "MOUSE" where the new version says it is a "TOUCHSCREEN"

My USE flags / make.conf:

 *Quote:*   

> 
> 
> CFLAGS="-O2 -pipe"
> 
> CXXFLAGS="${CFLAGS}"
> ...

 

My xorg.conf is basically empty. I tried also the following configuration:

 *Quote:*   

> 
> 
> Section "InputClass"
> 
>         Identifier "calibration"
> ...

 

Here some log excepts:

dmesg

 *Quote:*   

> 
> 
> [    2.995048] usb 2-2: new full speed USB device number 3 using uhci_hcd
> 
> [    3.138539] usb 2-2: skipped 1 descriptor after interface
> ...

 

Xorg.log:

 *Quote:*   

> 
> 
> [    34.954] (II) config/udev: Adding input device HID 046a:0023 (/dev/input/event3)
> 
> [    34.954] (**) HID 046a:0023: Applying InputClass "evdev keyboard catchall"
> ...

 

xinput --list

 *Quote:*   

> ? Virtual core pointer                          id=2    [master pointer  (3)]
> 
> ?   ? Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
> 
> ?   ? HID 046a:0023                             id=9    [slave  pointer  (2)]
> ...

 

xinput --list 10

 *Quote:*   

> eGalax Inc. USB TouchController                 id=10   [slave  pointer  (2)]
> 
>         Reporting 3 classes:
> 
>                 Class originated from: 10
> ...

 

..and some values that are output using "xinput --test 10" and tapping on ONE AND THE SAME POINT all the time:

 *Quote:*   

> 
> 
> motion a[0]=1575 a[1]=530
> 
> motion a[0]=1313 a[1]=792
> ...

 

...so there seems to be kind of a pattern behind this...

I'm stuck. Anyone got any idea how to investigate this further? I can provide additional logs or anything else you might need...

----------

## flowrian

Solution: The kernel driver "usbtoucscreen" grabbed the device, although it does not understand what the screen sends. Deactivating the usbtouchscreen driver in the kernel solved the problem!

Refer also to https://lists.linux-foundation.org/pipermail/bugme-new/2010-March/024328.html.

----------

