PDA

View Full Version : Odd Touchpad on ASUS F9



Peacepunk
21st August 2008, 07:09 PM
Hi Community

F9 on, guess what, an ASUS F9! Silly. The system is fully updated.

My Touchpad works: Points, clicks, split-clicks, slides up/down and left/right, but since I updated to F9 from F8 Tapping the touchpad doesn't click any more.



[fa9@asus ~]$ cat /proc/bus/output/devices

[]
I: Bus=0011 Vendor=0002 Product=0007 Version=01b1
N: Name="SynPS/2 Synaptics TouchPad"
P: Phys=isa0060/serio4/input0
S: Sysfs=/devices/platform/i8042/serio4/input/input2
U: Uniq=
H: Handlers=mouse1 event2
B: EV=b
B: KEY=6420 0 70000 0 0 0 0 0 0 0 0
B: ABS=11000003
[]


Section "InputDevice"
Identifier "TouchPad"
Driver "synaptics"
Option "SendCoreEvents" "true"
Option "Protocol" "auto-dev"
Option "SHMConfig" "on"
EndSection

Most people I found looking around for info are willing to disable the Tap feature on their touchpads, gathering this "opposite" info made me install gsynaptics to no avail; I tried with and without the auto-starting applet that is to be found under System > Pref > Perso > Sessions.

I did my homework, now I am calling for support...

?? As a start, which module should I check ??


[root@asus ~]# find /lib/modules/2.6.25.14-108.fc9.i686|grep mouse
/lib/modules/2.6.25.14-108.fc9.i686/kernel/drivers/input/mouse
/lib/modules/2.6.25.14-108.fc9.i686/kernel/drivers/input/mouse/vsxxxaa.ko
/lib/modules/2.6.25.14-108.fc9.i686/kernel/drivers/input/mouse/appletouch.ko
/lib/modules/2.6.25.14-108.fc9.i686/kernel/drivers/input/mouse/sermouse.ko
/lib/modules/2.6.25.14-108.fc9.i686/kernel/drivers/usb/misc/idmouse.ko


If it can be related, gpm stopped working too...

bbfuller
21st August 2008, 11:42 PM
Hello Peacepunk

Oddly, tapping on the touchpad is disabled by default in the Xorg that comes with Fedora 9.

To get mine to work, I had to modify the file /etc/X11/xorg.conf

It was necessary to add one line to the existing "Server Layout section as highlighted below:


Section "ServerLayout"
Identifier "single head configuration"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Synaptics" "CorePointer"
EndSection

and add a complete extra "Input Device" section as below:


Section "InputDevice"
Identifier "Synaptics"
Driver "synaptics"
Option "SendCoreEvents"
Option "TapButton1" "1"
Option "TapButton2" "2"
Option "TapButton3" "3"
Option "Device" "/dev/input/mice"
Option "Protocol" "auto-dev"
Option "Emulate3Buttons" "yes"
EndSection

Do beware when you do this, the simplest spelling mistake can stop the whole X server starting. Make sure you have a backup copy of the original 'xorg.conf' file and that you can restore it from the command line.

Peacepunk
22nd August 2008, 03:57 AM
Hey bbfuller that was neat, and usefull.

A glitch tough:

it's actually

Option "SendCoreEvents" "true"

but I got that from my previous xorg.conf. Well, i did ended up in the Consoles and had to VI things, but luckily I am able to do such things!

For the next interested reader, so:

In order to re-enable Tapping on your laptop's Touchpad,

1) check that it's Synaptic-enabled/compatible:

do as normal user


cat /proc/bus/input/devices|grep TouchPad

it should return something like


N: Name="SynPS/2 Synaptics TouchPad"
it means you are using a Synaptics TouchPad, and hence the following should work;


2) Insert in the ServerLayout section (usually the first one) an extra line for Synaptics:



Section "ServerLayout"
Identifier "single head configuration"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Synaptics" "CorePointer"
EndSection

If there was already a TouchPad/CorePointer line, remove it! Do not edit your screen and keyboard line, just insert the Synaptic one!

and add a complete extra "Input Device" section as below:



Section "InputDevice"
Identifier "Synaptics"
Driver "synaptics"
Option "SendCoreEvents" "true"
Option "TapButton1" "1"
Option "TapButton2" "2"
Option "TapButton3" "3"
Option "Device" "/dev/input/mice"
Option "Protocol" "auto-dev"
Option "Emulate3Buttons" "yes"
EndSection

Same here, if there was already an InputDevice Section with anything TouchPad, remove the entire section.

There was none on my system.



WORDS OF WARNING:

as quoted by bbfuller, toying with xorg.conf can lead to trouble;

First, open up a Terminal and do as root;

cp /etc/X11/xorg.conf /etc/X11/xorg.back

Since the slightest mystypo can send the graphic server in havoc (remember: its all fully Case sensitive), write this down on the side of your machine just in case:

To revert to you previous xorg,
Login as root, then

cp /etc/X11/xorg.back /etc/X11/xorg.conf

My full /etc/X11/xorg.conf file:


# Xorg configuration created by pyxf86config, modded dy fa9 with help from
# http://forums.fedoraforum.org/showthread.php?t=197408

Section "ServerLayout"
Identifier "Default Layout"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Synaptics" "CorePointer"
EndSection

Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
EndSection

Section "InputDevice"
Identifier "Synaptics"
Driver "synaptics"
Option "SendCoreEvents" "true"
Option "TapButton1" "1"
Option "TapButton2" "2"
Option "TapButton3" "3"
Option "Device" "/dev/input/mice"
Option "Protocol" "auto-dev"
Option "Emulate3Buttons" "yes"
Option "SHMConfig" "off"
EndSection


Section "Screen"
Identifier "Screen0"
Device "Videocard0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection

The above is certified to work on my ASUS F9E running up-to-date F9

bbfuller
22nd August 2008, 11:48 AM
Hello Peacepunk

I think you'll find that the default status for:

Option "SendCoreEvents"

is "true", and that you only need to specify a value if you want it to be "false".

It certainly works like that on my machine.

I've no doubt though that specifying the option is more syntactically correct.

Peacepunk
22nd August 2008, 12:14 PM
I definitely ended up in the console, using the first and second one to compare my backup with the hacked one... No need to start an argument here, I can't remember anything else that I would have VI'ed in the process, let's say THANKS AGAIN and that it may not be a so much a matter of Elegance in your syntax, but of Paranoia in my config :)

Cheers from Cambodia

Jean-Philippe

Peacepunk
28th August 2008, 09:42 AM
Bouncing on that...

would you kindly mind explaining this part ?

Option "TapButton1" "1"
Option "TapButton2" "2"
Option "TapButton3" "3"


And then... strangely, the right scroll area seems to be too much in the middle,
- is there a SAFE method to push it further right?
- Where is the 0,0? upper left?
- how to discover the current scrolling area?

??

Thanks.

bbfuller
28th August 2008, 10:30 AM
Hello Peacepunk

I think you'll find that the three options refer to single, double and triple finger tapping.

Two finger tapping simulates right click and triple finger middle click on the mouse buttons - or the other way round. Personally, I can only get three fingers to register as the correct tap one time in 10.

I've added some of the options below that you have to make the Alps GlidePoint work with this xorg. You'll see that it has explanations for some of the options.

Don't slavishly follow any of those numbers on a Synaptics though.

You'll see the sections that define the edges of the pad for scrolling though.

As you say, numbers start 0,0 at top left and if the numbers that define where your scroll areas start are wrong, then you just increase or decrease them.


I had to modify my xorg.conf file to include the following:


Section "ServerLayout"
Identifier "Default Layout"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Synaptics" "CorePointer"
EndSection

Section "InputDevice"
Identifier "Synaptics"
Driver "synaptics"
Option "SendCoreEvents"
Option "TapButton1" "1"
Option "TapButton2" "2"
Option "TapButton3" "3"
Option "Device" "/dev/input/mice"
Option "Protocol" "auto-dev"
Option "Emulate3Buttons" "yes"
Option "LeftEdge" "120"
Option "RightEdge" "920"
Option "TopEdge" "120"
Option "BottomEdge" "680"
Option "FingerLow" "14"
Option "FingerHigh" "15"
Option "MaxTapMove" "110"
Option "VertScrollDelta" "20"
Option "HorizScrollDelta" "20"
Option "MinSpeed" "0.4"
Option "MaxSpeed" "0.99"
Option "AccelFactor" "0.035"
Option "MinTapTime" "110"
Option "MaxTapTime" "350"
Option "ClickTime" "0"
EndSection

Some of the "Section "ServerLayout"" you will probably already have.


Option "MinSpeed" "0.4"
Option "MaxSpeed" "0.99"
Option "AccelFactor" "0.035"
control pointer movement, and:


Option "FingerLow" "14"
Option "FingerHigh" "15"

control tapping. This final section controls double tapping and by extension "tap to drag"


Option "MinTapTime" "110"
Option "MaxTapTime" "350"
Option "ClickTime" "0"

One or two notes from experience of sharing these instructions.

Do make a backup of the 'xorg.conf' file before you start altering it and make sure that you can restore it from the command line if necessary. One spelling mistake in this and you graphical environment won't start.

You should already have a section in that file headed "Section "ServerLayout"". Just the one line in red needs adding to that.

The section "Section "InputDevice"" will need to be created in its entirety. There will already be an "InputDevice" section to do with the keyboard. This part is completely in addition to that.

On a Synaptics touchpad machine you would just need to add the part highlighted red and green.

The numbers for Right and Bottom edges may be wrong for your pad. They are based on one of what we may call standard size pads, not a widescreen pad. Zero starts in the top left corner for all dimensions and you may need to adjust those to suit your circumstances.

The parts in blue are just explanations of what some of the configuration options do.

Peacepunk
28th August 2008, 12:42 PM
Thanks for that, and for the speed! I kinda guessed about the multi-finger but it doesn't work here so....

Noticed another glitch: suspend kills tapping.

AAARGH

bbfuller
28th August 2008, 01:53 PM
Hello Peacepunk

Suspend problems I can't help you with I'm afraid. Never use it.

SomeDamFool
3rd September 2008, 03:20 PM
When I try to configure my touchpad from one menu item it tells me I have to add 'SHMConfig" "on"' to the touchpad section of xorg.conf, and the config dialog won't open. When I try to open it from the control center it tells me I have to add 'SHMConfig' 'True' to the touchpad section of xorg conf. Which is it?

I had that problem in F6 and it told me to add 'SHMConfig "true"' to the touchpad section of xorg.conf. I did, but made an error and the x server wouldn't start, but an interesting thing happened.

A warning said "There is a context error on line such and such of /etc/x11/xorg.conf. Do you want to fix it?" I clicked yes thinking it was going to allow me to edit xorg,conf, but after about 20 seconds it said "Fedora has restored xorg.conf. Please restart the x server." I rebooted and everthing was fine. I was impressed.

However, I'm not counting on that happening again, so I will follow the insturctions here, but I have a question:
Does this look right for the server layout and touchpad section?

Section "ServerLayout"
InputDevice "Synaptics" "CorePointer"

And:
Section "InputDevice"
Identifier "Synaptics"
Driver "synaptics"
Option "SendCoreEvents" "true"
Option "TapButton1" "1"
Option "TapButton2" "2"
Option "TapButton3" "3"
Option "Device" "/dev/input/mice"
Option "Protocol" "auto-dev"
Option "Emulate3Buttons" "yes"
Option "SHMConfig" "on" <<< is 'on' correct or should it be 'true'?
EndSection

Thanks in advance,
Mike

bbfuller
3rd September 2008, 05:03 PM
Hello SomeDamFool

I think that in the case of these options, "on" and "true" are both valid responses and mean the same thing.

As to SHMConfig itself, I don't have it in my xorg.conf and the touchpad works without it. Where you will need it is if you plan to run one of the graphical configuring programs for the touchpad or what I believe is the command line equivalent, 'synclient'. These allow on the fly alteration of some of the touchpad parameters and require the SHMConfig line.

SomeDamFool
4th September 2008, 11:40 PM
These allow on the fly alteration of some of the touchpad parameters and require the SHMConfig line.

bbfuller,
I use a ps2 keyboard and wireless mouse at home, the touchpad on the go, so I like to be able to turn the touchpad on and off quickly. I backed up xorg.conf and added the touchpad section to it using "SHMConfig" "on", and it works fine.

Thank you and peacepunk for your posts.
Mike

wvn
5th September 2008, 05:55 AM
instructions above wont work in FC9 unfortunately

bbfuller
5th September 2008, 09:28 AM
Hello wvn

The instructions were designed for Fedora 9. They are unnecessary in Fedora 8 as it doesn't have the problem.

They work for most people who have tried them.

SomeDamFool
5th September 2008, 10:15 AM
wvn,
Yes, I'm running Fedora 9 and the above instructions worked.
Mike

wvn
28th September 2008, 04:22 PM
Hey bbfuller that was neat, and usefull.

A glitch tough:

it's actually

but I got that from my previous xorg.conf. Well, i did ended up in the Consoles and had to VI things, but luckily I am able to do such things!

For the next interested reader, so:

In order to re-enable Tapping on your laptop's Touchpad,

1) check that it's Synaptic-enabled/compatible:

do as normal user


it should return something like

it means you are using a Synaptics TouchPad, and hence the following should work;


2) Insert in the ServerLayout section (usually the first one) an extra line for Synaptics:



If there was already a TouchPad/CorePointer line, remove it! Do not edit your screen and keyboard line, just insert the Synaptic one!

and add a complete extra "Input Device" section as below:


Same here, if there was already an InputDevice Section with anything TouchPad, remove the entire section.

There was none on my system.



WORDS OF WARNING:

as quoted by bbfuller, toying with xorg.conf can lead to trouble;

First, open up a Terminal and do as root;


Since the slightest mystypo can send the graphic server in havoc (remember: its all fully Case sensitive), write this down on the side of your machine just in case:

To revert to you previous xorg,
Login as root, then


My full /etc/X11/xorg.conf file:


The above is certified to work on my ASUS F9E running up-to-date F9


Hi. Thanks for the excellent how to. Confirmed working on HP Pavilion dv6000 (dv6xxx) and Lenovo T61.

I also have gsynaptics configuration utility but gives out error:


GSynaptics couldn't initialize.
You have to set 'SHMConfig' 'true' in xorg.conf or XF86Config to use GSynaptics

any thoughts on that.

thanx again and i recommend to make this a sticky