How to disable mousepad tapping ?

hi all :)

i'd like to know how i can disable tapping on the mousepad ? (click with a tap on it).

I add this in xOrg.conf, but it's not working :

Code:
Section "InputDevice"
        Identifier "Synaptics Touchpad"
        Driver "synaptics"
        Option "SendCoreEvents" "true"
        Option "Device" "/dev/psm0"
        Option "Protocol" "Auto"
        [color="Red"]Option "MaxTapTime" "0"
        Option "HorizScrollDelta" "0"[/color]
EndSection

thanks in advance.
 
Do you use hal?
If so, you probably need to edit /usr/local/etc/hal/$foo/$bar
 
thanks for your reply.
i'm using HAL.

here's what's in /usr/local/etc/hal/
Code:
$ ls /usr/local/etc/hal/
fdi
$ ls /usr/local/etc/hal/fdi/
information	policy		preprobe

I have no idea how i can do something here.
Could you help me or give me a clue ?
 
thanks.

After a look at the post you told me and "man synaptics", i edit the file :
/usr/local/share/hal/fdi/policy/10osvendor/11-x11-synaptics.fdi

and add the red line :
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.touchpad">
<merge key="input.x11_driver" type="string">synaptics</merge>
<merge key="input.x11_options.TouchpadOff" type="string">2</merge>
</match>
</device>
</deviceinfo>

Man says :
Option "TouchpadOff" "integer"
Switch off the touchpad. Valid values are:

0 Touchpad is enabled

1 Touchpad is switched off
2 Only tapping and scrolling is switched off
Property: "Synaptics Off"

Doesn't work (of course, i restart HAL).
Any idea ?
Do i have to add another thing in another file ?
 
Greetings.

I'm not sure, but i believe these options need to be set in xorg.conf to disable tapping.

Code:
Section "InputDevice"
         ...
         Option "TapButton1" "0"
         Option "MaxTapTime" "0"
         Option "MaxTapMove" "0"
EndSection

Another option would be to install a Gui based configurations tool: x11/gsynaptics or, if running kde, sysutils/ksynaptics. If you don't mind manually installing from source, take a look at GPointingDeviceSettings .

EdGe
 
aragon said:
Do you have a Synaptics touchpad that supports this? Not all touchpads have programmable tap-click.

Maybe you're right Aragon. How can i check this ?

EdGe said:
I'm not sure, but i believe these options need to be set in xorg.conf to disable tapping.

Another option would be to install a Gui based configurations tool: x11/gsynaptics

Hi EdGe, i've allready try with xOrg.conf. No way.
I tried to install gsynaptics too, and doing the right configuration. No way too. That's tell me to set 'SHMConfig' 'true' in xorg.conf, i did it, restart. No way.
 
ohyes said:
Maybe you're right Aragon. How can i check this ?

You could determine the brand of the touchpad and investigate if it is programmable. The descriptions and product id can be obtained by executing :

$ sysctl -a |grep psm

If your investigation is unsuccessful put the output of the command here on board.

EdGe
 
thanks EdGe.

well, this is a SYN1B20 touchpad.
(PC is an Acer 1810TZ)

Code:
sysctl -a |grep psm
debug.psm.pkterrthresh: 2
debug.psm.usecs: 500000
debug.psm.secs: 0
debug.psm.errusecs: 0
debug.psm.errsecs: 2
debug.psm.hz: 20
debug.psm.loglevel: 0
hw.psm.tap_timeout: 125000
hw.psm.tap_threshold: 25
dev.psmcpnp.0.%desc: PS/2 mouse port
dev.psmcpnp.0.%driver: psmcpnp
dev.psmcpnp.0.%location: handle=\_SB_.PCI0.LPC_.MOUE
[color="Red"]dev.psmcpnp.0.%pnpinfo: _HID=SYN1B20 _UID=0[/color]
dev.psmcpnp.0.%parent: acpi0
dev.psm.0.%desc: PS/2 Mouse
dev.psm.0.%driver: psm
dev.psm.0.%parent: atkbdc0

i did not find information.
I tried to download a windows driver, to see the readMe file. But no info and i don't have Windows installed for a test.

Bad luck.
 
i did not find information.

I wouldn't worry about that. There is no reason to conclude the touchpad's tapping may not programmable, because the applied settings are not effective. It's more likely you have
miss-configured in the previous attempts.

Try the hal policy file for configuration again. This time copy the sample file
/usr/local/share/hal/fdi/policy/10osvendor/11-x11-synaptics.fdi to
/usr/local/etc/hal/fdi/policy/ and modify it to your needs (take care
to rename the sample file in x11-synaptics.fdi).

To make sure the synaptics driver is loaded or if you encounter problems look at
/var/log/Xorg.0.log.

This program may be interesting to you.
syndaemon(1)() ... disables the touchpad when the keyboard is being used.

EdGe
 
thanks again for your reply.
I tried again : don't work.

That's what i do :
  1. add hw.psm.synaptics_support=1 in /boot/loader.conf
  2. add load "synaptics" in /etc/X11/xorg.conf, module section
  3. add moused_enable in /etc/rc.conf (hal enable too)
  4. create /usr/local/etc/hal/fdi/policy/x11-synaptics.fdi file from example
  5. add to this file (at a correct place)
    Code:
    <merge key="input.x11_options.TouchpadOff" type="string">2</merge>
    <merge key="input.x11_options.TapButton1" type="string">0</merge>
    <merge key="input.x11_options.TapButton2" type="string">0</merge>
    <merge key="input.x11_options.TapButton3" type="string">0</merge>
  6. restart hal or computer

Note that with the line added in /boot/loader.conf for synaptics support (with or without the others lines in others files), the touchpad has a strange behavior. I can not click without moving the cursor (click not tapping).

With all this config, i can still tapping :(

Regards.
 
Synaptics Touchpads often don't get recognized by the psm driver.
What does % dmesg | egrep -i 'psm|mouse|synaptics' show?
 
lme@ said:
Synaptics Touchpads often don't get recognized by the psm driver.
What does % dmesg | egrep -i 'psm|mouse|synaptics' show?

Code:
$ dmesg | egrep -i 'psm|mouse|synaptics'
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: [ITHREAD]
psm0: model Generic PS/2 mouse, device ID 0
 
Ah, it's only recognized as a normal PS/2 mouse. So you can't use anything specific to synaptics with it. :(
 
I was poking around in the psm source and found something interesting. I was able to disable my touchpad's tap feature.

Add to /boot/loader.conf:
Code:
hw.psm.synaptics_support=1

Reboot and dmesg should show something like:

Code:
$ grep psm /var/run/dmesg.boot 
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: [ITHREAD]
psm0: model Synaptics Touchpad, device ID 0

And you should have plenty of knobs in hw.psm to play with:
Code:
hw.psm.tap_timeout: 125000
hw.psm.tap_threshold: 25
hw.psm.synaptics.directional_scrolls: 1
hw.psm.synaptics.min_pressure: 16
hw.psm.synaptics.max_pressure: 220
hw.psm.synaptics.max_width: 10
hw.psm.synaptics.margin_top: 200
hw.psm.synaptics.margin_right: 200
hw.psm.synaptics.margin_bottom: 200
hw.psm.synaptics.margin_left: 200
hw.psm.synaptics.na_top: 1783
hw.psm.synaptics.na_right: 563
hw.psm.synaptics.na_bottom: 1408
hw.psm.synaptics.na_left: 1600
hw.psm.synaptics.window_min: 4
hw.psm.synaptics.window_max: 10
hw.psm.synaptics.multiplicator: 10000
hw.psm.synaptics.weight_current: 3
hw.psm.synaptics.weight_previous: 6
hw.psm.synaptics.weight_previous_na: 20
hw.psm.synaptics.weight_len_squared: 2000
hw.psm.synaptics.div_min: 9
hw.psm.synaptics.div_max: 17
hw.psm.synaptics.div_max_na: 30
hw.psm.synaptics.div_len: 100
hw.psm.synaptics.tap_max_delta: 80
hw.psm.synaptics.tap_min_queue: 2
hw.psm.synaptics.taphold_timeout: 125000
hw.psm.synaptics.vscroll_hor_area: 0
hw.psm.synaptics.vscroll_ver_area: -600
hw.psm.synaptics.vscroll_min_delta: 50
hw.psm.synaptics.vscroll_div_min: 100
hw.psm.synaptics.vscroll_div_max: 150

Try disable tapping:
# sysctl hw.psm.tap_timeout=0
or
# sysctl hw.psm.synaptics.tap_max_delta=0

The old adage rings true: use the source, luke. :)
 
aragon said:
Try disable tapping:
# sysctl hw.psm.tap_timeout=0

waaaooouuh great !
Thanks Aragon this time it's work.

:f

When i tried this solution a few days ago, i tried :
# sysctl hw.psm.synaptics.taphold_timeout=0 ... and it did not work.

So solution (for me) is :
  1. add hw.psm.synaptics_support=1 to /boot/loader.conf
  2. add hw.psm.tap_timeout=0 to /etc/sysctl.conf
  3. add moused_enable to /etc/rc.conf
 
ohyes said:
thanks again for your reply.
I tried again : don't work.

That's what i do :
  1. add hw.psm.synaptics_support=1 in /boot/loader.conf
  2. add load "synaptics" in /etc/X11/xorg.conf, module section
  3. add moused_enable in /etc/rc.conf (hal enable too)
  4. create /usr/local/etc/hal/fdi/policy/x11-synaptics.fdi file from example
  5. add to this file (at a correct place)
    Code:
    <merge key="input.x11_options.TouchpadOff" type="string">2</merge>
    <merge key="input.x11_options.TapButton1" type="string">0</merge>
    <merge key="input.x11_options.TapButton2" type="string">0</merge>
    <merge key="input.x11_options.TapButton3" type="string">0</merge>
  6. restart hal or computer

Note that with the line added in /boot/loader.conf for synaptics support (with or without the others lines in others files), the touchpad has a strange behavior. I can not click without moving the cursor (click not tapping).

With all this config, i can still tapping :(

Regards.

try using this in rc.conf instead (its what I had to do):
Code:
moused_enable="NO"
moused_nondefault_enable="NO"
 
@aragorn's solution worked for me too. Since I use devd(8) I only needed two lines:

Add to /boot/loader.conf:
Code:
hw.psm.synaptics_support=1

Add to /etc/sysctl.conf:
Code:
hw.psm.tap_timeout=0
 
Last edited by a moderator:
I need to do this too, but i have not hw.psm.synaptics_support option, it means that I have no Synaptics model? In dmesg there is no model...

hw.psm.tap_enabled=0 do not help too.
 
Back
Top