Ich habe kürzlich ein neues Lenovo Y50 bekommen und verwende Ubuntu 14.04. Bei meinem vorherigen Dell XPS 17 reagierte das Touchpad hervorragend, selbst wenn ich meinen Finger leicht bewegte – indem ich meinen Finger über eine sehr kurze Distanz bewegte, konnte ich die Maus pixelweise bewegen, was z. B. beim Greifen sehr hilfreich war schmale Fensterumrandung. Auf dieser neuen Maschine reagiert die Maus jedoch erst, wenn ich meinen Finger etwa einen halben Zentimeter bewegt habe, woraufhin die Maus um etwa ein Dutzend Pixel springt. Sobald sich die Maus auf diese Weise bewegt, bin ich durch langsameres Bewegen des Fingers um beliebig genaue Distanzen bewegen. Ich hätte gerne diese enge Präzision, auch wenn ich die Maus nicht schon bewege. (Hinweis:Dieses Problem tritt nicht auf auftreten, wenn eine USB-Maus verwendet wird.)
Ich dachte, die noise cancellation
zu deaktivieren in xinput
kann helfen, also habe ich die Geräuschunterdrückungswerte auf Null gesetzt, aber das hat nicht geholfen. Die Handflächenerkennung wird ebenfalls auf Null gesetzt. Weiß jemand, wie man Mauspräzision für kleine Touchpad-Bewegungen erreicht?
Vielen Dank!
Als Referenz xinput
Eigenschaften:
$ xinput list-props 'ETPS/2 Elantech Touchpad'
Device 'ETPS/2 Elantech Touchpad':
Device Enabled (155): 1
Coordinate Transformation Matrix (157): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (278): 1
Device Accel Constant Deceleration (279): 1.750000
Device Accel Adaptive Deceleration (280): 1.000000
Device Accel Velocity Scaling (281): 12.500000
Synaptics Edges (282): 127, 3061, 112, 1973
Synaptics Finger (283): 1, 1, 0
Synaptics Tap Time (284): 180
Synaptics Tap Move (285): 10
Synaptics Tap Durations (286): 180, 180, 100
Synaptics ClickPad (287): 1
Synaptics Middle Button Timeout (288): 0
Synaptics Two-Finger Pressure (289): 282
Synaptics Two-Finger Width (290): 7
Synaptics Scrolling Distance (291): 45, 45
Synaptics Edge Scrolling (292): 0, 0, 0
Synaptics Two-Finger Scrolling (293): 1, 1
Synaptics Move Speed (294): 1.000000, 1.750000, 0.052507, 0.000000
Synaptics Off (295): 0
Synaptics Locked Drags (296): 0
Synaptics Locked Drags Timeout (297): 5000
Synaptics Tap Action (298): 2, 3, 0, 0, 1, 3, 0
Synaptics Click Action (299): 1, 3, 0
Synaptics Circular Scrolling (300): 0
Synaptics Circular Scrolling Distance (301): 0.100000
Synaptics Circular Scrolling Trigger (302): 0
Synaptics Circular Pad (303): 0
Synaptics Palm Detection (304): 0
Synaptics Palm Dimensions (305): 1000, 1000
Synaptics Coasting Speed (306): 20.000000, 50.000000
Synaptics Pressure Motion (307): 30, 160
Synaptics Pressure Motion Factor (308): 1.000000, 1.000000
Synaptics Resolution Detect (309): 1
Synaptics Grab Event Device (310): 1
Synaptics Gestures (311): 1
Synaptics Capabilities (312): 1, 0, 0, 1, 1, 1, 1
Synaptics Pad Resolution (313): 32, 32
Synaptics Area (314): 0, 0, 0, 0
Synaptics Soft Button Areas (315): 1594, 0, 1709, 0, 0, 0, 0, 0
Synaptics Noise Cancellation (316): 0, 0
Device Product ID (271): 2, 14
Device Node (272): "/dev/input/event5"
Als Referenz synclient
Parameter:
$ synclient
Parameter settings:
LeftEdge = 127
RightEdge = 3061
TopEdge = 112
BottomEdge = 1973
FingerLow = 1
FingerHigh = 1
MaxTapTime = 180
MaxTapMove = 100
MaxDoubleTapTime = 180
SingleTapTimeout = 180
ClickTime = 100
EmulateMidButtonTime = 0
EmulateTwoFingerMinZ = 282
EmulateTwoFingerMinW = 7
VertScrollDelta = 45
HorizScrollDelta = 45
VertEdgeScroll = 0
HorizEdgeScroll = 0
CornerCoasting = 0
VertTwoFingerScroll = 1
HorizTwoFingerScroll = 1
MinSpeed = 1
MaxSpeed = 1.75
AccelFactor = 0.0525072
TouchpadOff = 0
LockedDrags = 0
LockedDragTimeout = 5000
RTCornerButton = 2
RBCornerButton = 3
LTCornerButton = 0
LBCornerButton = 0
TapButton1 = 1
TapButton2 = 3
TapButton3 = 0
ClickFinger1 = 1
ClickFinger2 = 3
ClickFinger3 = 0
CircularScrolling = 0
CircScrollDelta = 0.1
CircScrollTrigger = 0
CircularPad = 0
PalmDetect = 0
PalmMinWidth = 1000
PalmMinZ = 1000
CoastingSpeed = 20
CoastingFriction = 50
PressureMotionMinZ = 30
PressureMotionMaxZ = 160
PressureMotionMinFactor = 1
PressureMotionMaxFactor = 1
ResolutionDetect = 1
GrabEventDevice = 1
TapAndDragGesture = 1
AreaLeftEdge = 0
AreaRightEdge = 0
AreaTopEdge = 0
AreaBottomEdge = 0
HorizHysteresis = 0
VertHysteresis = 0
ClickPad = 1
RightButtonAreaLeft = 1594
RightButtonAreaRight = 0
RightButtonAreaTop = 1709
RightButtonAreaBottom = 0
MiddleButtonAreaLeft = 0
MiddleButtonAreaRight = 0
MiddleButtonAreaTop = 0
MiddleButtonAreaBottom = 0
Akzeptierte Antwort:
Mein Lenovo t540p zeigte die gleichen Symptome mit dem Standardbeschleunigungsprofil =1 (geräteabhängig).
Verwandte:Kann den Befehl „Start“ in 15.04 nicht verwenden?Dies scheint mit der Zeigerbeschleunigung von XOrg und dem zugehörigen „Beschleunigungsprofil“ zusammenzuhängen. Wenn Sie das Beschleunigungsprofil des Geräts auf -1 (keine) einstellen, scheint das Totpunkt-Symptom zu verschwinden, obwohl sich der Mauszeiger auf dem Display nur um sehr kleine Entfernungen bewegt, wodurch es sehr präzise, aber ziemlich nutzlos wird.
Ich habe zu einem linearen Gerätebeschleunigungsprofil gewechselt (AccelerationProfile 6
) und sah eine sofortige Verbesserung. Das anfängliche Zögern bei der Bewegung ist immer noch da, aber der Cursor springt nicht wie zuvor.
Weitere Untersuchungen zur Ursache des „toten Punkts“ sind gerechtfertigt, können jedoch auf das Verhalten der Firmware zurückzuführen sein. Die Synaptics-Manpage erwähnt Firmware-Geräuschunterdrückung, die derzeit möglicherweise nur schwer oder gar nicht zu kontrollieren ist:
Geräuschunterdrückung
Die Synaptik verfügt über eine eingebaute Geräuschunterdrückung basierend auf Hysterese. Dies bedeutet, dass eingehende Koordinaten tatsächlich eine Box mit vordefinierten Abmessungen verschieben, sodass sie die eingehende Koordinate abdeckt, und nur der eigene Mittelpunkt der Box als Eingabe verwendet wird. Natürlich ist es umso besser, je kleiner die Box ist, aber die Wahrscheinlichkeit, dass Rauschbewegungen durchkommen, steigt ebenfalls.
Optimieren des Beschleunigungsprofils und der zugehörigen Konfiguration
Hier ist ein Skript, das ich verwende, um die Einstellungen auf meinem System zu optimieren:
#!/bin/bash
DEVICE="SynPS/2 Synaptics TouchPad"
xinput --set-prop "$DEVICE" "Device Accel Profile" 6
xinput --set-prop "$DEVICE" "Device Accel Constant Deceleration" 12
xinput --set-prop "$DEVICE" "Device Accel Velocity Scaling" 20
Sobald Sie Einstellungen gefunden haben, die Ihnen gefallen, können Sie diese zu Ihrer /etc/X11/xorg.conf.d/51-synaptics-quirks.conf
hinzufügen Datei (kopiert von /usr/share/X11/xorg.conf.d
) oder erstellen Sie dort eine neue, separate .conf-Datei mit einem Namen wie 99-your-config-file-name.conf
.
Option "AccelerationProfile" "6"
# May want to set "ConstantDeceleration" and "VelocityScale" or other
# values here as well