Pengaturan Xinput tidak berpengaruh pada mouse dan / atau touchpad saya dan juga tidak persisten selama logoff / reboot

0

Saya seorang pembelajar Linux, jadi silakan sedikit terang dengan saya. Saya menggunakan Linux mint dengan XFCE4, tidak terlalu khusus dikustomisasi. Saya menggunakannya pada laptop yang menggunakan touch pad Elantech. Menggunakan panel sentuh Elantech, secara default, cukup mengerikan. Ini sangat tidak akurat dan frustasi untuk digunakan, terutama karena terlalu cepat ketika mencoba gerakan halus. Ketika saya mencoba mengubah pengaturan untuk sens dan akselerasi di kedua pengaturan XFCE4 gui dan xinput dengan, misalnya:

xinput set-prop 'Elan Touchpad' 'Device Accel Constant Deceleration' 1.0

seluruh beban tidak ada yang terjadi. Ini berlaku untuk mouse USB saya juga. Awalnya saya pikir ini hanya berlaku setelah reboot, jadi itulah yang saya lakukan. Ketika kembali, semua alat peraga terdaftar

xinput list-props 'Elan Touchpad'

diatur ulang ke apa mereka sebelum saya reboot. Setelah pengujian lebih lanjut, saya melihat bahwa setelah logoff dan login, mereka juga diatur ulang.

Jadi di mana saya berada:

Apakah perubahan pengaturan Xinput memerlukan reboot? Jika tidak, maka sepertinya beberapa perangkat lunak lain mengendalikan mouse saya dan saya perlu mendiagnosisnya.

Di mana tempat yang memungkinkan dalam proses login / boot di mana pengaturan ini akan ditetapkan? Mereka tidak di /usr/share/X11/xorg.conf.d, ya saya sudah memastikannya.

Bisakah saya benar-benar menghindari ini dengan driver mouse baru? Adakah rekomendasi untuk bantalan sentuh Elantech? Saya telah melihat orang lain dengan masalah ini (driver elan pad jelek) tetapi tidak ada saran.

Terimakasih banyak.

Allan
sumber

Jawaban:

2

Pastikan pengaturan diterima tanpa kesalahan oleh xinput. Maka ini dapat dimasukkan ke dalam skrip shell. Milik saya dalam .xinputrc dimuat oleh .xinitrc. Touchpad i2c saya mungkin tidak sama jadi hati-hati dan jangan menyalin semuanya kata demi kata Ini pengaturan saya:

#!/bin/sh
xinput --set-prop "ELAN1300:00 04F3:3057 Touchpad" "Device Accel Profile" "1"
xinput --set-prop "ELAN1300:00 04F3:3057 Touchpad" "Device Accel Constant Deceleration" "1.000000"
xinput --set-prop "ELAN1300:00 04F3:3057 Touchpad" "Device Accel Adaptive Deceleration" "1.000000"
xinput --set-prop "ELAN1300:00 04F3:3057 Touchpad" "Device Accel Velocity Scaling" "1.000000"
xinput --set-ptr-feedback "ELAN1300:00 04F3:3057 Touchpad" 4 2 1

Kemudian pengaturan dapat ditemukan menggunakan xinput:

Device 'ELAN1300:00 04F3:3057 Touchpad':
Device Enabled (152):   1
Coordinate Transformation Matrix (154): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (280): 1
Device Accel Constant Deceleration (281):   1.000000
Device Accel Adaptive Deceleration (282):   1.000000
Device Accel Velocity Scaling (283):    1.000000
Synaptics Edges (284):  128, 3080, 119, 2091
Synaptics Finger (285): 5, 60, 0
Synaptics Tap Time (286):   180
Synaptics Tap Move (287):   171
Synaptics Tap Durations (288):  180, 2, 100
Synaptics ClickPad (289):   1
Synaptics Middle Button Timeout (290):  0
Synaptics Two-Finger Pressure (291):    282
Synaptics Two-Finger Width (292):   7
Synaptics Scrolling Distance (293): 154, 77
Synaptics Edge Scrolling (294): 0, 0, 0
Synaptics Two-Finger Scrolling (295):   1, 0
Synaptics Move Speed (296): 1.000000, 1.000000, 0.000000, 0.000000
Synaptics Off (297):    1 <- because of syndaemon with typing
Synaptics Locked Drags (298):   0
Synaptics Locked Drags Timeout (299):   5000
Synaptics Tap Action (300): 0, 0, 0, 0, 0, 0, 0
Synaptics Click Action (301):   1, 3, 2
Synaptics Circular Scrolling (302): 0
Synaptics Circular Scrolling Distance (303):    0.100000
Synaptics Circular Scrolling Trigger (304): 0
Synaptics Circular Pad (305):   0
Synaptics Palm Detection (306): 1
Synaptics Palm Dimensions (307):    10, 200
Synaptics Coasting Speed (308): 20.000000, 50.000000
Synaptics Pressure Motion (309):    30, 160
Synaptics Pressure Motion Factor (310): 1.000000, 1.000000
Synaptics Grab Event Device (311):  0
Synaptics Gestures (312):   1
Synaptics Capabilities (313):   1, 0, 0, 1, 1, 0, 0
Synaptics Pad Resolution (314): 32, 31
Synaptics Area (315):   0, 0, 0, 0
Synaptics Soft Button Areas (316):  1924, 0, 1812, 0, 1283, 1892, 1812, 0
Synaptics Noise Cancellation (317): 19, 19
Device Product ID (276):    1267, 12375
Device Node (275):  "/dev/input/event15"

Ada beberapa pengaturan yang ditampilkan di Xorg.0.log Saya tidak tahu cara mengaturnya sehingga masih menjadi misteri:

 [21.058] (II) config/udev: Adding input device ELAN1300:00 04F3:3057 Touchpad (/dev/input/event15)
 [21.058] (**) ELAN1300:00 04F3:3057 Touchpad: Applying InputClass "evdev touchpad catchall"
 [21.058] (**) ELAN1300:00 04F3:3057 Touchpad: Applying InputClass "libinput touchpad catchall"
 [21.058] (**) ELAN1300:00 04F3:3057 Touchpad: Applying InputClass "touchpad catchall"
 [21.058] (**) ELAN1300:00 04F3:3057 Touchpad: Applying InputClass "Default clickpad buttons"
 [21.058] (**) ELAN1300:00 04F3:3057 Touchpad: Applying InputClass "touchpad catchall"
 [21.058] (**) ELAN1300:00 04F3:3057 Touchpad: Applying InputClass "Synaptics Clickpad"
 [21.058] (II) LoadModule: "synaptics"
 [21.059] (II) Loading /usr/lib/xorg/modules/input/synaptics_drv.so
 [21.060] (II) Module synaptics: vendor="X.Org Foundation"
 [21.060]   compiled for 1.20.0, module version = 1.9.1
 [21.060]   Module class: X.Org XInput Driver
 [21.060]   ABI class: X.Org XInput driver, version 24.1
 [21.060] (II) Using input driver 'synaptics' for 'ELAN1300:00 04F3:3057 Touchpad'
 [21.060] (**) ELAN1300:00 04F3:3057 Touchpad: always reports core events
 [21.060] (**) Option "Device" "/dev/input/event15"
 [21.186] (II) synaptics: ELAN1300:00 04F3:3057 Touchpad: found clickpad property
 [21.186] (--) synaptics: ELAN1300:00 04F3:3057 Touchpad: x-axis range 0 - 3208 (res 31)
 [21.186] (--) synaptics: ELAN1300:00 04F3:3057 Touchpad: y-axis range 0 - 2210 (res 32)
 [21.186] (II) synaptics: ELAN1300:00 04F3:3057 Touchpad: device does not report pressure, will use touch data.
 [21.186] (II) synaptics: ELAN1300:00 04F3:3057 Touchpad: device does not report finger width.
 [21.186] (--) synaptics: ELAN1300:00 04F3:3057 Touchpad: buttons: left double triple
 [21.186] (--) synaptics: ELAN1300:00 04F3:3057 Touchpad: Vendor 0x4f3 Product 0x3057
 [21.186] (--) synaptics: ELAN1300:00 04F3:3057 Touchpad: invalid pressure range.  defaulting to 0 - 255
 [21.186] (--) synaptics: ELAN1300:00 04F3:3057 Touchpad: invalid finger width range.  defaulting to 0 - 15
 [21.186] (**) Option "FingerLow" "5"
 [21.186] (**) Option "FingerHigh" "60"
 [21.186] (**) Option "MaxTapTime" "1"
 [21.186] (**) Option "MaxDoubleTapTime" "2"
 [21.186] (**) Option "HasSecondarySoftButtons" "0"
 [21.186] (**) Option "EmulateMidButtonTime" "0"
 [21.187] (**) Option "VertScrollDelta" "154"
 [21.187] (**) Option "CornerCoasting" "0"
 [21.187] (**) Option "LockedDrags" "0"
 [21.187] (**) Option "CircularPad" "0"
 [21.187] (**) Option "PalmDetect" "1"
 [21.187] (**) Option "MinSpeed" "0.9"
 [21.187] (**) Option "MaxSpeed" "0.9"
 [21.187] (**) Option "AccelFactor" "0"
 [21.187] (**) Option "SoftButtonAreas" "60% 0 82% 0 40% 59% 82% 0"
 [21.187] (--) synaptics: ELAN1300:00 04F3:3057 Touchpad: touchpad found
 [21.187] (**) ELAN1300:00 04F3:3057 Touchpad: always reports core events
 [21.206] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-6/i2c-ELAN1300:00/0018:04F3:3057.0001/input/input18/event15"
 [21.206] (II) XINPUT: Adding extended input device "ELAN1300:00 04F3:3057 Touchpad" (type: TOUCHPAD, id 11)
 [21.206] (**) synaptics: ELAN1300:00 04F3:3057 Touchpad: (accel) MinSpeed is now constant deceleration 1.1
 [21.206] (**) synaptics: ELAN1300:00 04F3:3057 Touchpad: (accel) MaxSpeed is now 1.00
 [21.206] (**) synaptics: ELAN1300:00 04F3:3057 Touchpad: (accel) AccelFactor is now 0.000
 [21.206] (**) ELAN1300:00 04F3:3057 Touchpad: (accel) keeping acceleration scheme 1
 [21.206] (**) ELAN1300:00 04F3:3057 Touchpad: (accel) acceleration profile 1
 [21.206] (**) ELAN1300:00 04F3:3057 Touchpad: (accel) acceleration factor: 2.000
 [21.206] (**) ELAN1300:00 04F3:3057 Touchpad: (accel) acceleration threshold: 4
 [21.207] (--) synaptics: ELAN1300:00 04F3:3057 Touchpad: touchpad found
 [21.208] (II) config/udev: Adding input device ELAN1300:00 04F3:3057 Touchpad (/dev/input/mouse0)
 [21.208] (**) ELAN1300:00 04F3:3057 Touchpad: Ignoring device from InputClass "touchpad ignore duplicates"

/Etc/X11/xorg.conf.d/70-synaptics.conf saya memiliki ini seperti yang disebutkan oleh jawaban sebelumnya kecuali tanpa pengaturan xinput yang Anda buat dan tidak termasuk dalam driver sinaptik:

Section "InputClass"
    Identifier "Synaptics Clickpad"
    Driver "synaptics"
    MatchIsTouchpad "on"

    Option "SoftButtonAreas" "60% 0 82% 0 40% 59% 82% 0"
    Option "MaxTapTime" "1"
    Option "MaxDoubleTapTime" "2"
    Option "HasSecondarySoftButtons" "0"
    Option "EmulateMidButtonTime" "0"
    Option "CornerCoasting" "0"
    Option "FingerLow" "5"
    Option "FingerHigh" "60"
    Option "LockedDrags" "0"
    Option "CircularPad" "0"
    Option "PalmDetect" "1"
    Option "AccelFactor" "0"
    Option "VertScrollDelta" "154"
    Option "MinSpeed" "0.9"
    Option "MaxSpeed" "0.9"
    Option "AccelProfile" "flat"
    Option "AccelSpeed" "0.0"
EndSection

Saya berharap ada cara mudah untuk membuang pengaturan saat ini dari xinput ke file konfigurasi yang dapat dimuat setiap waktu dan mudah dimodifikasi. Script awk sederhana mungkin akan bekerja juga.

EDIT: Misteri dibubarkan. Saya akhirnya mendapatkan pengaturan akselerasi ke file baru: /etc/X11/xorg.conf.d/80-pointer.conf

Section "InputClass"
  Identifier "ELAN1300"
  MatchIsTouchpad "on"
  MatchProduct "ELAN1300:00"
  Option "AccelerationProfile" "1"
  Option "AccelerationScheme" "predictable"
  Option "AccelerationThreshold" "5"
  Option "AccelerationNumerator" "2"
  Option "AccelerationDenominator" "1"
  Option "ConstantDeceleration" "2.4"
  Option "AdaptiveDeceleration" "2.1"
EndSection

Lalu saya mendapatkan ini di Xorg.0.log saya:

[ 16732.671] (II) XINPUT: Adding extended input device "ELAN1300:00 04F3:3057 Touchpad" (type: TOUCHPAD, id 11)
[ 16732.671] (**) synaptics: ELAN1300:00 04F3:3057 Touchpad: (accel) MinSpeed is now constant deceleration 2.5
[ 16732.671] (**) synaptics: ELAN1300:00 04F3:3057 Touchpad: (accel) MaxSpeed is now 1.75
[ 16732.671] (**) synaptics: ELAN1300:00 04F3:3057 Touchpad: (accel) AccelFactor is now 0.051
[ 16732.671] (**) Option "AccelerationScheme" "predictable"
[ 16732.671] (**) ELAN1300:00 04F3:3057 Touchpad: (accel) keeping acceleration scheme 1
[ 16732.671] (**) Option "ConstantDeceleration" "2.4"
[ 16732.671] (**) ELAN1300:00 04F3:3057 Touchpad: (accel) constant deceleration by 2.4
[ 16732.671] (**) Option "AdaptiveDeceleration" "2.1"
[ 16732.671] (**) ELAN1300:00 04F3:3057 Touchpad: (accel) adaptive deceleration by 2.1
[ 16732.671] (**) Option "AccelerationProfile" "1"
[ 16732.672] (**) ELAN1300:00 04F3:3057 Touchpad: (accel) acceleration profile 1
[ 16732.672] (**) Option "AccelerationNumerator" "2"
[ 16732.672] (**) Option "AccelerationDenominator" "1"
[ 16732.672] (**) Option "AccelerationThreshold" "5"
[ 16732.672] (**) ELAN1300:00 04F3:3057 Touchpad: (accel) acceleration factor: 2.000
[ 16732.672] (**) ELAN1300:00 04F3:3057 Touchpad: (accel) acceleration threshold: 5

Jadi skrip shell tidak lagi diperlukan untuk mengubah pengaturan ini. Mereka adalah bagian dari Xserver dan bukan driver sinaptik. Pengaturan akselerasi ini tampaknya berfungsi dengan baik meskipun saya tidak memahaminya. Saya sebenarnya mencoba untuk mendapatkan kontrol yang lebih baik dari penyadapan dan mengklik. Saya sekarang menggunakan VertEdgeScroll bukan VertTwoFingerScroll dan beberapa ketidakstabilan hilang.

beginner6789
sumber
0

1) xinput perubahan dilakukan langsung ke driver input server X. Mereka efektif sekaligus, mereka tidak memerlukan reboot, dan mereka tidak disimpan di mana pun, jadi setelah reboot atau restart server X mereka akan hilang.

2) Untuk membuat perubahan permanen, cara paling sederhana adalah membuat xorg.conf dengan sebuah InputDevice atau InputClass bagian. Bagian-bagian ini tidak ada secara default xorg.conf (pada kenyataannya, seringkali tidak ada xorg.conf sama sekali) dan harus ditambahkan.

Hati - hati, opsi tidak selalu memiliki nama yang persis sama seperti di xinput daftar properti. Perhatikan spasi dan huruf besar / kecil. Lihat man xorg.conf, man evdev dan halaman manual driver untuk Anda Elan Touchpad (lihat Xorg.log ) untuk detail. Ada juga banyak tutorial di web.

3) Saya, tidak terbiasa dengan Elan Touchpad, dan saya belum melihat daftar lengkap properti, tetapi sering properti bekerja bersama, dan mungkin hanya efektif dalam beberapa mode atau konfigurasi (dikendalikan oleh properti lain). Jadi, Anda mungkin perlu mengatur properti lain sebelum perubahan 'Deselerasi Konstan Perangkat Accel' berlaku. Juga, pastikan untuk memeriksa -list-props lagi bahwa pengaturan telah didaftarkan.

dirkt
sumber