Desactivar el touchpad en Ubuntu

Los que tenemos ordenadores portátiles sabemos de los efectos no deseados que en ocasiones origina el más mínimo roce de nuestra mano sobre el touchpad (la pantalla táctil que hace de ratón en los ordenadores portátiles) mientras escribimos. Si la sensibilidad del touchpad de nuestro equipo es muy alta, esto puede llegar a convertirse en un verdadero problema.

Me pregunta un amiguete (aficionado a postear como anónimo) en un comentario la forma de desactivarlo desde Ubuntu. Como la explicación se iba a extender más de la cuenta, he creído conveniente dejarlo por escrito en forma de tutorial.

Como explico en la respuesta a ese comentario, cuando utilizaba Kubuntu 6.10 aprendí a desactivarlo porque me daba bastantes problemas cuando escribía con el teclado y además resulta bastante inútil si tienes conectado un ratón.

Voy a explicar diferentes formas de desactivar el touchpad (dependiendo de nuestras necesidades):


1) Desactivar el touchpad en Ubuntu Hardy Heron

En Hardy Heron, desactivar el touchpad es tan sencillo como irnos a Sistema > Preferencias > Ratón, seleccionamos la pestaña Touchpad y en General lo activamos o lo desactivamos simplemente marcando o desmarcando la casilla correspondiente.


2) GSYNAPTICS

Otra manera es instalando un pequeño programa llamado gsynaptics que nos permite gestionar de manera gráfica los controladores del ratón táctil de nuestro portátil desde Linux.

Abrimos en una consola y escribimos:

apt-get install gsynaptics

Una vez instalado editamos nuestro archivo xorg.conf :

sudo gedit /etc/X11/xorg.conf

y buscamos la sección similar a esta:

Section "InputDevice"
Identifier "Synaptics Touchpad"

Driver "synaptics"

Option "SendCoreEvents" "true"

Option "Device" "/dev/psaux"

Option "Protocol" "auto-dev"

Option "HorizScrollDelta" "0"

EndSection

solo hay que agregar la siguiente linea en el documento antes del EndSection:

Option "SHMConfig" "true"

de forma que la sección anterior nos quede así:

Section "InputDevice"
Identifier "Synaptics Touchpad"
Driver "synaptics"

Option "SendCoreEvents" "true"

Option "Device" "/dev/psaux"

Option "Protocol" "auto-dev"

Option "HorizScrollDelta" "0"

Option "SHMConfig" "true"

EndSection


Guardamos los cambios y reiniciamos el equipo, o el entorno gráfico (viene a ser lo mismo).

Ahora nos vamos a Sistema > Preferencias > Touchpad y ejecutamos el programa, desde el que podremos desactivar y activar (de forma muy sencilla) el touchpad a nuestro gusto.



3) Desactivar el touchpad mientras escribimos: SYNDAEMON

De manera similar a la anterior, Ubuntu trae por defecto un programa llamado syndaemon que permite desactivar el touchpad cuando escribimos.

Para activarlo, antes tenemos que añadir la misma línea que explicaba en el método anterior en el en el xorg.conf:

Option "SHMConfig" "on"

exactamente igual que antes, abriendo una terminal y modificando el xorg.conf:

sudo gedit /etc/X11/xorg.conf

Para hacer que el programa arranque automáticamente al iniciar sesión, nos vamos a Sistema > Preferencias > Sesiones, pulsamos Nuevo. En Nombre escribimos "syndaemon"y en Comando "syndaemon -d" (ambos sin las comillas, para que inicie en modo daemon).

Por cada pulsación de una tecla el touchpad se desactivará durante 2 segundos.

Otra opción es desactivar el touchpad por completo, y también podemos hacerlo desde el xorg.com. Solo hay que buscar la línea "SendCoreEvents" y cambiar su valor de "true" a "false", con lo que anularemos por completo el touchpad. Para restituir su funcionalidad tendremos que volver a acceder al xorg.com y volver a cambiarlo.

Reiniciamos el PC, y listo.



4) Desactivar el touchpad al conectar un ratón

Dejo para el final la que para mi gusto es la mejor de las opciones (aunque también hay que advertir que es las más complicada). Se trata de un pequeño script publicado en mundogeek para que Ubuntu compruebe si hay conectado un ratón al portátil y que en cuyo caso desactive el touchpad.

IMPORTANTE: hay que tener en cuenta que este método únicamente funciona si conectamos el ratón antes de iniciar sesión en Ubuntu. Si lo conectamos después de iniciar sesión, el touchpad no se desactivará.


Lo que hace el script es guardar en la variable mousecount el número de ratones conectados. Si es 1, sólo está disponible el touchpad, si es mayor de 1, entonces no lo necesitamos, por lo que lo desactivamos ejecutando el comando

synclient TouchpadOff=1

Añadimos, de igual forma, la famosa línea en el xorg.com antes del EndSection:

Option "SHMConfig" "on"

Ahora vamos a crear el script:

sudo gedit /usr/local/bin/raton.sh

En el nuevo archivo escribimos lo siguiente:

mousecount=`grep mouse /proc/bus/input/devices |grep Handler
|wc -l`

if [ "$mousecount" -eq "1" ]
then
synclient TouchpadOff=0
else

if [ "$mousecount" -gt "1" ]

then

synclient TouchpadOff=1

fi

fi


y lo convertimos en ejecutable:

sudo chmod +x /usr/local/bin/raton.sh

Para hacer que el programa arranque automáticamente al iniciar sesión, nos vamos a Sistema > Preferencias > Sesiones, pulsamos Nuevo y escribimos como comando "raton.sh" (sin las comillas).


Related Posts Plugin for WordPress, Blogger...

13 comentarios:

  1. Anónimo dijo:

    Muchas gracias fucking jejejeje

  2. Ramon dijo:

    Gracias, gracias, gracias!

    Estaba HARTO de liarla escribiendo correos o mensajes en foros, he usado la opcion del syndaemon. Me va de maravilla, hasta que no se me han hinchado las narices no me he puesto a buscar una solución... y ya ves, que fácil ha sido.

    Desactivarlo para siempre no me es útil, tengo ratón, pero me gusta más usar el táctil, me muevo por toda la casa, lo último que necesito son más cables.

    En fin, problema resuelto, de nuevo, muchas gracias por tomarte tu tiempo en escribir este tutorial.

    Un saludo!

  3. Jabba dijo:

    Muchas de nadas. Así da gusto :).

    Un saludo.

  4. Anónimo dijo:

    hola muy buena tu explicacion pero a mi no me aparece la linea donde dice touchpad en el xorg.conf que hago
    gracias

  5. Marco dijo:

    A mi me pasa lo mismo que el anónimo del 1 de octubre 2008.

    Las siguientes líneas:

    Section "InputDevice"
    Identifier "Synaptics Touchpad"
    Driver "synaptics"
    Option "SendCoreEvents" "true"
    Option "Device" "/dev/psaux"
    Option "Protocol" "auto-dev"
    Option "HorizScrollDelta" "0"
    Option "SHMConfig" "true"
    EndSection

    no me aparecen en xorg.conf y si las añado me sigue dando el mismo error: "GSynaptics no ha podido arrancar.
    Necesita configurar la variable 'SHMConfig' al valor 'true' en el archivoxorg.conf o XF86Config que use GSynaptics"

  6. Anónimo dijo:

    de puta madre!!

    estaba harta de que se me fuese el puntero a tomar por culo al escribir documentos y me hacia escribir media frase 20 lineas mas arriba de lo que tenia que estar!

    muchas gracias, sobre todo porque la primera opcion es bien sencilla, ya que todavia no me aclaro bien con lo de los comandos!

  7. Jabba dijo:

    @Marco y anónim@ del 11 de octubre: no tengo ni idea de a qué se puede deber eso, pero como arriba explico 4 métodos diferentes de hacer lo mismo, lo que os aconsejo es que utilizéis otro de los que detallo si ese en concreto no os funciona, porque yo acabo de probarlo de nuevo y a mí me aparece toda esa información en el xorg.conf.

    @Anónim@ del 4 de enero: muchas de nadas. me alegro que te funcione sin problemas ;).

    Saludos

  8. Hola, agradecerles por la ayuda que nos dan a los más novatos con estos tutoriales. Recientemente actualicé a la versión Karmic de Ubuntu y estas variantes que explican aquí no me funcionan, alguna idea de cual es la razón?

    Agradecido les saluda, R

  9. Jabba dijo:

    Hola Rubén,

    ¿No te funciona ni siquiera la primera opción? La de desactivar el touchpad desde Sistema > Preferencias > Ratón desmarcando la casilla que aparece en la pestaña touchpad. Te lo digo porque en Karmic Koala una de las cosas que han mejorado es precisamente ésta. Ahora en la pestaña de preferencias del touchpad una de las opciones que podemos marcar es la desactivación del touchpad automática mientras estamos escribiendo.

  10. Anónimo dijo:

    Gracias.

    Ahora xorg.conf no viene por defecto. Tal vez en relación con eso a mí no me funciona synclient TouchpadOff=1

    Lo que sí me funciona es:
    gconftool-2 -s -t bool /desktop/gnome/peripherals/touchpad/touchpad_enabled false
    Para reactivarlo: gconftool-2 -s -t bool /desktop/gnome/peripherals/touchpad/touchpad_enabled true
    Sacado de http://ubuntulife.wordpress.com/2010/10/06/script-para-desactivar-el-touchpad/

    También me funciona:
    1º xinput list
    2º xinput set-prop x “Device Enabled” 0 (en vez de x el valor de id del touchpad)
    Para reactivarlo: xinput set-prop x “Device Enabled” 1
    Sacado de http://ubuntumexico.com/2011/03/como-desactivar-el-touchpad-en-ubuntu/

    También creo que se puede como dicen http://ubuntu-cosillas.blogspot.com/2011/02/habilitardeshabilitar-el-touchpad-del.html y http://sites.google.com/site/trucosubuntu/controladores/touchpad

    Me gustaría añadir:

    Si te pasa como a mí que te basta con el touchpad del portátil (no necesitas ratón) pero no te gusta que funcionen las pulsaciones pues te fastidian al navegar en internet, etc. las puedes deshabilitar dejando pulsada la tecla ALT, pulsando F2, poniendo gnome-mouse-properties, pulsando Enter, pulsando en la pestaña Touchpad, quitando la marca junto a “Activar pulsaciones del ratón con el touchpad” y pulsando en Cerrar.

    Para hacer lo contrario se vuelve a poner la marquita.

    Los comandos que tienen el mismo efecto son:
    synclient MaxTapTime=0
    o
    synclient TapButton1=0 TapButton2=0 TapButton3=0
    o
    xinput set-prop “nombredeldispositivo” “Synaptics Tap Time” 0 ( p.e. xinput set-prop “AlpsPS/2 ALPS GlidePoint” “Synaptics Tap Time” 0 )
    o
    xinput set-prop x –type=int y 0 ( p.e. xinput set-prop 12 –type=int 292 0 )
    o
    xinput set-prop “nombredeldispositivo” “Synaptics Tap Action” 0, 0, 0, 0, 0, 0, 0 ( p.e. xinput set-prop “AlpsPS/2 ALPS GlidePoint” “Synaptics Tap Action” 0, 0, 0, 0, 0, 0, 0 )
    o
    xinput set-prop x –type=int z 0, 0, 0, 0, 0, 0, 0 ( p.e. xinput set-prop 12 –type=int 313 0, 0, 0, 0, 0, 0, 0 )

    Para dejarlos como estaban:
    synclient MaxTapTime=180
    o
    synclient TapButton1=1 TapButton2=3 TapButton3=2
    o
    xinput set-prop “nombredeldispositivo” “Synaptics Tap Time” 180 ( p.e. xinput set-prop “AlpsPS/2 ALPS GlidePoint” “Synaptics Tap Time” 180 )
    o
    xinput set-prop x –type=int y 180 ( p.e. xinput set-prop 12 –type=int 292 180 )
    o
    xinput set-prop “nombredeldispositivo” “Synaptics Tap Action” 2, 3, 0, 0, 1, 3, 2 ( p.e. xinput set-prop “AlpsPS/2 ALPS GlidePoint” “Synaptics Tap Action” 2, 3, 0, 0, 1, 3, 2 )
    o
    xinput set-prop x –type=int z 2, 3, 0, 0, 1, 3, 2 ( p.e. xinput set-prop 12 –type=int 313 2, 3, 0, 0, 1, 3, 2 )

    Se pueden ejecutar desde ALT+F2 o desde terminal o poner como atajos de teclado (con gnome-keybinding-properties) o poner en scripts.

    Para saber los números x, y, z y el texto “nombredeldispositivo” se usan:
    1º xinput list (x es el número tras id= de la línea que diga algo de Alps o Synaptics, texto que es precisamente “nombredeldispositivo”)
    2º xinput list-props x|grep -i tap (en vez de x se pone el número que sea. En vez del número se puede poner el texto con Alps o Synaptics entre comillas) (y es el número entre paréntesis de la línea que dice “Synaptics Tap Time”; z es el número entre paréntesis de la línea que dice “Synaptics Tap Action”)

    Más información, en inglés: http://ubuntuforums.org/showthread.php?t=1567479

    %%%%%%%%%%%%%%%%%%%

    Tomado de http://www.ubuntu-es.org/node/154732

  11. Anónimo dijo:

    Gracias.

    A) Respecto a todo el touchpad:

    También se puede desactivar el touchpad con:
    gconftool-2 -s -t bool /desktop/gnome/peripherals/touchpad/touchpad_enabled false
    Y activar con:
    gconftool-2 -s -t bool /desktop/gnome/peripherals/touchpad/touchpad_enabled true
    Sacado de ubuntulife.wordpress.com/2010/10/06/script-para-desactivar-el-touchpad/

    También se puede desactivar con:
    sudo modprobe -r psmouse
    Para reactivarlo:
    sudo modprobe -i psmouse
    o
    sudo modprobe psmouse
    Sacado de andaravelasvir.com/2010/08/28/desactivar-el-touchpad-en-kubuntu/

    También se puede desactivar con:
    1º xinput list
    2º xinput set-prop x “Device Enabled” 0 (en vez de x el valor de id del touchpad)
    Para reactivarlo: xinput set-prop x “Device Enabled” 1
    Sacado de ubuntumexico.com/2011/03/como-desactivar-el-touchpad-en-ubuntu/

    También creo que se puede como dicen ubuntu-cosillas.blogspot.com/2011/02/habilitardeshabilitar-el-touchpad-del.html y sites.google.com/site/trucosubuntu/controladores/touchpad

    B) Sólo respecto a las pulsaciones de ratón del touchpad:

    Se puede usar un pequeño script para que al pulsar una combinación de teclas se desactiven las pulsaciones del ratón y al volver a pulsar la misma combinación se vuelvan a activar.

    El script sería así (para device, en vez de 12 cada uno tiene que poner el valor de su x y para property en vez de 313 el de su z):

    #!/bin/bash

    device=12
    property=313
    mode="$(xinput list-props $device | grep $property | cut -d',' -f5)"

    if [ $mode -eq "1" ] ;
    then
    xinput set-prop $device $property 0, 0, 0, 0, 0, 0, 0
    else
    xinput set-prop $device $property 2, 3, 0, 0, 1, 3, 2
    fi

    Al script hay que darle permiso de ejecución. Se puede guardar (como root o administrador) en /usr/bin, para poder ser llamado desde la combinación de teclas que se elija en gnome-keybinding-properties.

    Sacado de ubuntu-es.org/node/154732

  12. Jabba dijo:

    Hola anónimo, me alegro que el post te haya resultado útil. Y muchas gracias por los aportes!

  13. Anónimo dijo:

    De nada. Gracias a ti. Una ampliacioncilla que va:

    B) Sólo respecto a las pulsaciones de ratón del touchpad:

    Para saber los números x, y, z y el texto “nombredeldispositivo” se usan:
    1º xinput list (x es el número tras id= de la línea que diga algo de Alps o Synaptics, texto que es precisamente “nombredeldispositivo”)
    2º xinput list-props x|grep -i tap (en vez de x se pone el número que sea. En vez del número se puede poner el texto con Alps o Synaptics entre comillas) (y es el número entre paréntesis de la línea que dice “Synaptics Tap Time”; z es el número entre paréntesis de la línea que dice “Synaptics Tap Action”)

    PERO TODO ESO SE PUEDE OLVIDAR PORQUE ...

    GNOME puede hacer estas cosas vía GConf. Esto hace posible un script más sencillo, que no require de averiguaciones previas:

    #!/bin/bash

    mode="$(gconftool-2 -g /desktop/gnome/peripherals/touchpad/tap_to_click)"

    if [ $mode == "true" ] ;
    then
    gconftool-2 -s -t bool /desktop/gnome/peripherals/touchpad/tap_to_click false
    else
    gconftool-2 -s -t bool /desktop/gnome/peripherals/touchpad/tap_to_click true
    fi

    Nota: el script se puede guardar donde se quiera, pero si se hace lo normal es que haya que poner su ruta o localización antes de su nombre en gnome-keybinding-properties. En cambio, si lo sitúas en /usr/bin (como root o administrador), no hace falta que pongas la ruta, basta con el nombre.

Deja tu comentario:

Procura que tu comentario esté relacionado con esta entrada y no olvides revisar la ortografía. Estás en tu perfecto derecho de comentar anónimamente, pero por favor, escribe con respeto y educación. Los comentarios que incumplan estas normas básicas de civismo serán eliminados sin previo aviso ni piedad.

Bajar inicio