O touchpad faz o mouse entrar em um padrão de "grade", o mouse externo não

4

Algumas informações sobre o meu problema

Acabei de instalar 17.10 no meu laptop. O processo de instalação correu bem e, além disso, eu estava executando um USB ao vivo para testar se tudo funcionava. Uma coisa que eu notei foi que, enquanto movia o mouse, o mouse parecia dar passos em todas as direções - resultando em um movimento lento.

Se você tem uma grade, parece que o mouse está se prendendo a cada cruz na grade, enquanto se move. O efeito é principalmente perceptível em direções diagonais, mas também pode ser notado em outro lugar. Fazer movimentos menores é um desafio, como o mouse bate.

Eu tentei alterar as configurações disponíveis no menu de configurações de estoque no sistema, sem qualquer sorte aparente. Eu também tentei procurar por problemas semelhantes, mas não tenho certeza se eles descrevem exatamente o meu problema. Por exemplo, vamos dar uma olhada em: movimentos do mouse Jerky

Meus parâmetros:

xinput --list-props "SynPS/2 Synaptics TouchPad" gives: 

'simen@Yoga-ubuntu:~$ xinput --list-props "SynPS/2 Synaptics TouchPad"
Device 'SynPS/2 Synaptics TouchPad':
    Device Enabled (171):   1
    Coordinate Transformation Matrix (173): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Tapping Enabled (311): 1
    libinput Tapping Enabled Default (312): 0
    libinput Tapping Drag Enabled (313):    1
    libinput Tapping Drag Enabled Default (314):    1
    libinput Tapping Drag Lock Enabled (315):   0
    libinput Tapping Drag Lock Enabled Default (316):   0
    libinput Tapping Button Mapping Enabled (317):  1, 0
    libinput Tapping Button Mapping Default (318):  1, 0
    libinput Accel Speed (319): -0.244604
    libinput Accel Speed Default (320): 0.000000
    libinput Natural Scrolling Enabled (321):   1
    libinput Natural Scrolling Enabled Default (322):   0
    libinput Send Events Modes Available (292): 1, 1
    libinput Send Events Mode Enabled (293):    0, 0
    libinput Send Events Mode Enabled Default (294):    0, 0
    libinput Left Handed Enabled (323): 0
    libinput Left Handed Enabled Default (324): 0
    libinput Scroll Methods Available (325):    1, 1, 0
    libinput Scroll Method Enabled (326):   1, 0, 0
    libinput Scroll Method Enabled Default (327):   1, 0, 0
    libinput Click Methods Available (328): 1, 1
    libinput Click Method Enabled (329):    1, 0
    libinput Click Method Enabled Default (330):    1, 0
    libinput Middle Emulation Enabled (331):    0
    libinput Middle Emulation Enabled Default (332):    0
    libinput Disable While Typing Enabled (333):    1
    libinput Disable While Typing Enabled Default (334):    1
    Device Node (295):  "/dev/input/event6"
    Device Product ID (296):    2, 7
    libinput Drag Lock Buttons (335):   <no items>
    libinput Horizontal Scroll Enabled (336):   1

Tentei alterar alguns valores aqui, mas ainda não tive sorte ao me livrar do "movimento da grade" do trackpad.

Conectar um mouse externo ao laptop parece resolver o problema, mas ainda não estou satisfeito com o desempenho do trackpad. Mover o pointr com meu trackpad não está indo bem.

Se houver qualquer outra informação que possa ser útil, apenas me avise e eu a fornecerei. É um problema irritante, pois não posso usar meu mouse externo em todos os momentos.

    
por Denny 05.12.2017 / 13:16

3 respostas

1

O padrão em forma de grade do movimento do touchpad é causado pelo antigo algoritmo de histerese retangular da libinput. Foi corrigido na versão libinput 1.10.2 (incluindo no Ubuntu 18.04) mudando para uma abordagem elíptica (normalmente circular):

link

    
por Daniel van Vugt 18.04.2018 / 04:27
3

Eu experimentei um problema semelhante com o meu Lenovo X240 e, a julgar pelo nome do sistema 'Yoga', uma solução muito semelhante pode ser aplicada. Pareceu-me capaz de minimizar os efeitos a um nível aceitável, embora pareçam não ter desaparecido completamente.

Como isso ocorreu em Wayland e Xorg e a correção do Elder Geek não ajudou, eu fui mais fundo.

Com base em: link e, por sua vez: < href="https://bugzilla.redhat.com/show_bug.cgi?id=1264453"> link - comentários 10 e 13.

Abra /lib/udev/hwdb.d/90-libinput-model-quirks.hwdb em seu editor de texto favorito e verifique o segmento LENOVO, pois ele conterá dicas para uma possível solução também.

Isso é o que eu fiz:

1) Identifique o DMI de hardware e o local de entrada usando evemu-describe [parte do pacote evemu-tools ; [ sudo apt install evemu-tools ]

~$ sudo evemu-describe
Available devices:
/dev/input/event0:      Lid Switch
...
/dev/input/event4:      Video Bus
/dev/input/event5:      SynPS/2 Synaptics TouchPad
/dev/input/event6:      TPPS/2 IBM TrackPoint
...
/dev/input/event20:     HDA Intel HDMI HDMI/DP,pcm=10
Select the device event number [0-20]:

Portanto, no meu caso, o touchpad está registrado em / dev / input / event5 [5]. Encontre a linha DMI, logo no início da saída e salve-a para mais tarde:

# DMI: dmi:bvnLENOVO:bvrGIET90WW(2.40):bd09/14/2017:svnLENOVO:pn20AMS2QD0C:pvrThinkPadX240:rvnLENOVO:rn20AMS2QD0C:rvr0B98401PRO:cvnLENOVO:ct10:cvrNotAvailable:
# Input device name: "SynPS/2 Synaptics TouchPad"

2) Indo em um salto, imaginando que o seu touchpad se comporta de forma semelhante a um t450, vamos agora adicionar um novo arquivo para o nosso hwdb em / etc / hwdb / using sudo nano /etc/hwdb/90-lenovo-touchpad-quirk.hwdb

No arquivo coloque algo parecido como este. Modifique a correspondência DMI, colei-a lá para referência futura:

#Lenovo touchpad smoothing fix/workaround. 
#evemu-describe DMI output for the touchpad:
# DMI: dmi:bvnLENOVO:bvrGIET90WW(2.40):bd09/14/2017:svnLENOVO:pn20AMS2QD0C:pvrThinkPadX240:rvnLENOVO:rn20AMS2QD0C:rvr0B98401PRO:cvnLENOVO:ct10:cvrNotAvailable:

#Modify the following line, namely the pvrThinkPadX240 bit, to match your DMI output. 
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*:pvrThinkPadX240*
 LIBINPUT_MODEL_LENOVO_T450_TOUCHPAD=1

Salve o arquivo (em Nano ctrl-X para sair, confirme com Y para salvar, VI tem! wq)

3) Agora reconstrua o hardwaredatabase:

sudo udevadm hwdb --update

E 4) teste se seus novos parâmetros estão realmente carregados (lembre-se do número de entrada da primeira etapa):

~$ sudo udevadm test /sys/class/input/event5
calling: test
version 234
...
ID_INPUT_TOUCHPAD_INTEGRATION=internal
ID_INPUT_WIDTH_MM=109
LIBINPUT_DEVICE_GROUP=11/2/7/1b1:isa0060/serio1
LIBINPUT_MODEL_LENOVO_T450_TOUCHPAD=1
LIBINPUT_MODEL_SYNAPTICS_SERIAL_TOUCHPAD=1
...

Está tudo bem! 5) Reinicie o sistema e os dedos cruzados ...

Espero que isso resulte em você se juntar ao lado do Linux dark !

No meu caso, LIBINPUT_MODEL_LENOVO_X230=1 funcionou melhor, então você pode brincar - até certo ponto - com as correções disponíveis para os touchpads Synaptics.

    
por Filipe Spencer 18.12.2017 / 02:18
2

Instale este pacote. através da linha de comando com sudo apt install xserver-xorg-input-synaptics ou com o seu favorito gerenciador de pacotes.

Note que este pacote pode ser encontrado no repositório Universe, então você terá que habilite primeiro.

O principal método de configuração para o touchpad é através de um arquivo de configuração do servidor Xorg. Após a instalação do xserver-xorg-input-synaptics , um arquivo de configuração padrão está localizado em /usr/share/X11/xorg.conf.d/70-synaptics.conf. Você pode copiar este arquivo para /etc/X11/xorg.conf.d/ e editá-lo para configurar as várias opções de driver disponíveis. Consulte a página de manual synaptics (4) para obter uma lista de opções disponíveis. Opções específicas da máquina podem ser descobertas usando synclient.

Eu recomendo começar com a configuração padrão e fazer as alterações uma de cada vez, para que, se você obter resultados inesperados, possa facilmente reverter para a configuração anterior.

Fontes:

link

ftp://www.x.org/pub/X11R7 .5 / doc / man / man1 / synclient.1.html

ftp://www.x.org/pub/X11R7 .5 / doc / man / man1 / synclient.1.html

link

    
por Elder Geek 14.12.2017 / 19:14