[HOWTO] Elantech touchpad working right on Samsung R540 JT01
Posted: 06 Feb 2011, 12:40
Let's hope someone doesn't have to spend 3 days looking for answers all over the web and that this information is helpful for others.
Ubuntu 10.10 Maverick Meerkat (and Linux Mint 10 and other Ubuntu derivates) comes with the 2.6.35-25 kernel, so it already has the Elantech patches. What they do is to make it able to load synaptics drivers and work their way from there.
Here's the thing though, sometimes even on a fresh install, it won't get recognized as such or will not function properly.
Sometimes it will get recognized as a normal PS/2 mouse, and if it gets recognized as it should, most things will not work right, so here's a collection of configurations I used to make it work ok (and you'll have to excuse my English but it's 4:17 AM, I'm posting this before I forget about it).
Using the Graphical Interface:
1. Press Alt+F2, write "gksudo gedit" and press enter
2. Copy and paste the following:
3. Save it with this name "psmouse.conf" in /etc/modprobe.d
What this does is creates a configuration file that tells the psmouse module that we have an elantech touchpad. Now...
4. Open in the same gedit window the file xorg.conf. It's located at /etc/X11
5a. Make a backup of xorg.conf... Just in case something goes wrong.
5b. We'll append the following JUST BEFORE the line that reads Section "Server Layout":
With this we establish some rules to make it work more or less properly, setting the right surface area, enabling vertical and horizontal edges scrolling, palm detection (so it turns itself off while we write, and on again after a bit of time -200 ms by default, afaik-), disabling vertical and horizontal two touch finger scrolling (swiping with two fingers), turning off any guest mice and circular scrolling.
DON'T SAVE!!!! We aren't done yet!
6. There should be a Seciont "ServerLayout" under what you just wrote, so inside of it, just before the line that reads EndSection, you'll have to add this line:
What we did here call up our configuration settings so they get picked up by Ubuntu.
KEEP READING, when you finish reading you'll come back here and reboot.
Now, we could leave some options out of xorg.conf so that we can configure them... You could use the mouse configurations settings that comes with Ubuntu, or you could use gpointing-device-settings which offers more options.
So you could change STEP 5b like this
and then set up your options using gpointing-device-settings... but we need to install it first, like this:
a) Open up a terminal (it's easier, trust me). It's at Applications >> Accessories >> Terminal
b) Copy and paste there the following (right click or CTRL+SHIFT+V):
Once it's finished you can close the terminal.
You'll find it on the System >> Preferences >> Pointing Devices menu entry
That's it. You now have a fully functioning Elantech touchpad, completely configured, with properly working vertical and horizontal scrolling, palm detection and multitouch abilities.
It works for me, it could work for you... PLEASE BACK UP your xorg.conf file before modifying it.
OMG! I messed up xorg.conf: Restart linux in Safe Graphical Mode, it will allow you to look for your backup and replace your changes easily
OMG! It doesn't work... This is not intended to be a guide for anything other than Samsung R540 JT01, so proceed at your own risk.
OMG! It works!: YAAAY!
Ubuntu 10.10 Maverick Meerkat (and Linux Mint 10 and other Ubuntu derivates) comes with the 2.6.35-25 kernel, so it already has the Elantech patches. What they do is to make it able to load synaptics drivers and work their way from there.
Here's the thing though, sometimes even on a fresh install, it won't get recognized as such or will not function properly.
Sometimes it will get recognized as a normal PS/2 mouse, and if it gets recognized as it should, most things will not work right, so here's a collection of configurations I used to make it work ok (and you'll have to excuse my English but it's 4:17 AM, I'm posting this before I forget about it).
Using the Graphical Interface:
1. Press Alt+F2, write "gksudo gedit" and press enter
2. Copy and paste the following:
Code: Select all
options psmouse force_elantech=1
What this does is creates a configuration file that tells the psmouse module that we have an elantech touchpad. Now...
4. Open in the same gedit window the file xorg.conf. It's located at /etc/X11
5a. Make a backup of xorg.conf... Just in case something goes wrong.
5b. We'll append the following JUST BEFORE the line that reads Section "Server Layout":
Code: Select all
Section "InputDevice"
Identifier "Elantech Touchpad"
Driver "synaptics"
Option "BottomEdge" "590"
Option "RightEdge" "750"
Option "VertEdgeScroll" "true"
Option "HorizEdgeScroll" "true"
Option "VertTwoFingerScroll" "false"
Option "HorizTwoFingerScroll" "false"
Option "UpDownScrolling" "true"
Option "LeftRightScrolling" "true"
Option "GuestMouseOff" "true"
Option "CircularScrolling" "false"
Option "PalmDetect" "true"
Option "PalmMinWidth" "1"
Option "PalmMinZ" "2"
Option "TouchpadOff" "0"
Option "VertScrollDelta" "100"
EndSection
DON'T SAVE!!!! We aren't done yet!
6. There should be a Seciont "ServerLayout" under what you just wrote, so inside of it, just before the line that reads EndSection, you'll have to add this line:
7. Now save it.InputDevice "Elantech Touchpad"
What we did here call up our configuration settings so they get picked up by Ubuntu.
KEEP READING, when you finish reading you'll come back here and reboot.
Now, we could leave some options out of xorg.conf so that we can configure them... You could use the mouse configurations settings that comes with Ubuntu, or you could use gpointing-device-settings which offers more options.
So you could change STEP 5b like this
Code: Select all
Section "InputDevice"
Identifier "Elantech Touchpad"
Driver "synaptics"
Option "BottomEdge" "590"
Option "RightEdge" "750"
Option "UpDownScrolling" "true"
Option "LeftRightScrolling" "true"
Option "PalmDetect" "true"
Option "PalmMinWidth" "1"
Option "PalmMinZ" "2"
EndSection
a) Open up a terminal (it's easier, trust me). It's at Applications >> Accessories >> Terminal
b) Copy and paste there the following (right click or CTRL+SHIFT+V):
c) It will ask for your password, so type it in.sudo apt-get install gpointing-device-settings
Once it's finished you can close the terminal.
You'll find it on the System >> Preferences >> Pointing Devices menu entry
That's it. You now have a fully functioning Elantech touchpad, completely configured, with properly working vertical and horizontal scrolling, palm detection and multitouch abilities.
It works for me, it could work for you... PLEASE BACK UP your xorg.conf file before modifying it.
OMG! I messed up xorg.conf: Restart linux in Safe Graphical Mode, it will allow you to look for your backup and replace your changes easily
OMG! It doesn't work... This is not intended to be a guide for anything other than Samsung R540 JT01, so proceed at your own risk.
OMG! It works!: YAAAY!