Touchscreen troubles

Tias tias at ulyssis.org
Sun Dec 13 09:05:23 PST 2009


Hey Petr,

Petr Štetiar wrote:
> Tias <tias at ulyssis.org> [2009-12-12 23:36:07]:
> 
>> Hi Petr,
> 
> Hi Tias,
> 
>> If you think it is related to calibration, you can try 
>> xinput_calibrator. Its a generic touchscreen calibration utility (still 
>> depends on GTK-mm for now, will be fixed in the next version):
>> http://www.freedesktop.org/wiki/Software/xinput_calibrator
> 
> Thanks, I've modified it little bit to get it working, pls see attached
> patches:
> 
> custom-device.patch: Allows you to specify which device use want calibrate,
> it's necessary if you've more devices. In current state it tries to configure
> last device found and in my case it wasn't touchscreen device.
> 
> new-values-evdev.patch: In current state it prints out xorg.conf settings for
> evtouch driver, so I modified it and now it prints correct values for evdev
> driver also, plus commandline values for xinput set-int-prop.

Thanks for the patches. Normally the calibrator checks if you have an 
EvDev driver (in CalibratorEvdev::check_driver) and already prints those 
things. It's kind of strange that it did not detect you were using 
evdev. It checks for the same properties as the command line xinput 
set-int-prop settings, so I don't understand what goes wrong ?


>> It calibrates the Xorg driver (and the values that the X server 
>> receives). You report calibrating from the values of the kernel, maybe 
>> using a user-space tool will solve your problem ?
> 
> I tried values from xinput_calibrator after calibration, but the situation is
> same as it was before, I still can't access bottom-right part of screen and
> it's even worse with this values, because now the touches in top-left area are
> bit off few points, pointer movement doesn't match touches.

Make sure you set xinput set-int-prop "..." "Evdev Axis Calibration" 32 
0 before calibrating (as it does not correctly detect your current 
calibration values).
Although that it really does seem to be a deeper issue then a wrong 
calibration...

> What do you mean by user-space tool?

Not calibrating the kernel values (by doing printk), but calibrating the 
Xorg driver (as you are currently doing).

>> If you want to find out what the X server thinks of your touchscreen 
>> actions, install xinput and run:
>>  > xinput test "TS name"
>> you can also check the output of
>>  > xinput query-state "TS name"
>> to find out the exact coordinates of your touches.
>> (this will probably be similar to the 'xidump' you mentioned though)
> 
> Yes, I tried that also before, but it's same, seems like correct values which
> match kernel values. I'll try to dig into Xserver code to find out what's
> going on.  My 22" touchscreen is 16:10, shouldn't that be a problem?

I have no idea if there are any limits on screen size or ratio...


Looking at your original email, I see you are using Xorg server 1.6.0 
with evdev 2.3.2 manually compiled. It might just be a version thing of 
course. I would definitely try it on a recent system with a standard 
setup too.


g,T

> Thanks a lot for your suggestions.
> 
> -- ynezz
> 



More information about the xorg mailing list