touchscreen doesn't calibrate properly

Bug #426340 reported by DarkJavi
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
xf86-input-evtouch (Ubuntu)
Expired
Medium
Unassigned

Bug Description

Binary package hint: xserver-xorg-input-evtouch

Got an 7'' touchscreen that I can't manage to work properly.
Tried on Jaunty with no luck, now trying on a x64 Karmic's fresh install with all updates.

The touchscreen is recognized and it works, but I can't calibrate it properly, at first the axles are rotated and the pointer olny moves along a small part of the screen, when running the calibration tool, it moves along all the screen but not in the right direction(pressing upper left clicks middle right and so). Also if turn off and on the screen then the touchpanel back to work in the first way(axles 90º and only a small part of the screen).

This is what I've done:

apt-get-install xserver-xorg-input-evtouch
reboot

The screen is recognoised,

lsusb
------------------------------
Bus 002 Device 015: ID 0eef:0001 D-WAV Scientific Co., Ltd eGalax TouchScreen
-----------------------------------

dmesg:
------------------------------------------------------------------------------------------
[38946.712045] usb 2-4: new high speed USB device using ehci_hcd and address 14
[38946.846525] usb 2-4: configuration #1 chosen from 1 choice
[38946.849090] hub 2-4:1.0: USB hub found
[38946.849473] hub 2-4:1.0: 4 ports detected
[38947.121137] usb 2-4.2: new low speed USB device using ehci_hcd and address 15
[38947.253839] usb 2-4.2: configuration #1 chosen from 1 choice
[38947.272965] input: eGalax Inc. as /devices/pci0000:00/0000:00:04.1/usb2/2-4/2-4.2/2-4.2:1.0/input/input12
------------------------------------------------------------------------------------------

At this point the touchpad works with rotated axles and only cover 1/4 of the screen

Run the calibration tool:
/usr/lib/xf86-input-evtouch# sudo ./calibrate.sh
In the first part the x/y coordinates makes sense, X is height which goes from upside 224 to downside 1890 and Y is width wich goes from left 1921 to right 100.Then pressed enter and pointed the dots, it finish telling me that all went ok and I have to reboot for the change to take effect .After reboot calibration is wrong

This is what it trows on the terminal:
------------------------------------------------------------------------------------------------------
sudo ./calibrate.sh
/usr/bin/ev_calibrate
evalibrate located at /usr/bin/ev_calibrate
xinit located at /usr/bin/xinit
xserver located at /usr/bin/X
Creating FIFO...
Starting calibration program...

X.Org X Server 1.6.3
Release Date: 2009-7-31
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.24-23-server x86_64 Ubuntu
Current Operating System: Linux Smax 2.6.31-9-generic #29-Ubuntu SMP Sun Aug 30 17:39:26 UTC 2009 x86_64
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-2.6.31-9-generic root=UUID=299aabef-6dda-426d-b558-6a525e03321c ro quiet splash
Build Date: 04 September 2009 02:05:52AM
xorg-server 2:1.6.3-1ubuntu5 (<email address hidden>)
 Before reporting problems, check http://wiki.x.org
 to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
 (++) from command line, (!!) notice, (II) informational,
 (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.1.0.log", Time: Tue Sep 8 16:45:33 2009
(==) Using config file: "/etc/X11/xorg.conf"
State: S_UNTOUCHED Action: No Action Button: 0
State: S_TOUCHED Action: No Action Button: 0
State: S_LONGTOUCHED Action: click Button: 3
State: S_MOVING Action: No Action Button: 0
State: S_MAYBETAPPED Action: click Button: 1
State: S_ONEANDAHALFTAP Action: down Button: 3
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning: Type "ONE_LEVEL" has 1 levels, but <RALT> has 2 symbols
> Ignoring extra symbols
Errors from xkbcomp are not fatal to the X server
(EE) HID 04f3:0103: failed to initialize for relative axes.
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning: Type "ONE_LEVEL" has 1 levels, but <RALT> has 2 symbols
> Ignoring extra symbols
Errors from xkbcomp are not fatal to the X server
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning: Type "ONE_LEVEL" has 1 levels, but <RALT> has 2 symbols
> Ignoring extra symbols
Errors from xkbcomp are not fatal to the X server
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning: Type "ONE_LEVEL" has 1 levels, but <RALT> has 2 symbols
> Ignoring extra symbols
Errors from xkbcomp are not fatal to the X server
min = (161/77) max =(1922/1948)

(X0/Y0) = (39, 768)
=> dx0 = -34 / dy0 = -763
(X1/Y1) = (25, 381)
=> dx1 = 487 / dy1 = -376
(X2/Y2) = (0, 5)
=> dx2 = 1019 / dy2 = 0
(X3/Y3) = (518, 761)
=> dx3 = -513 / dy3 = -377
(X4/Y4) = (520, 389)
=> dx4 = -8 / dy4 = -5
(X5/Y5) = (509, 0)
=> dx5 = 510 / dy5 = 384
(X6/Y6) = (995, 753)
=> dx6 = -990 / dy6 = 10
(X7/Y7) = (993, 380)
=> dx7 = -481 / dy7 = 383
(X8/Y8) = (1004, 9)
=> dx8 = 15 / dy8 = 754

waiting for X server to shut down ddxSigGiveUp: Closing log

------------------------------------------------------------------------------------------------------

These numbers are also in /etc/evtouch/config, I don't see sense on that coodinates,also the max and min position is a positive number, and coordinates has negative values!
Also tried to adjust it by hand figuring out the values, and managed to get the direction in the right way but not the position. this is the options I used
-----------------------------------
MINX="151"
MINY="73"
MAXX="1500"
MAXY="1500"
X0="-850"
Y0="-850"
X1="-850"
Y1="7"
X2="-850"
Y2="850"
X3="13"
Y3="-850"
X4="13"
Y4="7"
X5="13"
Y5="850"
X6="850"
Y6="-850"
X7="850"
Y7="7"
X8="850"
Y8="850"
----------------------------------

Is the closest I've been of a working touchpanel but is still far far away from something usable

DarkJavi (darkjavi)
summary: - touchscreen 0eef:0001 doesn't calibrate properly
+ touchscreen doesn't calibrate properly
Revision history for this message
DarkJavi (darkjavi) wrote :

Found the problem!

calibration points order is different between driver and calibraton program.
For the calibration program xy0,xy1,xy2 belongs to upper-left,upper-center and upper-right but for the driver 0.1.2 belongs to upper-left,middle-left and bottom-left

Workarround:

Edit /etc/init.d/xserver-xorg-input-evtouch and change the mapping of the points with this values:
    hal_set minx $MINX
    hal_set miny $MINY
    hal_set maxx $MAXX
    hal_set maxy $MAXY
    hal_set x0 $X0
    hal_set y0 $Y0
    hal_set x1 $X3
    hal_set y1 $Y3
    hal_set x2 $X6
    hal_set y2 $Y6
    hal_set x3 $X1
    hal_set y3 $Y1
    hal_set x4 $X4
    hal_set y4 $Y4
    hal_set x5 $X7
    hal_set y5 $Y7
    hal_set x6 $X2
    hal_set y6 $Y2
    hal_set x7 $X5
    hal_set y7 $Y5
    hal_set x8 $X8
    hal_set y8 $Y8

Still have an issue when turning off the touchscreen, on resume it lost the calibration, also when resuming from hibernation.Should I open a new bug for this issue or is in topic with this?

Revision history for this message
notelopuedesimaginar (notelopuedesimaginar) wrote :

Had the same problem here. Will research into it.

Changed in xf86-input-evtouch (Ubuntu):
importance: Undecided → Medium
status: New → Confirmed
Bryce Harrington (bryce)
tags: added: karmic
Revision history for this message
Vassili Yu. Titov (vtitov) wrote :

I have a problem: after installing Kubuntu 9.10 on Panasonic CF-19 (laptop with FujitsuSiemens Touch Screen) cursor is placed rather far from touch point. I have found following solution:
1. Close X, kill kdm
2. /usr/lib/xf86-input-evtouch/calibrate.sh
3. [/etc/init.d/xserver-xorg-input-evtouch start]
4. kdm
This solution is ugly, isn't it? I have to do it every time after restart. How to calibrate it one time and forget?

Revision history for this message
johnnynyquist (johnnynyquist) wrote :

I have the same problem as Vassili Yu. Titov -- I have to reload gdm in order for the calibration settings to be read.

Might there be some problem with when/how xserver-xorg-input-evtouch is loaded? Right now it's loaded in /etc/init.d via upstart, but shouldn't it be loaded as part of /etc/X11/Xsession.d?

Revision history for this message
Bryce Harrington (bryce) wrote :

[This is an automatic notification.]

Hi DarkJavi,

This bug was reported against an earlier version of Ubuntu, can you
test if it still occurs on Lucid?

Please note we also provide technical support for older versions of
Ubuntu, but not in the bug tracker. Instead, to raise the issue through
normal support channels, please see:

    http://www.ubuntu.com/support

If you are the original reporter and can still reproduce the issue on
Lucid, please run the following command to refresh the report:

  apport-collect 426340

If you are not the original reporter, please file a new bug report, so
we can work with you as the original reporter instead (you can reference
bug 426340 in your report if you think it may be related):

  ubuntu-bug xorg

If by chance you can no longer reproduce the issue on Lucid or if you
feel it is no longer relevant, please mark the bug report 'Fix Released'
or 'Invalid' as appropriate, at the following URL:

  https://bugs.launchpad.net/ubuntu/+bug/426340

Changed in xf86-input-evtouch (Ubuntu):
status: Confirmed → Incomplete
tags: added: needs-retested-on-lucid-by-june
Revision history for this message
Bryce Harrington (bryce) wrote :

We're closing this bug since it is has been some time with no response from the original reporter. However, if the issue still exists please feel free to reopen with the requested information. Also, if you could, please test against the latest development version of Ubuntu, since this confirms the bug is one we may be able to pass upstream for help.

Changed in xf86-input-evtouch (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.