¿Cuál es la mejor manera de configurar un TrackPoint de Thinkpad?

41

Las páginas ThinkWiki anteriormente útiles parecen bastante anticuadas. Estoy tratando de cambiar permanentemente mi configuración de sensibilidad y velocidad de TrackPoint y habilitar el desplazamiento del botón central del mouse. He intentado configure-trackpoint en el pasado, pero la configuración no se guardó permanentemente (se pierden después de reiniciar).

He tratado gpointing-device-settings. Al usarlo, puedo hacer que el desplazamiento del botón central del mouse funcione, pero no puedo cambiar la configuración de velocidad o sensibilidad del trackpoint. Todos los métodos en la página ThinkWiki que he probado no funcionan como se indica en Ubuntu 11.04. ¿Alguien puede explicar cómo editar permanentemente la configuración de TrackPoint para que pueda usarla correctamente?

Jonathan Blackhall
fuente

Respuestas:

47

Lamentablemente no parece haber una manera fácil. Lo que describiré es cómo crear un nuevo trabajo de Upstart para establecer los valores en el arranque a través del sistema de archivos virtual en / sys.

  1. Encuentra la ruta del dispositivo de tu trackpoint

    Ejecute lo siguiente en un terminal gnome (presione Alt+ F2, escriba gnome-terminaly presione Enter):

    find /sys/devices/platform/i8042 -name name | xargs grep -Fl TrackPoint | sed 's/\/input\/input[0-9]*\/name$//'
    

    En mi caso, esto regresa /sys/devices/platform/i8042/serio1/serio2: cambie a lo que sea que le devuelva en los siguientes pasos.

  2. Encuentra valores de sensibilidad y velocidad

    Ejecute los siguientes comandos en un terminal gnome:

    echo 220 | sudo tee /sys/devices/platform/i8042/serio1/serio2/sensitivity
    

    para una sensibilidad de 220 (esto le pedirá su contraseña) y

    echo 100 | sudo tee /sys/devices/platform/i8042/serio1/serio2/speed
    

    para una velocidad de 100. Una vez que encuentre valores con los que se sienta cómodo, haga que el cambio sea permanente utilizando un trabajo Upstart:

  3. Crear una nueva regla de udev

    Ahora necesitamos aplicar la configuración durante el inicio del sistema. Por lo tanto, presione Alt+ F2, escriba gksu gedit /etc/udev/rules.d/trackpoint.rulesy presione Enter(esto le pedirá su contraseña). Luego pegue lo siguiente:

    SUBSYSTEM=="serio", DRIVERS=="psmouse", WAIT_FOR="/sys/devices/platform/i8042/serio1/serio2/sensitivity", ATTR{sensitivity}="220", ATTR{speed}="110"
    

    (Actualización) Como WAIT_FORestá en desuso, en los sistemas más nuevos puede usar DEVPATHen su lugar:

    SUBSYSTEM=="serio", DRIVERS=="psmouse", DEVPATH=="/sys/devices/platform/i8042/serio1/serio2", ATTR{sensitivity}="220", ATTR{speed}="110"     
    

    Guarde el archivo y reinicie o ejecute los comandos anteriores:

    sudo udevadm control --reload-rules
    sudo udevadm trigger 
    
htorque
fuente
55
Gracias por la respuesta muy detallada. Así que anoche profundicé un poco más en los artículos de ThinkWiki y descubrí algo más que funcionó. Los primeros dos pasos deben ser iguales. En lugar de un trabajo Upstart, utilicé las reglas de udev. Creé un archivo presionando Alt + F2, escribiendo gksu gedit /etc/udev/rules.d/trackpoint.rulesy pegué lo siguiente: SUBSYSTEM=="serio", DRIVERS=="psmouse", WAIT_FOR="/sys/devices/platform/i8042/serio1/serio2/sensitivity", ATTR{sensitivity}="200", ATTR{speed}="150"Luego reinicie. ¿Hay alguna razón por la que deba usar las reglas Upstart vs udev?
Jonathan Blackhall
En mi opinión, el enfoque udev es el mejor, ¡gracias! Editado eso en la respuesta. :-)
htorque
1
NOTA: use DEVPATH=="(dos iguales), de lo contrario no funcionará. No se puede editar el post con sólo un cambio carbón, por lo que acaba de dejar un comentario ..
Baldr
La regla udev no parece funcionar en Ubuntu 16.04. Vea las respuestas posteriores para otros enfoques (por ejemplo, el de Nguyen Thanh Tung).
MakisH
17

ASÍ QUE, LO QUE ME AYUDÓ A HACER EL TRACKPOINT MÁS SENSIBLE.

1. La forma más fácil es hacerlo en la terminal:

 $ xinput --list --short

Verás algo como esto:

omicron@omicron:~$ xinput --list --short
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Lite-On Technology Corp. ThinkPad USB Keyboard with TrackPoint    id=10.  [slave  pointer  (2)]
⎜   ↳ ImPS/2 Generic Wheel Mouse                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)]
    ↳ Lite-On Technology Corp. ThinkPad USB Keyboard with TrackPoint    id=9    [slave  keyboard (3)]
    ↳ Eee PC WMI hotkeys                        id=11   [slave  keyboard (3)]

2. Encuentra tu dispositivo trackpoint. En mi caso es id = 10.

3. Luego, en la terminal:

$ xinput --set-prop "10" "Device Accel Constant Deceleration" 0.5

"10" aquí es la ID del dispositivo (Lite-On Technology Corp. ThinkPad USB Keyboard con TrackPoint id = 10), coloque su ID aquí, y "0.5" es el nivel de sensibilidad. Puede experimentar con la sensibilidad poniendo números mayores que 0 hasta 1000. Pero definitivamente no lo necesita. Cuanto menor es el número, mayor es la velocidad.

Yo uso 0.4 o 0.45

4. IMPORTANTE. Cuando se elige la velocidad, copie su último script para iniciar automáticamente.

ingrese la descripción de la imagen aquí

PD: si la configuración dejó de funcionar un día, verifique nuevamente la ID. Puede haber algunos cambios en la tabla de dispositivos y la ID puede cambiar.

Espero que te ayude.

¡Disfruta tu ThinkPad!

Vitaly Dubyna
fuente
2
Lamentablemente me aparece: property 'Device Accel Constant Deceleration' doesn't exist, you need to specify its type and formatNo estoy seguro de cómo hacerlo ... ¿Alguna sugerencia? (Thinkpad T420, Ubuntu 18.04)
JamesBB
1
Creo que está restringido a las propiedades mostradas por xinput list-props $device_id(donde device_id= 10 en el ejemplo anterior). Por ejemplo, en mi Thinkpad X1c5 con 18.04, tengo una propiedad llamada libinput Accel Speedque parece modificable
sxc731
1
Por cierto, cambiar la tapa de goma Trackpoint también podría ayudar. El mío era irremediablemente duro (hasta el punto de que me dolía el dedo) y después de desgastarlo completamente (en solo 18 meses, lo que nunca sucedió en muchos ThinkPads anteriores) decidí invertir ca $ 15 en tapas de reemplazo (Lenovo parte no 4XH0L55146, viene con 10 de esos). El resultado es sorprendente: mi Trackpoint ha pasado de ser demasiado difícil a ser demasiado sensible. La configuración que funciona para mí ahora (X1c5 con TPPS/2 ALPS TrackPointel 18.04) es "libinput Accel Speed" -1.0(siendo la configuración de aceleración mínima). YMMV por supuesto
sxc731
2
Tengo thinkpad E480 y Ubuntu 18.04 y el xinput --set-prop "12" "libinput Accel Speed" -0.5comando funcionó
Xavitoj Cheema el
1
La respuesta más votada dejó de funcionar después de la actualización más reciente del sistema por alguna razón (Arch / Manjaro). Esto funcionó para mí. Gracias.
xji
13

Para mi Thinkpad T530 y Ubuntu 15.10. Solo usa:

sudo -i gedit /etc/udev/rules.d/10-trackpoint.rules

y luego agregue el siguiente contenido, luego reinicie. El valor de ajuste se mantendrá.

ACTION=="add",
SUBSYSTEM=="input",
ATTR{name}=="TPPS/2 IBM TrackPoint",
ATTR{device/sensitivity}="190",
ATTR{device/speed}="180",
ATTR{device/inertia}="6",
ATTR{device/press_to_select}="0"
Nguyen Thanh Tung
fuente
Esto funciona incluso cuando los archivos necesarios en las otras respuestas (serio1 / sensibilidad) no existen
Soupy
Esto parece haber funcionado para mí. :) (ThinkpadT420, Ubuntu18.04). Solo necesito jugar con la configuración, un poco tedioso tener que reiniciar cada vez, pero puedo vivir con eso.
JamesBB 01 de
2
@JamesBB corriendo udevadm trigger --action add --subsystem allhará que udev aplique las reglas a todos los dispositivos actuales.
CameronNemo
@CameronNemo: lo intentaré, ¡gracias! Parece necesario --subsystem-match all, pero creo que eso está funcionando.
JamesBB
4

@ vitaly-dubyna tiene la respuesta correcta. En Debian, su método funciona a la perfección. Para facilitarle la vida, coloque un archivo .xsessionrcen su directorio de inicio con todas las configuraciones para que se cargue después de cada reinicio.

hacer un uso nuevo archivo vim, pico, gedit-

vim .xsessionrc 

entonces pegue esto adentro

xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation" 1
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Button" 2
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Timeout" 200
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Axes" 7 6 4 5
xinput set-prop "TPPS/2 IBM TrackPoint" "Device Accel Constant Deceleration" 0.4

donde las primeras 4 líneas son para configurar el desplazamiento vertical y horizontal con trackpoint y la última línea es para controlar la velocidad y la sensibilidad.

Tenga en cuenta que debido a que la ID del dispositivo puede cambiar dependiendo de si algunos dispositivos de entrada están habilitados / deshabilitados en el BIOS, es preferible usar el nombre del dispositivo entre comillas. Para la mayoría de los thinkpads TPPS/2 IBM TrackPointes la referencia.


** EDITAR: ** Nov 2015

#get the device ID for the trackpad. We know it contains the string "TPPS"
ibm_trackpad_id=$(xinput | grep 'TPPS' | cut -d"=" -f2 | cut -f1)
echo $ibm_trackpad_id > ~/temp/ibm_trackpad_id

#set desired params for trackpoint
xinput set-prop $ibm_trackpad_id "Evdev Wheel Emulation" 1
xinput set-prop $ibm_trackpad_id "Evdev Wheel Emulation Button" 2
xinput set-prop $ibm_trackpad_id "Evdev Wheel Emulation Timeout" 200
xinput set-prop $ibm_trackpad_id "Evdev Wheel Emulation Axes" 7 6 5 4
xinput set-prop $ibm_trackpad_id "Device Accel Constant Deceleration" 0.15

# get wireless mouse device ID 
logitech_mouse_id=$(xinput | grep "Logitech" | cut -d"=" -f2 | cut -f1)
echo $logitech_mouse_id > ~/temp/logitech_mouse_id

# this is device dependent. Map the buttons on your mouse the functionality you want. 
xinput set-button-map $logitech_mouse_id 1 2 3 4 5 6 7 9 8 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

# set props for external mouse
xinput set-prop $logitech_mouse_id "Device Accel Constant Deceleration" 1.7
xinput set-prop $logitech_mouse_id "Device Accel Adaptive Deceleration" 2
xinput set-prop $logitech_mouse_id "Evdev Wheel Emulation" 1
xinput set-prop $logitech_mouse_id "Evdev Wheel Emulation Axes" 7 6 5 4
xinput set-prop $logitech_mouse_id "Evdev Wheel Emulation Button" 8
Jonathan
fuente
1
Su "Evdev Wheel Emulation Axes"configuración utiliza desplazamiento natural horizontalmente, desplazamiento normal verticalmente. Supongo que la mayoría quiere un desplazamiento totalmente natural (uso 7 6 5 4) o un desplazamiento totalmente normal (uso 6 7 4 5).
tanius
A partir de Ubuntu 17.10, el evdevcontrolador en el que se basa esta solución ya no está instalado de forma predeterminada. Todavía puede instalarlo sudo apt install xserver-xorg-input-evdevo usar el libinputcontrolador ahora predeterminado en su lugar. En cuyo caso, la respuesta de @htorque es la forma de configurar la velocidad y la sensibilidad.
tanius
4

Esto se basa en la respuesta de Vitaly Dubyna, pero se actualizó para funcionar para las recientes versiones de Thinkpads y Xorg (2019) (gracias a los comentarios a esa respuesta).

Desde la línea de comando, ingrese este comando (solo la parte después de $):

$ xinput | grep -i trackpoint
TPPS/2 Elan TrackPoint   id=12 

Note id = 12 (puede ser diferente en su sistema).

$ xinput --list-props 12
...
libinput Accel Speed (300):     0.000000
libinput Accel Speed Default (301):     0.000000
...

Experimente con el ajuste de velocidad; valores negativos permitidos. Por ejemplo,

$ xinput --set-prop 12 'libinput Accel Speed' -0.25

Una vez que esté satisfecho, agregue el comando como una aplicación de inicio (generalmente en el menú Inicio> Preferencias> Aplicaciones de inicio).

El nombre de configuración anterior se confirma para los modelos Thinkpad X1c5 (Ubuntu 18.04), E480 (18.04) y E490 (Mint 19.1).

Han-Kwang Nienhuys
fuente
2

Configure las libinputopciones a través de xorg.conf.d y udev

A partir de Ubuntu 17.10, el libinputcontrolador es ahora el estándar.

Algunas de sus opciones se pueden configurar a través del mecanismo X.org, pero la velocidad y la sensibilidad deben configurarse con reglas udev para poner los parámetros del controlador del núcleo. (Vea la respuesta de @htorque para eso).

Para configurar las otras opciones, cree un archivo /etc/X11/xorg.conf.d/52-trackpoint-tweaks.conf(o con un nombre similar). El archivo debe tener este contenido:

Section "InputClass"
    Identifier         "Trackpoint tweaks"
    MatchProduct       "TPPS/2 IBM TrackPoint"
    MatchDevicePath    "/dev/input/event*"

    # The default driver now, so optional to put in this line. 
    # But does not hurt mentioning where the options will go.
    Driver             "libinput"

    Option             "NaturalScrolling"      "true"
EndSection

Para ver el efecto, debes reiniciar X, por supuesto. Para la lista de las otras opciones disponibles de X.org, vea man (4) libinput .

Para obtener una lista de las propiedades xinput correspondientes (pero con nombres diferentes), vea xinput --list-prop "TPPS/2 IBM TrackPoint"o nuevamente man (4) libinput . Puede usarlos para probar los efectos inmediatamente con xinput --set-prop […]comandos, sin tener que reiniciar X cada vez. Y luego use los equivalentes en el 52-trackpoint-tweaks.confarchivo para hacer los cambios permanentes, como se muestra arriba.

Tanius
fuente
0

Tengo un thinkpad y configuré todo lo que deseaba a través de una aplicación llamada Dispositivos señaladores, que es un diálogo de configuración de mouse un poco más avanzado.

No recuerdo cuántas opciones había para la sensibilidad, pero a diferencia de la pantalla de configuración del mouse incorporada, esta reconoció el trackpoint y el trackpad de forma independiente y permitió un mayor control como configurar el botón de desplazamiento (era el botón 2 en mi configuración) y permitiendo la sensibilidad de detección de palma.

Andrés
fuente
No hay opciones de sensibilidad o velocidad con gpointing-device-settings.
Jonathan Blackhall
0

En Ubuntu 12.04 Unity 2D en Thinkpad sl410, uso la Mouse And Touchpadventana estándar en Configuración. Cambiar la aceleración o la velocidad también cambia la sensibilidad de un trackpoint. Aunque el comportamiento se invierte, la disminución de la velocidad provoca un aumento de la sensibilidad del trackpoint. La configuración persiste entre reinicios.

Ayrat
fuente
0

Configurar evdevopciones a través de xorg.conf.d (DEPRECATED)

El evdevcontrolador era el controlador predeterminado para el trackpoint en versiones anteriores de Ubuntu, pero a partir de Ubuntu 17.10, el siguiente enfoque está en desuso y ya no funciona de fábrica. Esto se debe a que el evdevcontrolador que ya no está instalado de manera predeterminada, ya que el libinputcontrolador es el estándar ahora, vea mi otra respuesta para configurar eso.

Si lo desea, aún puede usar la evdevsolución a continuación después de instalar el controlador con sudo apt install xserver-xorg-input-evdev( fuente ).

Todo se puede configurar bien en un /etc/X11/xorg.conf.d/52-trackpoint-tweaks.confarchivo (o con un nombre similar: en Ubuntu, debe crear un directorio y un archivo, pero el mecanismo funciona; tal vez uno de los nombres de directorio es en x11lugar de X11en algunas versiones).

El archivo debe tener este contenido:

Section "InputClass"
    Identifier "Trackpoint tweaks"
    MatchProduct       "TPPS/2 IBM TrackPoint"
    MatchDevicePath    "/dev/input/event*"

    # Specify the driver, as else Ubuntu 17.10 will use libinput.
    Driver             "evdev"

    # Configure wheel emulation, using middle button and "natural scrolling".
    Option             "EmulateWheel"            "on"
    Option             "EmulateWheelButton"      "2"
    Option             "EmulateWheelTimeout"     "200"
    Option             "EmulateWheelInertia"     "7"
    Option             "XAxisMapping"            "7 6"
    Option             "YAxisMapping"            "5 4"

    # Set up an acceleration config ("mostly linear" profile, factor 5.5).
    Option             "AccelerationProfile"     "3"
    Option             "AccelerationNumerator"   "55"
    Option             "AccelerationDenominator" "10"
    Option             "ConstantDeceleration"    "3"
EndSection

Para ver el efecto, debes reiniciar X, por supuesto. Para jugar con estas configuraciones mientras X se está ejecutando, use xinput, pero tenga en cuenta que los nombres de las opciones son diferentes allí.

Como señaló @Vitaly Dubyna, la "desaceleración constante" puede usarse para controlar la sensibilidad: reduce todos los movimientos con ese factor, por lo que el valor "3" hace que todos los movimientos sean 3 veces más lentos en comparación con el valor predeterminado "1".

Documentación de opciones:

Tanius
fuente