Nedávno jsem dostal nové Lenovo Y50 a používám Ubuntu 14.04. Na mém předchozím Dell XPS 17 měl touchpad vynikající odezvu i při mírném pohybu prstu — pohybem prstu na velmi krátkou vzdálenost jsem mohl pohybovat myší po pixelech, což bylo velmi užitečné např. úzké okraje oken. Na tomto novém stroji však myš nereaguje, dokud nepohnu prstem asi o půl centimetru, v tomto okamžiku myš poskočí asi o tucet pixelů. Jakmile se myš pohybuje tímto způsobem, jsem jsem schopen ji pohybovat na libovolně přesné vzdálenosti pomalejším pohybem prstu. Chtěl bych mít tuto těsnou přesnost, i když ještě nehýbu myší. (Poznámka:tento problém není dojít při použití myši USB.)
Myslel jsem, že deaktivuji noise cancellation
v xinput
může pomoci, tak jsem nastavil hodnoty potlačení hluku na nulu, ale nepomohlo to. Detekce dlaně je také nastavena na nulu. Ví někdo, jak dosáhnout přesnosti myši pro malé pohyby touchpadu?
Děkuji!
Pro informaci xinput
vlastnosti:
$ 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"
Pro informaci synclient
parametry:
$ 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
Přijatá odpověď:
Můj Lenovo t540p vykazoval stejné příznaky s výchozím profilem zrychlení =1 (závislý na zařízení).
Související:Nelze použít příkaz „start“ v 15.04?Zdá se, že to souvisí se zrychlením ukazatele XOrg a souvisejícím „profilem zrychlení“. Pokud nastavíte profil zrychlení zařízení na -1 (žádný), příznak mrtvého bodu zřejmě zmizí, i když se kurzor myši na displeji pohybuje o velmi malé vzdálenosti, takže je velmi přesný, ale docela k ničemu.
Přepnul jsem na profil lineárního zrychlení zařízení (AccelerationProfile 6
) a došlo k okamžitému zlepšení. Počáteční zaváhání pohybu je stále tam, ale kurzor neskáče jako předtím.
Další výzkum příčiny „mrtvého místa“ je oprávněný, ale může to být způsobeno chováním firmwaru. Manuální stránka synaptics zmiňuje potlačení šumu firmwaru, které může být v současnosti obtížné nebo nemožné ovládat:
Potlačení hluku
Synaptika má vestavěné potlačení šumu na základě hystereze. To znamená, že příchozí souřadnice ve skutečnosti posunou rámeček předem definovaných rozměrů tak, že pokryje příchozí souřadnici a jako vstup se použije pouze vlastní střed rámečku. Je zřejmé, že čím menší je krabice, tím lépe, ale zvyšuje se také pravděpodobnost pohybu šumu.
Vyladění profilu zrychlení a související konfigurace
Zde je skript, který používám k úpravě nastavení v mém systému:
#!/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
Jakmile najdete nastavení, která se vám líbí, můžete je přidat do /etc/X11/xorg.conf.d/51-synaptics-quirks.conf
soubor (zkopírován z /usr/share/X11/xorg.conf.d
) nebo tam vytvořte nový samostatný soubor .conf s názvem jako 99-your-config-file-name.conf
.
Option "AccelerationProfile" "6"
# May want to set "ConstantDeceleration" and "VelocityScale" or other
# values here as well