touchscreen doesn't calibrate properly
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
xf86-input-evtouch (Ubuntu) |
Expired
|
Medium
|
Unassigned |
Bug Description
Binary package hint: xserver-
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-
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/
-------
At this point the touchpad works with rotated axles and only cover 1/4 of the screen
Run the calibration tool:
/usr/lib/
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/
evalibrate located at /usr/bin/
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=
Build Date: 04 September 2009 02:05:52AM
xorg-server 2:1.6.3-1ubuntu5 (<email address hidden>)
Before reporting problems, check http://
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/
(==) Using config file: "/etc/X11/
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/
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
summary: |
- touchscreen 0eef:0001 doesn't calibrate properly + touchscreen doesn't calibrate properly |
Changed in xf86-input-evtouch (Ubuntu): | |
importance: | Undecided → Medium |
status: | New → Confirmed |
tags: | added: karmic |
Found the problem!
calibration points order is different between driver and calibraton program. upper-center and upper-right but for the driver 0.1.2 belongs to upper-left, middle- left and bottom-left
For the calibration program xy0,xy1,xy2 belongs to upper-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?