El panel táctil hace que el mouse se mueva en un patrón de “rejilla”, el mouse externo no lo hace

Alguna información sobre mi problema

Acabo de instalar 17.10 en mi laptop. el proceso de instalación fue bien, y además estaba ejecutando un USB en vivo para probar si todo funcionaba. Una cosa que noté, fue que mientras movía el mouse, el mouse sentía que iba a dar pasos en todas las direcciones, lo que provocaba un movimiento lento.

Si tiene una cuadrícula, se siente como si el mouse se uniera a cada cruz de la cuadrícula mientras se mueve. El efecto es mayormente notable en direcciones diagonales, pero también puede notarse en otros lugares. Hacer movimientos más pequeños es un reto, ya que el ratón golpea.

Intenté cambiar la configuración disponible en el menú de configuración de stock en el sistema, sin ninguna suerte aparente. También intenté buscar problemas similares, pero no estoy seguro de que describan mi problema exactamente. Por ejemplo, echemos un vistazo a: movimientos bruscos del ratón.

Mis 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):  libinput Horizontal Scroll Enabled (336): 1 

He intentado cambiar algunos valores aquí, pero no tuve suerte hasta el momento de deshacerme del “movimiento de cuadrícula” de mi trackpad.

La conexión de un mouse externo a la computadora portátil parece solucionar el problema, pero todavía no estoy satisfecho con el rendimiento del trackpad. Mover el pointr con mi trackpad no va bien.

Si hay alguna otra información que sería útil tener, hágamelo saber y se la proporcionaré. Es un problema molesto ya que no puedo usar mi mouse externo en todo momento.

El patrón en forma de cuadrícula del movimiento del panel táctil está causado por el antiguo algoritmo de histéresis rectangular de libinput. Se solucionó en libinput versión 1.10.2 (incluida en Ubuntu 18.04) cambiando a un enfoque elíptico (generalmente circular) en su lugar:

https://lists.freedesktop.org/archives/wayland-devel/2018-March/037317.html

He experimentado un problema similar con mi Lenovo X240 y, a juzgar por el nombre del sistema ‘Yoga’, podría aplicarse una solución muy similar. Parecía ser capaz de minimizar los efectos a un nivel aceptable, aunque parece que no han desaparecido por completo.

Como ocurrió en Wayland y Xorg, y la solución del anciano Geek no ayudó, cavé más profundo.

Basado en: https://unix.stackexchange.com/questions/199044/diagonal-touchpad-movement-results-in-wobbly-line ya su vez: https://bugzilla.redhat.com/show_bug.cgi?id= 1264453 – comentarios 10 y 13.

Abra /lib/udev/hwdb.d/90-libinput-model-quirks.hwdb en su editor de texto favorito y verifique el segmento de LENOVO, ya que contendrá sugerencias para una posible solución también.

Esto es lo que hice:

1) Identifique el DMI de hardware y la ubicación de entrada utilizando evemu-describe [parte del paquete 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]: 

Entonces, en mi caso, el panel táctil está registrado en / dev / input / event5 [5]. Encuentre la línea DMI, justo al inicio de la salida y guárdela para más adelante:

 # 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) Dando un salto, estimando que su touchpad se comporta de manera similar a un t450, ahora agregaremos un nuevo archivo para nuestro hwdb en / etc / hwdb / usando sudo nano /etc/hwdb/90-lenovo-touchpad-quirk.hwdb

En el archivo pongo algo parecido a esto. Modifique la coincidencia de DMI, la pegué allí para futuras referencias:

 #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 

Guarde el archivo (en Nano ctrl-X para salir, confirme con Y para guardar, VI tiene! Wq)

3) Ahora reconstruir la base de datos de hardware:

 sudo udevadm hwdb --update 

Y 4) pruebe si sus nuevos parámetros están realmente cargados (recuerde el número de entrada del primer paso):

 ~$ 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á todo bien! 5) Reinicie el sistema y los dedos cruzados …

¡Espero que esto te lleve a unirte al lado oscuro de Linux!

En mi caso, LIBINPUT_MODEL_LENOVO_X230=1 realidad funcionó mejor, por lo que puede jugar, hasta cierto punto, con las correcciones disponibles para los paneles táctiles Synaptics.

Instala este paquete. ya sea a través de la línea de comandos con sudo apt install xserver-xorg-input-synaptics o con su administrador de paquetes favorito.

Tenga en cuenta que este paquete se puede encontrar en el repository del Universo, por lo que tendrá que habilitarlo primero.

El método principal de configuración para el panel táctil es a través de un archivo de configuración del servidor Xorg. Después de la instalación de xserver-xorg-input-synaptics , se encuentra un archivo de configuración predeterminado en /usr/share/X11/xorg.conf.d/70-synaptics.conf. Puede copiar este archivo en /etc/X11/xorg.conf.d/ y editarlo para configurar las diversas opciones de controlador disponibles. Consulte la página del manual de synaptics (4) para obtener una lista completa de las opciones disponibles. Las opciones específicas de la máquina se pueden descubrir usando synclient.

Recomiendo comenzar con la configuración predeterminada y realizar cambios uno por uno para que, si || cuando obtiene resultados inesperados, pueda volver fácilmente a la configuración anterior.

Fuentes:

https://packages.ubuntu.com/artful/amd64/xserver-xorg-input-synaptics/filelist

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

https://wiki.archlinux.org/index.php/Touchpad_Synaptics