Configurer le pavé tactile d'un ordinateur portable

En règle générale votre système reconnaît par défaut votre pavé tactile (Touchpad). Mais il est possible d'en améliorer le support ou de configurer des actions insoupçonnées avec le ou les doigts est possible. Il existe pour cela plusieurs outils de configuration.

Connaître son pavé tactile

Avant de modifier ou d'installer un pilote inapproprié, il vaut mieux vérifier quel constructeur et quel modèle équipent votre machine:

egrep -i 'synap|alps|etps' /proc/bus/input/devices

Pour plus de détails, tapez:

xinput list "$(egrep -i 'synap|alps|etps' /proc/bus/input/devices |cut -d'"' -f2)"

Outils graphiques par défaut

Voici quelques outils graphiques permettant de configurer le pilote Synaptics™. Synaptics™ est un des principaux fabricants de pavés tactiles, à ne pas confondre avec le gestionnaire de paquets Synaptic. Si le Pavé tactile n'est pas présent dans ce qui suit ou si vous souhaitez plus d'options, utilisez l'un des Outils avancés ci-dessous.

Sous Unity

Vous trouverez quelques réglages simples avant d'opter pour des outils plus avancés. Il est possible que cette étape soit suffisante pour vos besoins. Allez dans Paramètres Système → Souris & pavé tactile.

Les options qui s'offrent à vous sont :

  • Possibilité de désactivation durant la frappe,
  • Taper pour cliquer,
  • Défilement à deux doigts,
  • Défilement naturel, qui correspond au défilement des smartphones.

Si vous branchez une souris externe sur votre ordinateur portable, il peut être utile de désactiver le pavé tactile. Pour cela, consultez la rubrique ci-dessous traitant de la désactivation du pavé tactile. À noter que, sur certains portables, il existe la possibilité de désactiver et réactiver simplement le pavé tactile avec une combinaison de touches ou avec une touche dédiée au-dessus du pavé tactile.

Sous Xfce

Allez dans Le gestionnaire de paramètres Xfce, bouton Souris.

Sous Lxde

La gestion du pavé tactile sous Lubuntu est basique, vous pouvez y accéder via le menu Applications → Préférences → Clavier et souris.

Sous Kde

L'outi utilisé sous KDE s'appelle kde-touchpad installé par défaut. Il gère aussi la souris et le pavé tactile que les Trackpoints IBM.

Illustration configuration SynaptiKs

Le réglage apparaît dans Configuration du système → Matériel → Périphériques d'entrée → Touchpad . Depuis quelques versions, ces réglages sont accessibles via une icône Synaptiks dans la boîte à miniature. Pour désactiver le pavé tactile lors de la frappe, cochez Automatically switch off touchpad on keyboard activity.

Outils avancés

GPointing

GPointing est un outil avancé qui permet la gestion des pavé tactiles, des souris et du trackpoint, petit bouton rouge au milieu de clavier, généralement présent sur les thinkpad Lenovo. Surtout adapté aux environnements Gnome, XFCE et LXDE. Pour KDE voir plus bas.

Note : le lien fourni est mort (juillet 2016) et gpointing n'est pas présent sur ubuntu 16.04

  1. Lancez l'application dans le tableau de bord Unity avec le mot clé Pointing Devices,
  2. Si le paquet n'apporte pas d'avancée, essayer d'activer SHMConfig comme indiqué plus bas sur la page.

Fenêtre de configuration de Gpointing Device Settings

Gpointing permet également de paramétrer le Trackpoint plus finement que dans les paramètres par défaut. Sur la capture plus haut, le trackpoint s'affiche comme une souris avec TTPS/2 IBM trackpoint. Deux choses sont configurables :

  • Émuler la molette, dans ce cas cochez la case Utiliser l'émulation de la molette,
  • Émuler le bouton du milieu, dans ce cas cochez la case Utiliser l'émulation du bouton du milieu.

Sur certains portables (Asus notamment), l'installation de Gpointing ne permet pas l'apparition de l'onglet "pavé tactile". Pour contourner ce problème. Il est conseillé d'utiliser les méthodes en ligne de commande pour fixer vos paramètres. Si malgré ce qui est indiqué sur cette page vous ne trouvez pas de solutions, veuillez poser votre question sur le forum.

En ligne de commande

La configuration en ligne de commande offre plus de possibilités de réglages qu'avec les applications graphiques. Le pilote Synaptics est fourni par le paquet xserver-xorg-input-synaptics installé par défaut.

Une alternative est xserver-xorg-input-mtrack.

Dans un terminal, entrez la commande suivante pour connaître l'id de votre pavé:

xinput list

Vous obtiendrez un résultat semblable à celui-ci:

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=12   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ Laptop_Integrated_Webcam_1.3M             id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                          id=13   [slave  keyboard (3)]

Le pavé Apparaît ici avec l'id=12.

Pour le désactiver, la commande à utiliser est la suivante (en utilisant bien évidemment l'id correspondant à votre configuration):

xinput set-prop 12 "Device Enabled" 0
Une autre solution utilisant xmodmap existe. Voir ici pour plus de détails.

Utilisation de Synclient

Pour configurer Synaptics, on peut se servir de l'outil en ligne de commande Synclient fourni avec Synaptics. Il permet de voir à la volée les réactions du pavé tactile pour définir les options dont vous aurez besoin.

Il est possible que Synclient vous demande d'activer SHMConfig pour fonctionner.

  • Pour afficher la configuration de Synaptics :
    synclient -l

Le terminal vous répond:

   Parameter settings:
    LeftEdge		= 1200
    RightEdge		= 5800
   ...

Pour observer les événements perçus par le pavé tactile, déterminer la surface couverte (intervalles de valeur x et y), le nombre de doigts présents et autres actions :

synclient -m 100
   time     x    y   z f  w  l r u d m     multi  gl gm gr gdx gdy
  0.000  5212 2853   1 1  4  0 0 0 0 0  00000000   0  0  0   0   0
  0.728  2948 2425  68 1  4  0 0 0 0 0  00000000   0  0  0   0   0
   ...
  • Pour changer dynamiquement la valeur des paramètres de configuration de Synaptics et faire des tests:
    synclient TopEdge=1200 LeftEdge=1200

Quelques définitions

Paramètre Définition
LeftEdge abscisse du bord gauche
RightEdge abscisse du bord droit
TopEdge ordonnée du bord supérieur
BottomEdge ordonnée du bord inférieur
FingerLow pression maximum en dessous de laquelle le driver suppose qu'on n’appuie plus sur le pavé tactile
FingerHigh pression minimum au dessus de laquelle le driver suppose qu'on appuie sur le pavé tactile
MaxTapTime temps maximum (en ms) en dessous duquel le driver interprète un tapotement sur le pavé tactile
MaxTapMove nombre de mouvements maximum en dessous duquel le driver interprète un tapotement sur le pavé tactile
SingleTapTimeout Temps après un tapotement pour le reconnaître comme une simple pression
EmulateMidButtonTime temps maximum (en ms) en dessous duquel le driver interprète un clic « bouton du milieu »
VerScrollDelta distance de déplacement minimum du doigt pour faire un défilement vertical
HorizScrollDelta distance de déplacement minimum du doigt pour faire un défilement horizontal
MinSpeed facteur de vitesse minimum pour le déplacement du curseur
MaxSpeed facteur de vitesse maximum pour le déplacement du curseur
AccelFactor facteur d'accélération pour le déplacement du curseur
EdgeMotionMinSpeed facteur de vitesse minimum pour le défilement
EdgeMotionMaxSpeed facteur de vitesse maximum pour le défilement
TapButton1 configure l'action liée au tapotement avec 1 doigt. 1-clic sur le bouton gauche, 2-molette ou 3-bouton droit
TapButton2 configure l'action liée au tapotement avec 2 doigts. 1-clic sur le bouton gauche, 2-molette ou 3-bouton droit
TapButton3 configure l'action liée au tapotement avec 3 doigts. 1-clic sur le bouton gauche, 2-molette ou 3-bouton droit
UpDownScrolling génère un événement équivalent à l’événement 4/5 d'une souris à roulette (active le défilement)
CircularScrolling active le défilement circulaire (en cas d’ascenseurs diagonaux)
CircScrollDelta distance de déplacement minimum du doigt pour faire un défilement circulaire
CircScrollTrigger région à partir de laquelle le défilement circulaire commence (de 0 à 8 en fonction de la région)

Informations de slackware-fr.

Modifier le tapotement

  • Pour affecter le bouton central de souris au tapotement avec 2 doigts
    synclient TapButton2=2
  • Pour affecter le bouton droit de souris au tapotement avec 3 doigts
    synclient TapButton3=3

Désactiver le click droit (et gauche) en bas du touchpad

Temporairement

synclient RightButtonAreaLeft=0
synclient RightButtonAreaTop=0

Sauvegarder les modifications

Les modifications faites avec Synclient ne sont pas conservées au redémarrage. Vous pouvez intégrer les commandes dans un script de démarrage pour l'appliquer à tous les utilisateurs ou dans les applications au démarrage pour chaque session utilisateur.

Exemple : pour affecter le bouton central de souris au tapotement avec 2 doigts et le bouton droit de souris au tapotement avec 3 doigts, ajoutez la commande :

synclient TapButton3=3 TapButton2=2

Avec Ubuntu 16.04 (au moins), la méthode ci-dessus ne fonctionne pas. Il faut mettre :

sh -c "synclient TapButton3=3 TapButton2=2"

Appliquer les changements directement à toutes session utilisateur

Cette solution (vérifié sous ubuntu 16.04) consiste à désactiver le plugin de gnome-setting-deamon concernant les réglages de souris:

dconf write /org/gnome/settings-daemon/plugins/mouse/active false

puis d'éditer le fichier /usr/share/X11/xorg.conf.d/50-synaptics.conf

sudo nano /usr/share/X11/xorg.conf.d/50-synaptics.conf

pour ajouter les lignes suivantes:

      Option "TapButton2" "2"
      Option "TapButton3" "3"

dans ce bloc:

Section "InputClass"
        Identifier "touchpad catchall"
(...)
      Option "TapButton2" "2"
      Option "TapButton3" "3"
EndSection

Émuler la molette

Repérez le nom de votre souris (touchpad, trackpoint, …) en exécutant cette commande :

xinput -list

Puis, créez un script emupave.sh avec ce contenu (dans mon cas, j'agis sur "DualPoint Stick") :

emupave.sh
#!/bin/bash
xinput set-int-prop "DualPoint Stick" "Evdev Wheel Emulation" 8 1
xinput set-int-prop "DualPoint Stick" "Evdev Wheel Emulation Button" 8 3
xinput set-int-prop "DualPoint Stick" "Evdev Wheel Emulation Timeout" 16 200
xinput set-int-prop "DualPoint Stick" "Evdev Wheel Emulation Axes" 8 6 7 4 5

Rendez ce script exécutable.
Exécutez le pour tester son fonctionnement (ici, le clic droit maintenu permet de scroller en bougeant le trakpoint). Si cela fonctionne, ajouter-le dans les programmes lancés au démarrage.

Activer SHMConfig

Certains, outils pour configurer le pavé tactile, comme synclient, pour qu'ils puissent fonctionner, ont besoin d'accéder à la mémoire partagée du pilote du pavé tactile synaptics. Ceci est réalisé en plaçant l'option SHMConfig à "True" (vrai) dans la configuration du serveur graphique.
Lorsque cette option est activée, les outils cités peuvent modifier la configuration de votre pavé tactile à la volée, sans avoir à redémarrer le serveur Xorg.

  • Modifiez avec les droits d'administration le fichier /usr/share/X11/xorg.conf.d/50-synaptics.conf:
  • Ajoutez la ligne
            Option "SHMConfig" "true"

    sous la ligne Driver "synaptics" :

    Section "InputClass"
            Identifier "touchpad catchall"
            MatchIsTouchpad "on"
            MatchDevicePath "/dev/input/event*"
            Driver "synaptics"
            Option "SHMConfig" "true"
    EndSection

Redémarrez pour que les changements soient pris en compte.

Si les réglages que vous effectuez dans les fichiers de configuration de xorg (par exemple 50-synaptics) semblent ne pas avoir d'effet, essayez la démarche suivante :

  • Ouvrez gconf-editor ;
  • Allez sur la clef /apps/gnome_settings_daemon/plugins/pointing-device/ ;
  • Décochez la case active ;
  • Redémarrez afin que les changement soient pris en compte.

Cela aura pour effet de désactiver les réglages imposés par gnome-settings-daemon, rendant ainsi vos réglages manuels actifs. (Cette manipulation est inspirée de ce qui est décrit dans le Wiki d'Archlinux).

Activer/désactiver le pavé tactile

En ligne de commande

Prenons le cas d'un pavé tactile qui est désactivé. Pour l'activer :

synclient TouchpadOff=0

Pour désactiver le pavé tactile :

synclient TouchpadOff=1

Pour le désactiver uniquement lors de la frappe au clavier :

synclient TouchpadOff=2

Graphiquement

Souvent un raccourci clavier est prévu à cet effet sur la majorité des portables. Sinon il existe un applet qui permet de désactiver/réactiver rapidement le touchpad. Pour l'installer:

Selon le thème de votre bureau, l'icône de touchpad-indicator pourra être invisible (blanc sur blanc ou blanc noir sur noir). Cherchez un espace suspect entre 2 icônes et cliquez dessus pour modifiez les préférences d'apparence de l'icône.

Avec Gnome-Shell : ajouter l'extension "Touchpad Indicator".

Désactiver/activer avec un raccourci clavier

Si votre raccourci clavier (avec la touche fn par exemple) pour désactiver le pavé tactile ne fonctionne pas, ou bien si vous souhaitez tout simplement allouer un raccourci clavier à l'activation/désactivation de celui-ci, enregistrez avec les droits d'administration le script qui suit dans le dossier /usr/local/bin/touchpad:

/usr/local/bin/touchpad
#!/bin/bash
 
if [ $(synclient -l | grep TouchpadOff | awk '{print $3}') == 1 ] ; then
    synclient TouchpadOff=0;
else
    synclient TouchpadOff=1;
fi

Rendez-le exécutable et allouez-lui un raccourci clavier en mettant dans le champs commande: touchpad.

Désactiver définitivement

Si le pavé tactile est branché en interne comme un périphérique PS/2 (ancienne norme pour les prises des souris/clavier), vous pouvez bloquer le module au démarrage du système en rajoutant.

Sur les portables Asus qui ne possèdent pas de fonction directe de désactivation du pavé tactile par la fonction fn, cette procédure est simple, efficace et permet de désactiver le pavé tactile sans désactiver la souris en USB.

Si vous ne branchez pas toujours votre souris USB, il est préférable de désactiver le pavé tactile manuellement (éventuellement par un lanceur) après démarrage par la commande :

xinput –set-prop "PS/2 Generic Mouse" "Device Enabled" 0

Résolution des problèmes

Le pavé tactile ne fonctionne pas

Pour régler ce soucis, il suffit généralement d'ajouter au noyau le paramètre i8042.nopnp.

Le pavé tactile ne fonctionne plus

Il arrive que le pavé tactile se bloque définitivement après avoir appuyé sur le « bouton blocage » du portable. Dans un premier temps appuyez de nouveau sur le « bouton blocage » du pavé tactile pour le réactiver. Si cela ne résout pas votre problème, y compris après avoir redémarré, le problème peut être lié à Gnome.

Dans un terminal, taper la commande :

gconftool --type bool --set /desktop/gnome/peripherals/touchpad/touchpad_enabled true

Ou bien ajoutez ceci à grub:

i8042.nomux

Le « multitouch » ne fonctionne pas

Cette partie concerne uniquement les pavés tactile supportant le multitouch.

La gestion du multitouch permet d'attribuer des actions en fonction du nombre de doigts qui sont présent sur le pavé tactile. Par défaut, le tapotement à deux doigts est équivalent à un clic avec la molette. Le tapotement à trois doigts est équivalent à un clic du bouton droit.

Le tapotement à deux doigts permet, par exemple dans Firefox, l'ouverture d'hyperliens dans un nouvel onglet ou la fermeture d'onglet. Pour activer ces deux tapotements veuillez utiliser les commandes suivantes :

synclient TapButton2=2 TapButton3=3

Pour en savoir plus et ajouter d'autres options, vous pouvez consulter la rubrique Synclient de cette page.

Problèmes de contact de paume

S'il arrive que la paume de vos mains entre en contact avec le pavé tactile pendant que vous tapez au clavier et que cela provoque des clics indésirables, il existe des solutions ! (Voir ici pour la solution simple en ligne de commande).

Avec GPointing

Dans l'onglet « Général » de GPointing, activez la détection de la paume.

Désactiver la fonction de clic du pavé tactile

Si votre pavé tactile possède des boutons pour assurer la fonction de clic, il n'est pas utile de conserver la fonction qui permet de cliquer en tapant sur le pavé tactile lui-même. Pour désactiver cette fonction il suffit de décocher la case "Activer les clics de souris avec le pavé tactile" dans les préférences (cf. § en début de page).

« Pointeur fou »

Il se peut que :

  • Le pavé tactile ou la souris n'en fasse qu'à sa tête, que le pointeur bouge dans tous les sens et clique un peu partout sur votre écran ;
  • Le pointeur bouge correctement mais que les clics soient désactivés sauf sur certains éléments de la fenêtre active.

Ce problème de « pointeur fou » à été signalé sur des portables Dell, Acer, Hercules, Nec et aussi sur d'autres distributions Linux (Fedora, …).

Pour régler ce souci, il suffit généralement d'ajouter au noyau une des combinaisons de paramètres suivantes :

  • i8042.nomux=1 ;
  • i8042.reset=1 ;
  • i8042.nomux=1 i8042.reset=1.

Dans les paramètres système, vérifiez également les paramètres d'accès universel: la fonction "Dwell click" (clic par survol) a peut-être été activée.

Pas de défilement vertical

Sur Ubuntu 11.04 en utilisant Unity, il semble que la barre de défilement verticale droite du touchpad ne fonctionne pas. Une solution peut-être trouvée , il est écrit que : Les fonctionnalités basiques des souris et claviers marchent par défaut. Cependant, le « scroll » (défilement vertical) ne fonctionne pas tout de suite. Si vous avez ce problème il est possible de le régler avec la commande suivante :

echo "options psmouse proto=imps"|sudo tee -a /etc/modprobe.d/psmouse.conf; sudo modprobe -r psmouse; sudo modprobe psmouse

Cela dira à linux de traiter le touchpad comme une souris PS/2 avec une mollette de défilement. Le défilement sur la droite du touchpad devrait maintenant marcher. Cependant, le défilement horizontal, lui, ne fonctionnera pas.

Défilement vertical et horizontal inversé

Ce problème a été rencontré sur Ubuntu 14.04 et également les précédentes version (13.04 / 13.10), pour corriger cela de manière ponctuelle, il faut repérer les valeurs de « synclient » à partir d'un terminal (Ctrl+Alt+T):

  synclient

Vous obtiendrez une longue liste de paramètres de ce genre:

  Parameter settings:
  LeftEdge                = 1766
  RightEdge               = 5388
  TopEdge                 = 1643
  BottomEdge              = 4535
  FingerLow               = 25
  FingerHigh              = 30
  MaxTapTime              = 180
  MaxTapMove              = 237
  MaxDoubleTapTime        = 180
  SingleTapTimeout        = 180
  ClickTime               = 100
  EmulateMidButtonTime    = 0
  EmulateTwoFingerMinZ    = 282
  EmulateTwoFingerMinW    = 7
  VertScrollDelta         = -107
  HorizScrollDelta        = -107
  VertEdgeScroll          = 1
  HorizEdgeScroll         = 1
  CornerCoasting          = 0
  VertTwoFingerScroll     = 0
  HorizTwoFingerScroll    = 0
  MinSpeed                = 1
  MaxSpeed                = 1.75

Dans cette liste, il vous faut trouver les lignes VertScrollDelta = -107 et HorizScrollDelta = -107. La valeur « -107 » de ces paramètres peut différer de cet exemple, mais il vous faudra la garder de côté.

Pour retrouver le défilement vertical dans le bon sens, il faut passer la valeur négative à positive de la sorte:

  synclient VertScrollDelta=107

Pour le défilement horizontal, la même commande avec le paramètre HorizScrollDelta:

  synclient HorizScrollDelta=107

Pour garder ces paramètres définitivement, il faut appliquer ces deux dernières commandes au démarrage dans la rubrique (Applications au Démarrage), et enregistrer cela dans la partie Commande de la sorte:

Voir aussi

  • Serveur graphique X.org ;
  • HAL, la couche d'abstraction matérielle ;
  • Fonctionnement de Udev ;
  • Configuration de la souris ;
  • Configuration du clavier;

Références

  • touchpad.txt
  • Dernière modification: Le 28/04/2018, 11:21
  • (modification externe)