Problemas con el touchpad y el trackpoint de Lenovo X1 Carbon Gen.6 (2018) con linux

15

Tengo problemas para que mi touchpad funcione. No detecta movimiento o clics la mayor parte del tiempo, y solo "se despierta" esporádicamente, responde durante ~ un segundo y luego se detiene. Lo mismo se aplica al trackpoint. He probado Fedora (27), Mint y Ubuntu (17.10) y el problema es el mismo en todas las versiones. Todo lo que sigue es wrt Ubuntu 17.10.

hwinfo da Unique ID: AH6Q.Y_f5kDtfqz2

El panel táctil no aparece en xinput: (sí apareció en Mint, pero el problema también estaba presente allí). Usando libinput debug-events, obtengo:

(...)
-event5 DEVICE_ADDED SynPS/2 Synaptics TouchPad seat0 default group9 cap:pg size 70x50
(...)
(When swiping around on the touchpad, nothing happens. Then, suddenly, it will show:)
-event6 DEVICE_ADDED PS/2 Generic Mouse seat0 default group11 cap:p left scroll-nat scroll-button
-event5 POINTER_MOTION +7.73s 2.98/ 0.00
(...)
- event5 POINTER_MOTION +7.88s 2.54/ 0.00
(and it will cut out again. When continuing swiping, once the keyboard "wakes up" again, the process repeats.)

Lo que creo que hasta ahora fue una buena pista fue el resultado de dmesg. Esto da el error psmouse serio1: TouchPad at isa0060/serio1/input0 lost sync at byte 1varias veces.

He encontrado dos formas de sortear el problema, pero ambas no son satisfactorias:

1) modprobe -r psmouse && modprobe psmouse proto=impshará que el panel táctil responda, pero deshabilitará cualquier gesto (desplazamiento con dos dedos, etc.). También elimina el panel táctil del panel "Configuración> Dispositivos> Mouse y panel táctil". sudo libinput list-devicesconfirma que se pierde la mayor parte de la funcionalidad.

2) Deshabilitar el trackpoint en el BIOS también hace que el panel táctil funcione según lo previsto, incluido el desplazamiento con dos dedos. Sin embargo, también deshabilita los botones físicos para el panel táctil.

Cualquier consejo sería muy apreciado. ¡Muchas gracias!

usuario279597
fuente
Estoy experimentando los mismos síntomas. Los botones físicos justo debajo del espacio son parte del trackpoint, por lo que están deshabilitados. Aún así es un dolor. Desafortunadamente, no es posible hacer que el trackpoint funcione deshabilitando el trackpad. Los dos
phys
¿Conseguiste el modelo con NFC?
Guidhouse

Respuestas:

12

También utilizo el modelo con NFC y lo siguiente consiguió que funcionaran tanto el trackpoint como el panel táctil (con desplazamiento con 2 dedos):

  1. Eliminar (o comentar) la línea i2c_i801de /etc/modprobe.d/blacklist.conf.
  2. Agregar psmouse.synaptics_intertouch=1a la GRUB_CMDLINE_LINUX_DEFAULT=...línea /etc/default/grub(advertencia: se restablecerá y debe rehacerse después de una actualización del kernel).
  3. sudo update-grub
  4. Reiniciar.

Ejecutando Ubuntu 17.10 y Kernel 4.16.0

Gracias al usuario net_life en el foro de Lenovo ( https://forums.lenovo.com/t5/Linux-Discussion/Troubles-with-X1-Carbon-2018-X1C6-TouchPad-and-TrackPoint-under/td-p/4004815 / página / 3 )

Rüdiger
fuente
55
Esto funcionó para mí en Ubuntu 18.04
Jonathan Wise
2
¡Gracias! Trabajó para mí, Ubuntu 18.04, Kernel 4.15.
andreas
Puede confirmar esto para la variante NFC en ubuntu, mientras que la variante no NFC funciona de forma inmediata en arch linux.
Thorsten
La variante NFC también funciona con Ubuntu 18.04 y el kernel 4.17 de la línea principal (Touchpad + Trackpoint y gestos con varios dedos). Probé Debian antes, pero actualmente no hay soporte para CONFIG_RMI4su núcleo y no quería construir el mío.
jnns
El paquete kmod de Ubuntu incluye una blacklist i2c_i801línea en ese archivo, pero esto en realidad no funcionó para mí con el núcleo 4.18 de Debian, no hasta que reemplacé el guión bajo con el guión, para que coincida más estrictamente con el nombre del módulo del núcleo.
Josip Rodin
2

Lo que funcionó para mí es habilitar todas las opciones del kernel CONFIG_RMI4 y arrancar con psmouse.synaptics_intertouch = 1.

Miguel
fuente
1
Hola, ¿puedes explicar cómo "habilitas todas las opciones del kernel CONFIG_RMI4"?
nemo
Después de una búsqueda muy larga, habilitar los módulos RMI4 en el núcleo es lo único que funcionó (sin lista negra de modprobe y sin psmouse.synaptics_intertouch=1opción de arranque). @nemo necesitas compilar el kernel con esta opción, creo que esto depende de tu distribución
Oded Niv
2

Tengo un problema similar

He intentado con Arch Linux, Ubuntu LTS 16.04 y Mint 18.3.

Afortunadamente tengo un amigo que ejecuta Arch en una X1 Carbon 6th gen, sin problemas de puntero.

Las únicas dos diferencias es que compramos pantallas diferentes, y compré el modelo con NFC. El no lo hizo. El NFC es parte del trackpad / trackpoint, así que creo que se debe a la falta de controladores para este modelo.

Mi maquina:

$ egrep -i 'synap|alps|etps|elan' /proc/bus/input/devices 
N: Name="SynPS/2 Synaptics TouchPad"
P: Phys=synaptics-pt/serio0/input0

Solo alguna vez N: Name="SynPS/2 Synaptics TouchPad". Con el trackpoint deshabilitado en BIOS, siempre solo esta entrada.

En el X1, donde funcionan los punteros:

$ egrep -i 'synap|alps|etps|elan' /proc/bus/input/devices
N: Name="SynPS/2 Synaptics TouchPad"
N: Name="TPPS/2 Elan TrackPoint"
P: Phys=synaptics-pt/serio0/input0

Entonces, si su máquina también está equipada con un receptor NFC (habrá un pequeño símbolo debajo del botón central del punto de seguimiento), en lugar de los dispositivos señaladores estándar.

Entonces creo que es justo decir que aquí es donde radica el problema.

Por cierto: estoy abriendo un caso con Lenovo el lunes para ver qué pueden hacer.

Guidhouse
fuente
Este parece ser mi problema también. La solución en el foro de thinkpad: deshabilitar trackpoint en la opción bios + kernal funcionó para mí, pero ya no puedo usar el trackpoint.
nemo
1
@nemo, intenta comentar la i2c_i801línea desde /etc/modprobe.d/blacklist.conf. Esta fue la pieza que faltaba para mí (según foros.lenovo.com/t5/Linux-Discussion/… )
Pedro Pombeiro
0

Este es un método de trabajo que me parece más sencillo, utilizando el método de modificación initramfs menos invasivo, en Debian 9:

  1. Asegúrese de tener configurado el repositorio de backports , por ejemplo:

    echo deb http://ftp.debian.org/debian stretch-backports main contrib | sudo tee -a /etc/apt/sources.list.d/stretch-backports.list
    sudo apt-get update
    
  2. Instale un kernel más nuevo:

    sudo apt-get install -t stretch-backports linux-image-amd64
    
  3. Prepare un archivo de configuración de módulo personalizado, por ejemplo:

    sudo -e /etc/modprobe.d/local-fix-x1-mouse.conf
    
  4. Asegúrese de que el módulo en conflicto esté fuera y que las opciones correctas se apliquen en el módulo del mouse:

    blacklist i2c-i801
    options psmouse synaptics_intertouch=1 proto=exps
    
  5. sudo update-initramfs -u

  6. sudo reboot

Estoy usando esto con el kernel 4.18 ahora.

Josip Rodin
fuente