Como se livrar do atraso antes que o touch pad da Lenovo reaja?

2

No meu Lenovo T460p, tenho um "modo de atraso" antes que o movimento do touch pad ou rolagem seja registrado. Observação: esse modo de atraso não deve ser confundido com áreas inativas do touchpad, conforme configurável por meio do syncient e usado, por exemplo, para recursos do clickpad. Isso pode ser mais comparado a "zonas mortas" de joysticks, que só reagem após uma certa quantidade de movimento.

Quando eu toco o teclado e começo a mexer o dedo, a princípio nada acontece. Eu tenho que mover o dedo por alguns milímetros antes do ponteiro do mouse responder. Em seguida, ele registra o movimento completamente, o que significa que sempre que eu começo a usar o touch pad, tenho um salto de dezenas de pixels no movimento do ponteiro. Isso torna o touch pad inutilizável para qualquer trabalho de "precisão", como apertar o botão fechar em uma aba.

Isso também acontece depois que eu deixo o dedo descansar dentro de um movimento por um segundo ou mais. O mesmo acontece com a rolagem de dois dedos. Estas são as configurações do xinput:

Device 'SynPS/2 Synaptics TouchPad':
    Device Enabled (139):   1
    Coordinate Transformation Matrix (141): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    Device Accel Profile (275): 1
    Device Accel Constant Deceleration (276):   2.500000
    Device Accel Adaptive Deceleration (277):   1.000000
    Device Accel Velocity Scaling (278):    12.500000
    Synaptics Edges (297):  1574, 5369, 1354, 4571
    Synaptics Finger (298): 25, 30, 0
    Synaptics Tap Time (299):   180
    Synaptics Tap Move (300):   254
    Synaptics Tap Durations (301):  180, 100, 100
    Synaptics ClickPad (302):   0
    Synaptics Middle Button Timeout (303):  75
    Synaptics Two-Finger Pressure (304):    282
    Synaptics Two-Finger Width (305):   7
    Synaptics Scrolling Distance (306): 115, 115
    Synaptics Edge Scrolling (307): 0, 0, 0
    Synaptics Two-Finger Scrolling (308):   1, 1
    Synaptics Move Speed (309): 1.000000, 1.750000, 0.034590, 0.000000
    Synaptics Off (310):    0
    Synaptics Locked Drags (311):   0
    Synaptics Locked Drags Timeout (312):   5000
    Synaptics Tap Action (313): 0, 0, 0, 0, 1, 3, 2
    Synaptics Click Action (314):   1, 3, 2
    Synaptics Circular Scrolling (315): 0
    Synaptics Circular Scrolling Distance (316):    0.100000
    Synaptics Circular Scrolling Trigger (317): 0
    Synaptics Circular Pad (318):   0
    Synaptics Palm Detection (319): 0
    Synaptics Palm Dimensions (320):    10, 200
    Synaptics Coasting Speed (321): 20.000000, 50.000000
    Synaptics Pressure Motion (322):    30, 160
    Synaptics Pressure Motion Factor (323): 1.000000, 1.000000
    Synaptics Grab Event Device (324):  0
    Synaptics Gestures (325):   1
    Synaptics Capabilities (326):   1, 0, 0, 1, 1, 1, 1
    Synaptics Pad Resolution (327): 65, 44
    Synaptics Area (328):   0, 0, 0, 0
    Synaptics Noise Cancellation (329): 28, 28
    Device Product ID (267):    2, 7
    Device Node (266):  "/dev/input/event1"

Alguém tem uma solução para isso?

Eu tentei definir o Cancelamento de ruído como 0, 0 , mas isso não ajudou.

Isto está no teste Debian (extensão). O Fedora 24 Workstation Live Image também mostra o mesmo problema.

    
por Jonas Schäfer 21.06.2016 / 13:58

2 respostas

0

Isso pode ser causado pelo gerenciamento de energia do USB.

Tente desativar temporariamente o gerenciamento de energia do USB e veja se o problema desaparece:

primeiro use lsusb (parte do pacote usbutils ) para identificar a porta que seu touchpad usa:

Bus 002 Device 003: ID 18a5:0245 Verbatim, Ltd 
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

No meu caso, este seria o receptor unificador da logitech no barramento 001 Dispositivo 003. Agora encontre o dispositivo correspondente em / sys / usando o ID do fornecedor do seu dispositivo (no meu caso o id é 046d ):

grep 046d /sys/bus/usb/devices/*/idVendor

> /sys/bus/usb/devices/1-1.5/idVendor:046d

agora diga ao kernel para manter o dispositivo sempre ligado:

echo on >/sys/bus/usb/devices/1-1.5/power/control

Se isso ajudar, você pode desativar a suspensão automática nas ferramentas do modo laptop. edite /etc/laptop-mode/conf.d/runtime-pm.conf e adicione AUTOSUSPEND_RUNTIME_DEVID_BLACKLIST="046d:c52b" , onde você substitui 046d:c52b pelo id do dispositivo do seu dispositivo, dado por lsusb . No meu caso, usei o parâmetro mais geral que desativa o autosuspend para todos os dispositivos de interface humana e dispositivos de armazenamento: AUTOSUSPEND_RUNTIME_DEVTYPE_BLACKLIST="usbhid usb-storage"

    
por 04.07.2016 / 11:36
0

Eu tive o mesmo problema no Ubuntu 18.04 LTS.

A instalação deste pacote parece melhorar o modo como o touchpad reage muito:

sudo apt-get install xserver-xorg-input-synaptics
    
por 19.07.2018 / 09:51