Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[solved]Touchscreen (eGalax) "random" cursor movements in X
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
flowrian
n00b
n00b


Joined: 11 Aug 2011
Posts: 2

PostPosted: Thu Aug 11, 2011 2:28 pm    Post subject: [solved]Touchscreen (eGalax) "random" cursor move Reply with quote

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}"
MAKEOPTS="-j3"
CHOST="x86_64-pc-linux-gnu"
INPUT_DEVICES="evdev"
VIDEO_CARDS="intel"
USE="mmx sse sse2 sse3 ssse3 qt4 classic gallium gles ntpl egl dmx ipv6 kdrive udev xorg X sdl dri static-libs"


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

Section "InputClass"
Identifier "calibration"
MatchProduct "eGalax Inc. USB TouchController"
Option "Calibration" "0 2000 0 2000"
Option "ReportingMode" "Raw"
Option "SendCoreEvents"
EndSection


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
[ 3.142534] usb 2-2: default language 0x0409
[ 3.152543] usb 2-2: udev 3, busnum 2, minor = 130
[ 3.152552] usb 2-2: New USB device found, idVendor=0eef, idProduct=0001
[ 3.152558] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 3.152565] usb 2-2: Product: USB TouchController
[ 3.152570] usb 2-2: Manufacturer: eGalax Inc.
[ 3.152715] usb 2-2: usb_probe_device
[ 3.152723] usb 2-2: configuration #1 chosen from 1 choice
[ 3.158546] usb 2-2: adding 2-2:1.0 (config #1, interface 0)
[ 3.158692] usbtouchscreen 2-2:1.0: usb_probe_interface
[ 3.158703] usbtouchscreen 2-2:1.0: usb_probe_interface - got id
[ 3.158894] input: eGalax Inc. USB TouchController as /devices/pci0000:00/0000:00:1d.0/usb2/2-2/2-2:1.0/input/input4
[ 3.159053] drivers/usb/core/inode.c: creating file '003'
[ 3.159101] hub 3-0:1.0: state 7 ports 2 chg 0000 evt 0000
[ 3.159109] hub 5-0:1.0: state 7 ports 2 chg 0000 evt 0000
[ 3.159117] hub 2-0:1.0: state 7 ports 2 chg 0000 evt 0000
[ 3.183779] udev[937]: starting version 164


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"
[ 34.954] (**) HID 046a:0023: Applying InputClass "Keyboard1"
[ 34.954] (**) HID 046a:0023: always reports core events
[ 34.954] (**) HID 046a:0023: Device: "/dev/input/event3"
[ 34.960] (--) HID 046a:0023: Found 1 mouse buttons
[ 34.960] (--) HID 046a:0023: Found scroll wheel(s)
[ 34.960] (--) HID 046a:0023: Found relative axes
[ 34.960] (--) HID 046a:0023: Found absolute axes
[ 34.960] (--) HID 046a:0023: Found keys
[ 34.960] (II) HID 046a:0023: Configuring as mouse
[ 34.960] (II) HID 046a:0023: Configuring as keyboard
[ 34.960] (II) HID 046a:0023: Adding scrollwheel support
[ 34.960] (**) HID 046a:0023: YAxisMapping: buttons 4 and 5
[ 34.960] (**) HID 046a:0023: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[ 34.960] (II) XINPUT: Adding extended input device "HID 046a:0023" (type: KEYBOARD)
[ 34.960] (**) Option "xkb_rules" "evdev"
[ 34.960] (**) Option "xkb_model" "evdev"
[ 34.960] (**) Option "xkb_layout" "de"
[ 34.960] (**) Option "xkb_options" "terminate:ctrl_alt_bksp"
[ 34.961] (EE) HID 046a:0023: failed to initialize for relative axes.
[ 34.961] (II) HID 046a:0023: initialized for absolute axes.
[ 34.963] (II) config/udev: Adding input device eGalax Inc. USB TouchController (/dev/input/event4)
[ 34.963] (**) eGalax Inc. USB TouchController: Applying InputClass "evdev touchscreen catchall"
[ 34.963] (**) eGalax Inc. USB TouchController: Applying InputClass "calibration"
[ 34.963] (**) Option "SendCoreEvents"
[ 34.963] (**) eGalax Inc. USB TouchController: always reports core events
[ 34.963] (**) eGalax Inc. USB TouchController: Device: "/dev/input/event4"
[ 34.968] (--) eGalax Inc. USB TouchController: Found absolute axes
[ 34.968] (--) eGalax Inc. USB TouchController: Found x and y absolute axes
[ 34.968] (--) eGalax Inc. USB TouchController: Found absolute touchscreen
[ 34.968] (II) eGalax Inc. USB TouchController: Configuring as touchscreen
[ 34.968] (**) eGalax Inc. USB TouchController: YAxisMapping: buttons 4 and 5
[ 34.968] (**) eGalax Inc. USB TouchController: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[ 34.968] (II) XINPUT: Adding extended input device "eGalax Inc. USB TouchController" (type: TOUCHSCREEN)
[ 34.968] (II) eGalax Inc. USB TouchController: initialized for absolute axes.
[ 34.969] (II) config/udev: Adding input device eGalax Inc. USB TouchController (/dev/input/mouse0)
[ 34.969] (**) eGalax Inc. USB TouchController: Applying InputClass "calibration"
[ 34.969] (II) No input driver/identifier specified (ignoring)


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)]
? ? eGalax Inc. USB TouchController id=10 [slave pointer (2)]
? Virtual core keyboard id=3 [master keyboard (2)]
? Virtual core XTEST keyboard id=5 [slave keyboard (3)]
? Power Button id=6 [slave keyboard (3)]
? Sleep Button id=7 [slave keyboard (3)]
? HID 046a:0023 id=8 [slave keyboard (3)]


xinput --list 10
Quote:
eGalax Inc. USB TouchController id=10 [slave pointer (2)]
Reporting 3 classes:
Class originated from: 10
Buttons supported: 5
Button labels: Button Unknown Button Unknown Button Unknown Button Wheel Up Button Wheel Down
Button state:
Class originated from: 10
Detail for Valuator 0:
Label: Abs X
Range: 0.000000 - 2047.000000
Resolution: 10000 units/m
Mode: absolute
Current value: 400.000000
Class originated from: 10
Detail for Valuator 1:
Label: Abs Y
Range: 0.000000 - 2047.000000
Resolution: 10000 units/m
Mode: absolute
Current value: 300.000000


..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
motion a[0]=1051 a[1]=6
motion a[0]=527 a[1]=1840
motion a[0]=1575 a[1]=1316
motion a[0]=1313 a[1]=1054
motion a[0]=1051 a[1]=530
motinn a[0]=527 a[1]=6

...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...
Back to top
View user's profile Send private message
flowrian
n00b
n00b


Joined: 11 Aug 2011
Posts: 2

PostPosted: Fri Aug 12, 2011 10:16 pm    Post subject: Reply with quote

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.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum