web-dev-qa-db-fra.com

Problème de pavé tactile: sauter le curseur lors de la frappe (Ubuntu 14.04), syndaemon n'aide pas

Je sais qu'il y a d'autres questions sur ce problème, mais je ne trouve pas le bon Tweak pour le résoudre.

Le pavé tactile détecte toujours mes paumes lors de la frappe. C'est VRAIMENT agaçant, surtout parce que cela nuit à ma productivité avec mon tout nouveau Dell XPS Gold Edition. C'est une nouvelle installation Ubuntu 14.04 et je ne veux pas perdre mon temps à essayer des scripts et des choses qui briseraient la reconnaissance du touchpad.

J'ai essayé d'utiliser syndaemon car il semblerait que ce soit la meilleure solution de contournement pour ce bogue:

syndaemon -i 0.5 -d

Lorsque je l'essaie sur le terminal, il semble fonctionner tant que je ne me déconnecte pas de ma session.

Mais si je mets la commande sur mon utilitaire de programmes de démarrage et que je redémarre, le curseur se bloque toujours après une minute ou deux. Je dois donc décocher la commande à l’aide de mon clavier et je reviens à ce problème très ennuyeux de détection Palm. Toute solution?

Quelques informations sur mon système:

greguti@greguti-XPS13-9333:~$ xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SYNAPTICS Synaptics Large Touch Screen    id=9    [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)]
    ↳ Integrated_Webcam_HD                      id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                          id=13   [slave  keyboard (3)]
greguti@greguti-XPS13-9333:~$ xinput list-props "SynPS/2 Synaptics TouchPad" | grep -i finger
    Synaptics Finger (288): 25, 30, 0
    Synaptics Two-Finger Pressure (294):    282
    Synaptics Two-Finger Width (295):   7
    Synaptics Two-Finger Scrolling (298):   1, 1
22
greguti

Je ne pouvais pas suivre cette réponse avec My XPS 13 et Ubuntu 14.04.

Mais trouvé une solution rapide pour désactiver le touchpad lors de la frappe:

Sudo apt-get install gpointing-device-settings

puis courir

gpointing-device-settings

Vérifiez: Activer la détection de paume et déplacez plage: étroit à environ 10% à partir du début.

16
valk

Répondant à ma propre question, je suppose que j'ai finalement trouvé la solution.

On dirait que le coupable est le pilote Synaptics lui-même. Quelle que soit l’interface ou la commande que vous utilisez, cela ne fonctionnera pas tant que le pilote n’est pas corrigé.

Grâce à la merveilleuse page Web http://xps13-9333.appspot.com/#touchpad et à quelques courriels avec le propriétaire, j'ai finalement réussi à corriger ce mauvais bug!

Donc, voici le processus en bref Shell, reportez-vous à la page Web ci-dessus pour les détails.

La chose à faire pour se débarrasser du pilote Synaptics, puis télécharger les sources du pilote en amont, le patcher pour une détection Palm appropriée, puis créer le fichier avec les bons paramètres pour le pavé tactile. Les étapes suivantes fonctionnent bien sur mon Dell XPS "Gold Edition" (xps-9333) avec Ubuntu 14.04.

1. Choses à vérifier en premier

J'ai eu un problème pendant le processus à cause de l'absence d'un paquet libevdev-dev dans mon système (je suppose qu'il n'est pas installé avec Ubuntu 14.04?). Alors tout d'abord, essayez d'installer ce paquet:

Sudo apt-get install libevdev-dev

S'il n'est pas encore présent sur votre système, il devrait installer 3 packages: libevdev-dev , libevdev2 {a} et libjs-jquery {a}

Une autre chose à faire est d'installer le paquet GIT, afin de permettre le téléchargement du code source du pilote Synaptics en amont à partir des serveurs GIT.

Sudo apt-get install git

Une fois que ces packages sont sur votre système, vous pouvez suivre ces commandes.

2. DÉCOUVREZ LE PILOTE DE SYNAPTICS RÉAL ET INSTALLER LE SYSTÈME UPSTREAM ONE

Entrez les commandes suivantes dans le terminal (appuyez sur Entrée et vérifiez les sorties après chaque commande):

Sudo aptitude purge xserver-xorg-input-synaptics

Sudo aptitude build-dep xserver-xorg-input-synaptics

La commande suivante utilise GIT. Si c'est la première fois que vous l'utilisez, il vous demandera une adresse mail et un pseudonyme afin de terminer le processus (c'est-à-dire, téléchargez le code source du pilote). Vous pouvez le faire dans le terminal, c'est un processus assez simple. La sortie de la commande vous indique quoi taper, il vous suffit de suivre les instructions. Je n'ai jamais utilisé GIT avant moi-même et je pouvais gérer cette étape très facilement.

Sudo git clone git://anongit.freedesktop.org/xorg/driver/xf86-input-synaptics

Maintenant, vous entrez dans le dossier où le code source a été téléchargé:

cd xf86-input-synaptics

Maintenant que vous téléchargez le correctif pour le nouveau pilote, ce correctif corrigera le pilote en activant la détection Palm et la largeur du doigt sur le pavé tactile.

wget -q -O - http://xps13-9333.appspot.com/root/0001-Don-t-use-finger-width-for-the-Palm-detection.patch | git am

A présent, construisez le nouveau pilote à partir du code source corrigé (tapez Entrée après chaque ligne, chaque commande produira beaucoup de sortie):

./autogen.sh --prefix=/usr
make
Sudo make install

Votre nouveau pilote Synaptics, avec le correctif qui permet la détection Palm, est maintenant installé sur votre système, mais vous devez toujours spécifier les paramètres qui le permettent.

3. CREER ET EDITER LE FICHIER 20-SYNAPTICS-CONF

Et maintenant, pour la dernière partie, créez un fichier avec les paramètres du pavé tactile, ce fichier sera lu chaque fois que vous démarrez votre système.

Tout d'abord, vous créez le bon dossier:

mkdir -p /etc/X11/xorg.conf.d/

Ensuite, vous téléchargez le fichier fourni par le propriétaire de la page Web précédemment mentionnée et vous le copiez dans le nouveau dossier que vous venez de créer:

Sudo wget -q -O /etc/X11/xorg.conf.d/20-synaptics.conf http://xps13-9333.appspot.com/root/etc/X11/xorg.conf.d/20-synaptics.conf

Enfin, vous pouvez utiliser synclient afin de spécifier la valeur optimale du paramètre PalmMinZ (tapez un nombre au lieu de "VALEUR", je suggère 100, ce qui me convient parfaitement).

synclient PalmMinZ=VALUE

À la fin de ce processus, vous devriez avoir le nouveau fichier 20-synaptics.conf dans /etc/X11/xorg.conf.d et le fichier devrait ressembler à ça:

My 20-synaptics.conf file

4. N'OUBLIEZ PAS DE REDÉMARRER:)

8
greguti

Aucune des réponses ici ne fonctionnait pour une nouvelle installation d'Ubuntu 14.04.3 sur un XPS12, du moins pas avant d'avoir mis le module psmouse sur la liste noire. Les instructions suivantes sont essentiellement citées de cet ensemble d'instructions pour une machine XPS1 :

Vérifiez si votre pavé tactile utilise uniquement le bus I2C et non le mode ps2. Démarrer un terminal et entrer

 xinput 

Le pointeur de noyau virtuel ne doit contenir que deux éléments:

 Virtual core XTEST pointer
 DLL0665:01 06CB:76AD UNKNOWN 

Si un nom contient un troisième élément avec le pavé tactile PS2, vous devez ajouter le module psmouse à une liste noire en ajoutant ces lignes à /etc/modprobe.d/blacklist.conf:

# remove SynPS/2 Synaptics Touchpad because we want the mouse to work over IC2b
blacklist psmouse

Alors appelez

Sudo update-initramfs -u

Après le redémarrage, l’option Disable touchpad while typing dans System Settings/Mouse & Touchpad a fonctionné comme prévu.

6

Si vous ajoutez syndaemon à vos applications de démarrage, vous devez également décocher "Désactiver lors de la frappe" dans les paramètres de la souris et du pavé tactile. Si vous ne le faites pas, les deux mécanismes s’interféreront et feront que le pavé tactile cessera de fonctionner comme vous le décrivez. Cela fonctionne pour moi en stock 14.04 (ordinateur portable Lenovo T410) sans mise à niveau du pilote.

2
simonp

La mise à niveau mentionnée par greguti a maintenant été intégrée à la mise à niveau générale du noyau pour Linux vers la version 3.1.6+: voir http://xps13-9333.appspot.com/#touchpad .

Les instructions générales pour mettre à niveau le noyau pour Ubuntu se trouvent ici: http://ubuntuhandbook.org/index.php/2014/08/install-upgrade-linux-kernel-3-16/ . Pour un système 64 bits générique, je les ai copiés ci-dessous:

cd /tmp/
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-utopic/linux-headers-3.16.0-031600-generic_3.16.0-031600.201408031935_AMD64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-utopic/linux-headers-3.16.0-031600_3.16.0-031600.201408031935_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-utopic/linux-image-3.16.0-031600-generic_3.16.0-031600.201408031935_AMD64.deb
Sudo dpkg -i linux-headers-3.16.0-*.deb linux-image-3.16.0-*.deb

Et puis redémarrez.

Après le redémarrage de mon ordinateur, j'ai suivi les conseils de greguit et modifié le paramètre PalmMinZ. J'ai utilisé 100 aussi.

synclient PalmMinZ=VALUE

J'ai également réactivé le paramètre du trackpad à désactiver lors de la frappe, à l'aide de l'interface graphique.

Après cela, je n'ai passé que 10 à 15 minutes à utiliser l'ordinateur, mais jusqu'à présent, l'expérience est bien meilleure.

0
Andy Wickert