I just make it works. In xorg.conf, remove the line "Option "SkipClick" "1""
I just make it works. In xorg.conf, remove the line "Option "SkipClick" "1""
and that did the trick for me
thank you very much!
I just tried Ubuntu 9.10 with the latest beta driver (2.07.3122). but it still does not work for me.
@those who got it to work:
1.) Do you really have the same screen? (lsusb says 0eef:0001 D-WAV Scientific Co., Ltd eGalax TouchScreen)
EDIT --> YES, they did
2.) If you compiled and use the tkusb module (as I do) does cat /dev/tkpanel0 output something when you touch the screen??
For me it does not.
EDIT --> YES, it should
3.) Do you have /dev/tkdat0 device?
With a very old driver version There was /dev/tkpanel0 AND /dev/tkdat0 and cat /dev/tkdat0 created output when touching, but with the current driver there is not /dev/tkdat0 for me. (this means the old driver worked, but is not compatible with current xorg ...)
EDIT --> NO, tkdat0 only needs to exist using very obsolete driver versions.
Last edited by tsg; February 7th, 2010 at 04:09 AM. Reason: Answered my own questions
HEURECA!! IT WORKS!!!! AFTER MORE THAN 1 YEAR OF RESEARCH I MADE ID - LOL!
Other than I thougt, the cause, why the touchscreen did not react, was NOT that the system somehow failed to read the data from my touchscreen, but it was the touchscreen failing to send anything!
I started to analyse the sourcecode of the beta drivers. I didn't understand too much of it, but I found a way to enable debugging output by uncommenting the line
in tkusb.h.Code:"#define _DEBUG_PRINT"
after recompiling and reloading the module I could see debug messages like the number of bytes read from the touchscreen and the methods that where called by just doing
Doing that I noticed that it actually does something and that the driver IS actually reading something.Code:tailf /var/log/messages
So I played around again with cat and xxd trying to read data from /dev/tkpanel0. After a while I found that I recieved data, but always just 6 bytes: "0A 01 41 0A 01 41".
According to the "TouchKit Software Programming Guide"
This is a status call to test if the touchscreen is working and a positive answer.
Trying to better understand the communication with the touchscreen, I created a tmpfile with hexedit containing the hex values "0A 01 44" which is the code for asking for the touchscreens firmware version and sent it to the device file
Still reading the anwers with xxd in another shell, I got the answer "2.12".Code:cat tmpfile > /dev/tkpanel0
And in the same way I also tried the "0A 01 45" command wich asks the screen for its controller type. It returned just "USB".
After that I touched the screen and first time I got tons of data on /dev/tkpanel0! Restarted the X server and the touchscreen works perfectly now (I did not try to drag/drop, but thats a minor problem).
So I think my specific touchcontroller or the firmware version of my touchscreen requieres that at least one valid command is issued from the drivers site, before the touchscreen actually starts working. But the drivers don't do so!
I could verify this by disconnecting and reconnecting the screen. After reconnecting it stopped working again and no data could be read on /dev/tkpanel0. I sent the version command again and the touchscreen immediately started to work. I could reproduce this behaviour several times now.
It's 04:00 here now so I'll go to sleep, but tomorrow I'll try to write a patch for the drivers that sends an initial command automatically on connect, or at least I will try a dirty workaround using udev to send an initial command on connect.
PWNT
hey guys check out my thread on eee user i had a lot of the same problems but ive gotten everything working perfectly i even have a guide: http://forum.eeeuser.com/viewtopic.php?id=78661
Same Problem with me
My xorg.conf is given below
Please tell me how to enable right click. This issue is now become a massive headche for me
Section "ServerLayout"
InputDevice "EETI" "SendCoreEvents"
Identifier "XFree86 Configured"
Screen 0 "Default Screen" 0 0
InputDevice "Touch0"
EndSection
Section "Device"
Identifier "Configured Video Device"
Driver "intel"
Option "monitor-LVDS" "LVDS"
Option "monitor-LVDS-1" "LVDS-1"
Option "NoDCC"
EndSection
Section "InputDevice"
Identifier "Touch0"
Driver "evtouch"
Option "device" "/dev/input/evtouch"
Option "MinX" "1"
Option "MinY" "1"
Option "MaxX" "4096"
Option "MaxY" "4096"
Option "ReportingMode" "Raw"
Option "Emulate3Buttons" "true"
Option "Emulate3Timeout" "50"
Option "SendCoreEvents" "on"
Option "MoveLimit" "0"
Option "HidOnEPC" "0"
EndSection
Section "Monitor"
Identifier "Configured Monitor"
EndSection
Section "Monitor"
Identifier "LVDS"
# Option "Ignore" "True"
EndSection
Section "Monitor"
Identifier "LVDS-1"
ModeLine "1366x768" 76.00 1366 1386 1396 1560 768 770 773 793
EndSection
Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Configured Video Device"
DefaultDepth 24
Subsection "Display"
Modes "1366x768"
EndSubsection
EndSection
### Touch Configuration Beginning ###
Section "InputDevice"
Identifier "EETI"
Driver "egalax"
Option "Device" "usbauto"
Option "Parameters" "/var/lib/eeti.param"
Option "ScreenNo" "0"
EndSection
### Touch Configuration End ###
Can't get Right click Please help
Xorg.conf file is given below
Section "ServerLayout"
InputDevice "EETI" "SendCoreEvents"
Identifier "XFree86 Configured"
Screen 0 "Default Screen" 0 0
InputDevice "Touch0"
EndSection
Section "Device"
Identifier "Configured Video Device"
Driver "intel"
Option "monitor-LVDS" "LVDS"
Option "monitor-LVDS-1" "LVDS-1"
Option "NoDCC"
EndSection
Section "InputDevice"
Identifier "Touch0"
Driver "evtouch"
Option "device" "/dev/input/evtouch"
Option "MinX" "1"
Option "MinY" "1"
Option "MaxX" "4096"
Option "MaxY" "4096"
Option "ReportingMode" "Raw"
Option "Emulate3Buttons" "true"
Option "Emulate3Timeout" "50"
Option "SendCoreEvents" "on"
Option "MoveLimit" "0"
Option "HidOnEPC" "0"
EndSection
Section "Monitor"
Identifier "Configured Monitor"
EndSection
Section "Monitor"
Identifier "LVDS"
# Option "Ignore" "True"
EndSection
Section "Monitor"
Identifier "LVDS-1"
ModeLine "1366x768" 76.00 1366 1386 1396 1560 768 770 773 793
EndSection
Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Configured Video Device"
DefaultDepth 24
Subsection "Display"
Modes "1366x768"
EndSubsection
EndSection
### Touch Configuration Beginning ###
Section "InputDevice"
Identifier "EETI"
Driver "egalax"
Option "Device" "usbauto"
Option "Parameters" "/var/lib/eeti.param"
Option "ScreenNo" "0"
EndSection
### Touch Configuration End ###
Update: eGalax on Ubuntu Lucid Lynx
I just installed Ubuntu Lucid 10.04 Beta 2 fresh. Good news is that the touchscreen now is detected out of the box! It uses evdev with the usb touchscreen. The only problem is that the axes are inverted and the calibration isn't optimal. I tried installing the new eGalax 3.0 driver from here http://home.eeti.com.tw/web20/eGalax...inuxDriver.htm the problem with installing this driver is that now it uses both the egalax driver AND evdev, so the movement is very erratic as the pointer tried to go to two places at once. I can disable the evdev driver using xinput with the following command:
This makes the eGalax driver work perfectly, but I find the eGalax driver is not as responsive as using evdev, so I removed it and have figured out how to calibrate it using evdev, and it is much more responsive.Code:xinput --set-int-prop "SLT Digital USB TouchController " "Device Enabled" 8 0
First I downoaded this tool http://www.freedesktop.org/wiki/Soft...put_calibrator , it's not available in the repositories but it's not difficult to install. First extract the archive somewhere and cd to that folder from the terminal, then we need to download the needed dependencies for the program, these are in the repository so its quite simple:
Then run these commands (making sure you have cd'ed into the folder where you extracted xinput_calibrator), there should be a file called autogen.sh in there:Code:sudo apt-get install build-essential sudo apt-get install xorg-dev sudo apt-get install libgtkmm-utils-dev
After running the first command it should tell you if there are any other missing dependencies which I may have forgotten to add. If there are none then you can run the rest. Now it's installed we're ready to calibrate! just run from the terminalCode:./autogen.sh make sudo make install
[/code]xinput_calibrator_gtkmm[code]
and a new screen appears with instructions for a 4 point calibration and after it's done the calibration is dynamically changed using xinput, and instructions are printed in the terminal on how to make the calibration permanent. I found I needed to do the calibration twice because it didn't register the flipping correctly (remember my axes were inverted), but after running it a second time the calibration was perfect.
Now I'm trying to figure out how to make the change permanent using udev, so that every time the screen is enabled it automatically sets the correct calibration, but the udev files I've made in /etc/udev/rules.d have had no effect. As it is for now I have a startup script which sets the calibration parameters when I log into my session. The only problem is if I disable the touchscreen during my session and re-enable all the settings are reset so I have to recalibrate. Also this way the screen isn't calibrated on the login screen. Here's my udev rule in /etc/udev/rules.d/
Anyone with udev experience have any ideas why this isnt working?Code:ACTION!="add|change", GOTO="xorg_touchscreen_end" KERNEL!="event*", GOTO="xorg_touchscreen_end" ATTRS{product}!="SLT Digital USB TouchController ", GOTO="xorg_touchscreen_end" ENV{x11_options.swapxy}="1" ENV{x11_options.calibration}="1960 24 191 1948" LABEL="xorg_touchscreen_end"
Cheers,
Matt
PS: Anybody know how to setup right click using evdev! This is the only thing I haven't figured out properly, Cheers again!
Last edited by matthewbpt; April 13th, 2010 at 01:13 PM.
Join giffgaff, the mobile network run by you! Click here for free sim with £5 credit http://giffgaff.com/orders/affiliate/matthewbpt
Get a dropbox account! http://db.tt/6pxH9mf
GO, MATT! You are the one.
The key here is: where the hell should I put the damned udev rule? Because xinput_calibrator does all the hard work for me!.
This is under Fedora 12, but the calibrator is spitting out the right files for Lucid. I can't wait to try Lucid!Code:[faeris@faeris ~]$ xinput_calibrator_x11 --device 11 Calibrating EVDEV driver for "eGalax INC. USB TouchController" id=11 current calibration values (from XInput): min_x=40, max_x=4017 and min_y=113, max_y=3979 Doing dynamic recalibration: Setting new calibration data: 45, 4015, 110, 3976 == Making the calibration permanent == If you have the 'xinput' tool installed, a simple way is to create a script that starts with your X session, containing the following command(s): xinput set-int-prop "eGalax INC. USB TouchController" "Evdev Axis Calibration" 32 45 4015 110 3976 If you have evdev version 2.3.0 or higher, there are 2 more ways: the tranditional way (xorg.conf) and the new way (udev rule): xorg.conf: edit /etc/X11/xorg.conf and add in the 'Section "InputDevice"' of your device: Option "Calibration" "45 4015 110 3976" udev rule: create the file '/etc/udev/rules.d/99_touchscreen.rules' with: ACTION!="add|change", GOTO="xorg_touchscreen_end" KERNEL!="event*", GOTO="xorg_touchscreen_end" ATTRS{product}!="eGalax INC. USB TouchController", GOTO="xorg_touchscreen_end" ENV{x11_options.calibration}="45 4015 110 3976" LABEL="xorg_touchscreen_end"
Edit: See the numbers above 4000? You must be experiencing the same bug I know here, in Fedora: the touchscreen is detected twice, and you are calibrating the wrong one. Rule this out with the following:
See? When I run xinput_calibrator_x11, it always chooses 12, the wrong one, I get numbers like yours (~1900-2000) and it doesn't get calibrated. When I try the other one, 11, feeding it manually like I did in my first example, it calibrates, and my numbers are ~4000.Code:[faeris@faeris ~]$ xinput_calibrator_x11 --list Device "eGalax INC. USB TouchController" id=11 Device "eGalax INC. USB TouchController" id=12
Edit 2: Sorry, Matt, but you aren't going to get right click with evdev 2.3.3 or 2.3.4. You need evdev 2.4.0 for that, and that requires X.org 1.8. Try Fedora 13.
Last edited by Alejandro Nova; May 4th, 2010 at 03:56 AM.
hi everybody (hi) i just got the TochScreen kit from DX (deealextreme)
and i'm trying to compile the driver but it says
[SPAM]
.......
xmkmf: Command not found (package XFree86-devel required)
.....
[SPAM]
My
#cat /proc/version
Linux version 2.6.32-22-generic (buildd@palmer) (gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5) ) #36-Ubuntu SMP Thu Jun 3 22:02:19 UTC 2010
I'm trying to get it wotk on Kubuntu 10.04 ( netbook remix )
before trying to compile the driver a installed this packages :
sudo apt-get install x-dev libx11-dev libxext-dev xorg-dev
# evtest /dev/input/by-id/usb-eGalax_Inc._USB_TouchController-event-if00
Input driver version is 1.0.0
Input device ID: bus 0x3 vendor 0xeef product 0x1 version 0x100
Input device name: "eGalax Inc. USB TouchController"
Supported events:
Event type 0 (Sync)
Event type 1 (Key)
Event code 330 (Touch)
Event type 3 (Absolute)
Event code 0 (X)
Value 0
Min 0
Max 2047
Event code 1 (Y)
Value 0
Min 0
Max 2047
Testing ... (interrupt to exit)
[and nothing]
does not matter what i'm doing ( scrolling , or clicking )
id does not show anything
#lsusb
[SPAM]
.....
Bus 003 Device 002: ID 0eef:0001 D-WAV Scientific Co., Ltd eGalax TouchScreen
.....
[SPAM]
hardware is ( acer aspire one 8.9` : CPU intel Atom N270 -1.6 GHz;1.5 Gigs of RAM )
and touch panel ( 8.9 inches D-WAV Scientific Co., Ltd eGalax )
any ideas ??
Bookmarks