I have a HP tx1003au laptop and the thing that I like most about it is the touchscreen. I have been using Ubuntu since the last few years and making the touchscreen work has always been difficult. It takes a few day of web searching and a lot of failed effort before it starts working.
When Ubuntu 10.04 was launched a few days ago, I knew that I had a few days of work ahead of me. But the temptation to upgrade to the newest version of Ubuntu is always too much to resist. After installation, I found that though touch was registered, the movement of the pointer was restricted to the top left corner of the screen. I had to work on it for two days before coming up with a solution that worked. Before telling you how I made it work, I want you to know that I am a Linux user and not a Linux expert. Secondly, I found everything on the Internet and I did not come up with anything new. But I could not find everything in one place. That's why I decided to write this simple how-to.
I followed the steps mentioned below :
1. Enter the following command in a terminal:
sudo apt-get install xserver-xorg-input-evtouch
2. Get eGalax touchscreen driver from
http://home.eeti.com.tw/web20/eGalaxTouchDriver/linuxDriver.htm
3. Install the driver by using the following command
sudo sh setup.sh
I selected option 3 (USB) during installation and chose yes when asked to blacklist.
4. Reboot
5. Now a new problem arises. When you touch the screen you can see two pointers. To fix this you need to add the command given below to your Startup Programs (System > Preferences > Startup Applications). You can give whatever name and comment you like in the Startup Program window.
xinput --set-int-prop "eGalax INC. USB TouchController" "Device Enabled" 8 0
(If your xinput device is not eGalax INC. USB TouchController then you may need to replace it with the exact name of your device. Use the command xinput --list which displays a list of your xinput devices.)
6. The xorg.conf file needs to be edited. Open the file using sudo gedit /etc/X11/xorg.conf and change the value of option SkipClick to 0.
8. Reboot.
9. Calibrate using the following command:
eGalaxTouch
The touchscreen should be working now. I tried a number of things before coming up with this fix. Some of the things which did not work for me are:
- TouchKit drive installed properly but could not find the touchscreen controller.
- Blacklisting usbtouchscreen in /etc/modprobe.d/blacklist.conf did not work.
- Installing eGaxal beta driver caused problems with nVidia driver.