1SYNAPTICS(4) Kernel Interfaces Manual SYNAPTICS(4)
2
3
4
6 synaptics - touchpad input driver
7
9 Section "InputDevice"
10 Identifier "devname"
11 Driver "synaptics"
12 Option "Device" "devpath"
13 Option "Path" "path"
14 ...
15 EndSection
16
18 synaptics is an Xorg input driver for touchpads. Even though touchpads
19 can be handled by the normal evdev or mouse drivers, this driver allows
20 more advanced features of the touchpad to become available. Some bene‐
21 fits would be:
22
23 • Movement with adjustable, non-linear acceleration and speed.
24
25 • Button events through short touching of the touchpad.
26
27 • Double-Button events through double short touching of the touchpad.
28
29 • Dragging through short touching and holding down the finger on the
30 touchpad (tap-and-drag gesture).
31
32 • Middle and right button events on the upper and lower corner of the
33 touchpad.
34
35 • Vertical scrolling (button four and five events) through moving the
36 finger on the right side of the touchpad.
37
38 • The up/down button sends button four/five events.
39
40 • Horizontal scrolling (button six and seven events) through moving
41 the finger on the lower side of the touchpad.
42
43 • The multi-buttons send button four/five events for vertical
44 scrolling and button six/seven events for horizontal scrolling.
45
46 • Adjustable finger detection.
47
48 • Multifinger taps: two finger for right button and three finger for
49 middle button events. (Needs hardware support. Not all models im‐
50 plement this feature.)
51
52 • Pressure-dependent motion speed.
53
54 Note that depending on the touchpad firmware, some of these features
55 might be available even without using the synaptics driver. Note also
56 that some functions are not available on all touchpad models, because
57 they need support from the touchpad hardware/firmware. (Multifinger
58 taps for example.)
59
60 The name "synaptics" is historical and the driver still provides the
61 synaptics protocol parsing code. Under Linux however, the hardware-
62 specifics are handled by the kernel and this driver will work for any
63 touchpad that has a working kernel driver. If your device is recognized
64 as "PS/2 Mouse" or similar, the kernel driver does not support your de‐
65 vice and this driver will only provide limited functionality.
66
67
69 Please refer to xorg.conf(5) for general configuration details and for
70 options that can be used with all input drivers. This section only
71 covers configuration details specific to this driver.
72
73 The following driver Options are supported:
74
75 Option "Device" "string"
76 This option specifies the device file in your "/dev" directory
77 which will be used to access the physical device. Normally you
78 should use something like "/dev/input/eventX", where X is some
79 integer.
80
81 Option "Protocol" "string"
82 Specifies which kernel driver will be used by this driver. This
83 is the list of supported drivers and their default use scenar‐
84 ios.
85
86 auto-dev automatic, default (recommend)
87 event Linux 2.6 kernel events
88 psaux raw device access (Linux 2.4)
89 psm FreeBSD psm driver
90
91 Option "LeftEdge" "integer"
92 X coordinate for left edge. Property: "Synaptics Edges"
93
94 Option "RightEdge" "integer"
95 X coordinate for right edge. Property: "Synaptics Edges"
96
97 Option "TopEdge" "integer"
98 Y coordinate for top edge. Property: "Synaptics Edges"
99
100 Option "BottomEdge" "integer"
101 Y coordinate for bottom edge. Property: "Synaptics Edges"
102
103 Option "FingerLow" "integer"
104 When finger pressure drops below this value, the driver counts
105 it as a release. Property: "Synaptics Finger"
106
107 Option "FingerHigh" "integer"
108 When finger pressure goes above this value, the driver counts it
109 as a touch. Property: "Synaptics Finger"
110
111 Option "MaxTapTime" "integer"
112 Maximum time (in milliseconds) for detecting a tap. Property:
113 "Synaptics Tap Durations"
114
115 Option "MaxTapMove" "integer"
116 Maximum movement of the finger for detecting a tap. Property:
117 "Synaptics Tap Move"
118
119 Option "MaxDoubleTapTime" "integer"
120 Maximum time (in milliseconds) for detecting a double tap. Prop‐
121 erty: "Synaptics Tap Durations"
122
123 Option "ClickTime" "integer"
124 The duration of the mouse click generated by tapping. Property:
125 "Synaptics Tap Durations"
126
127 Option "ClickPad" "boolean"
128 Whether the device is a click pad. See ClickPad support for more
129 details. Property: "Synaptics ClickPad"
130
131 Option "VertEdgeScroll" "boolean"
132 Enable vertical scrolling when dragging along the right edge.
133 Property: "Synaptics Edge Scrolling"
134
135 Option "HorizEdgeScroll" "boolean"
136 Enable horizontal scrolling when dragging along the bottom edge.
137 Property: "Synaptics Edge Scrolling"
138
139 Option "CornerCoasting" "boolean"
140 Enable edge scrolling to continue while the finger stays in an
141 edge corner. Property: "Synaptics Edge Scrolling"
142
143 Option "VertTwoFingerScroll" "boolean"
144 Enable vertical scrolling when dragging with two fingers any‐
145 where on the touchpad. Property: "Synaptics Two-Finger
146 Scrolling"
147
148 Option "HorizTwoFingerScroll" "boolean"
149 Enable horizontal scrolling when dragging with two fingers any‐
150 where on the touchpad. Property: "Synaptics Two-Finger
151 Scrolling"
152
153 Option "VertScrollDelta" "integer"
154 Move distance of the finger for a scroll event. Property:
155 "Synaptics Scrolling Distance"
156
157 Option "HorizScrollDelta" "integer"
158 Move distance of the finger for a scroll event. Property:
159 "Synaptics Scrolling Distance"
160
161 Option "MinSpeed" "float"
162 Minimum speed factor. Property: "Synaptics Move Speed"
163
164 Option "MaxSpeed" "float"
165 Maximum speed factor. Property: "Synaptics Move Speed"
166
167 Option "AccelFactor" "float"
168 Acceleration factor for normal pointer movements. Property:
169 "Synaptics Move Speed"
170
171 Option "PressureMotionMinZ" "integer"
172 Finger pressure at which minimum pressure motion factor is ap‐
173 plied. Property: "Synaptics Pressure Motion"
174
175 Option "PressureMotionMaxZ" "integer"
176 Finger pressure at which maximum pressure motion factor is ap‐
177 plied. Property: "Synaptics Pressure Motion"
178
179 Option "PressureMotionMinFactor" "integer"
180 Lowest setting for pressure motion factor. Property: "Synaptics
181 Pressure Motion Factor"
182
183 Option "PressureMotionMaxFactor" "integer"
184 Greatest setting for pressure motion factor. Property: "Synap‐
185 tics Pressure Motion Factor"
186
187 Option "HorizHysteresis" "integer"
188 The minimum horizontal HW distance required to generate motion
189 events. Can be specified as a percentage. Increase if noise mo‐
190 tion is a problem for you. Zero is disabled. Default: 0.5 per‐
191 cent of the diagonal or (in case of evdev) the appropriate
192 "fuzz" as advertised by the device.
193
194 Option "VertHysteresis" "integer"
195 The minimum vertical HW distance required to generate motion
196 events. See HorizHysteresis.
197
198 Option "UpDownScrolling" "boolean"
199 If on, the up/down buttons generate button 4/5 events. If off,
200 the up button generates a double click and the down button gen‐
201 erates a button 2 event. This option is only available for
202 touchpads with physical scroll buttons. Property: "Synaptics
203 Button Scrolling"
204
205 Option "LeftRightScrolling" "boolean"
206 If on, the left/right buttons generate button 6/7 events. If
207 off, the left/right buttons both generate button 2 events. This
208 option is only available for touchpads with physical scroll but‐
209 tons. Property: "Synaptics Button Scrolling"
210
211 Option "UpDownScrollRepeat" "boolean"
212 If on, and the up/down buttons are used for scrolling (UpDown‐
213 Scrolling), these buttons will send auto-repeating 4/5 events,
214 with the delay between repeats determined by ScrollButtonRepeat.
215 This option is only available for touchpads with physical scroll
216 buttons. Property: "Synaptics Button Scrolling Repeat"
217
218 Option "LeftRightScrollRepeat" "boolean"
219 If on, and the left/right buttons are used for scrolling (Left‐
220 RightScrolling), these buttons will send auto-repeating 6/7
221 events, with the delay between repeats determined by ScrollBut‐
222 tonRepeat. This option is only available for touchpads with
223 physical scroll buttons. Property: "Synaptics Button Scrolling
224 Repeat"
225
226 Option "ScrollButtonRepeat" "integer"
227 The number of milliseconds between repeats of button events 4-7
228 from the up/down/left/right scroll buttons. This option is only
229 available for touchpads with physical scroll buttons. Property:
230 "Synaptics Button Scrolling Time"
231
232 Option "EmulateMidButtonTime" "integer"
233 Maximum time (in milliseconds) for middle button emulation.
234 Property: "Synaptics Middle Button Timeout"
235
236 Option "EmulateTwoFingerMinZ" "integer"
237 For touchpads not capable of detecting multiple fingers but are
238 capable of detecting finger pressure and width, this sets the Z
239 pressure threshold. When both Z pressure and W width thresholds
240 are crossed, a two finger press will be emulated. This defaults
241 to a value that disables emulation on touchpads with real two-
242 finger detection and defaults to a value that enables emulation
243 on remaining touchpads that support pressure and width support.
244 Property: "Synaptics Two-Finger Pressure"
245
246 Option "EmulateTwoFingerMinW" "integer"
247 For touchpads not capable of detecting multiple fingers but are
248 capable of detecting finger width and pressure, this sets the W
249 width threshold. When both W width and Z pressure thresholds
250 are crossed, a two finger press will be emulated. This feature
251 works best with (PalmDetect) off. Property: "Synaptics Two-Fin‐
252 ger Width"
253
254 Option "TouchpadOff" "integer"
255 Switch off the touchpad. Valid values are:
256
257 0 Touchpad is enabled
258 1 Touchpad is switched off (physical clicks still work)
259 2 Only tapping and scrolling is switched off
260 When the touchpad is switched off, button events caused by a
261 physical button press are still interpreted. On a ClickPad, this
262 includes software-emulated middle and right buttons as defined
263 by the SoftButtonAreas setting.
264
265 Property: "Synaptics Off"
266
267 Option "LockedDrags" "boolean"
268 If off, a tap-and-drag gesture ends when you release the finger.
269 If on, the gesture is active until you tap a second time, or un‐
270 til LockedDragTimeout expires. Property: "Synaptics Locked
271 Drags"
272
273 Option "LockedDragTimeout" "integer"
274 This parameter specifies how long it takes (in milliseconds) for
275 the LockedDrags mode to be automatically turned off after the
276 finger is released from the touchpad. Property: "Synaptics
277 Locked Drags Timeout"
278
279 Option "RTCornerButton" "integer"
280 Which mouse button is reported on a right top corner tap. Set
281 to 0 to disable. Property: "Synaptics Tap Action"
282
283 Option "RBCornerButton" "integer"
284 Which mouse button is reported on a right bottom corner tap.
285 Set to 0 to disable. Property: "Synaptics Tap Action"
286
287 Option "LTCornerButton" "integer"
288 Which mouse button is reported on a left top corner tap. Set to
289 0 to disable. Property: "Synaptics Tap Action"
290
291 Option "LBCornerButton" "integer"
292 Which mouse button is reported on a left bottom corner tap. Set
293 to 0 to disable. Property: "Synaptics Tap Action"
294
295 Option "TapButton1" "integer"
296 Which mouse button is reported on a non-corner one-finger tap.
297 Set to 0 to disable. Property: "Synaptics Tap Action"
298
299 Option "TapButton2" "integer"
300 Which mouse button is reported on a non-corner two-finger tap.
301 Set to 0 to disable. Property: "Synaptics Tap Action"
302
303 Option "TapButton3" "integer"
304 Which mouse button is reported on a non-corner three-finger tap.
305 Set to 0 to disable. Property: "Synaptics Tap Action"
306
307 Option "ClickFinger1" "integer"
308 Which mouse button is reported when left-clicking with one fin‐
309 ger. Set to 0 to disable. Property: "Synaptics Click Action"
310
311 Option "ClickFinger2" "integer"
312 Which mouse button is reported when left-clicking with two fin‐
313 gers. Set to 0 to disable. Property: "Synaptics Click Action"
314
315 Option "ClickFinger3" "integer"
316 Which mouse button is reported when left-clicking with three
317 fingers. Set to 0 to disable. Property: "Synaptics Click Ac‐
318 tion"
319
320 Option "CircularScrolling" "boolean"
321 If on, circular scrolling is used. Property: "Synaptics Circular
322 Scrolling"
323
324 Option "CircScrollDelta" "float"
325 Move angle (radians) of finger to generate a scroll event. Prop‐
326 erty: "Synaptics Circular Scrolling Distance"
327
328 Option "CircScrollTrigger" "integer"
329 Trigger region on the touchpad to start circular scrolling
330
331 0 All Edges
332 1 Top Edge
333 2 Top Right Corner
334 3 Right Edge
335 4 Bottom Right Corner
336 5 Bottom Edge
337 6 Bottom Left Corner
338
339 7 Left Edge
340 8 Top Left Corner
341 Property: "Synaptics Circular Scrolling Trigger"
342
343 Option "CircularPad" "boolean"
344 Instead of being a rectangle, the edge is the ellipse enclosed
345 by the Left/Right/Top/BottomEdge parameters. For circular
346 touchpads. Property: "Synaptics Circular Pad"
347
348 Option "PalmDetect" "boolean"
349 If palm detection should be enabled. Note that this also re‐
350 quires hardware/firmware support from the touchpad. Property:
351 "Synaptics Palm Detection"
352
353 Option "PalmMinWidth" "integer"
354 Minimum finger width at which touch is considered a palm. Prop‐
355 erty: "Synaptics Palm Dimensions"
356
357 Option "PalmMinZ" "integer"
358 Minimum finger pressure at which touch is considered a palm.
359 Property: "Synaptics Palm Dimensions"
360
361 Option "CoastingSpeed" "float"
362 Your finger needs to produce this many scrolls per second in or‐
363 der to start coasting. The default is 20 which should prevent
364 you from starting coasting unintentionally. 0 disables coast‐
365 ing. Property: "Synaptics Coasting Speed"
366
367 Option "CoastingFriction" "float"
368 Number of scrolls/second² to decrease the coasting speed. De‐
369 fault is 50. Property: "Synaptics Coasting Speed"
370
371 Option "SingleTapTimeout" "integer"
372 Timeout after a tap to recognize it as a single tap. Property:
373 "Synaptics Tap Durations"
374
375 Option "GrabEventDevice" "boolean"
376 If GrabEventDevice is true, the driver will grab the event de‐
377 vice for exclusive use when using the linux 2.6 event protocol.
378 When using other protocols, this option has no effect. Grabbing
379 the event device means that no other user space or kernel space
380 program sees the touchpad events. This is desirable if the X
381 config file includes /dev/input/mice as an input device, but is
382 undesirable if you want to monitor the device from user space.
383 When changing this parameter with the synclient program, the
384 change will not take effect until the synaptics driver is dis‐
385 abled and re-enabled. This can be achieved by switching to a
386 text console and then switching back to X.
387
388 Option "TapAndDragGesture" "boolean"
389 Switch on/off the tap-and-drag gesture. This gesture is an al‐
390 ternative way of dragging. It is performed by tapping (touching
391 and releasing the finger), then touching again and moving the
392 finger on the touchpad. The gesture is enabled by default and
393 can be disabled by setting the TapAndDragGesture option to
394 false. Property: "Synaptics Gestures"
395
396 Option "VertResolution" "integer"
397 Resolution of X coordinates in units/millimeter. The value is
398 used together with HorizResolution to compensate unequal verti‐
399 cal and horizontal sensitivity. Setting VertResolution and
400 HorizResolution equal values means no compensation. Default
401 value is read from the touchpad or set to 1 if value could not
402 be read. Property: "Synaptics Pad Resolution"
403
404 Option "HorizResolution" "integer"
405 Resolution of Y coordinates in units/millimeter. The value is
406 used together with VertResolution to compensate unequal vertical
407 and horizontal sensitivity. Setting VertResolution and HorizRes‐
408 olution equal values means no compensation. Default value is
409 read from the touchpad or set to 1 if value could not be read.
410 Property: "Synaptics Pad Resolution"
411
412 Option "AreaLeftEdge" "integer"
413 Ignore movements, scrolling and tapping which start left of this
414 edge. The option is disabled by default and can be enabled by
415 setting the AreaLeftEdge option to any integer value other than
416 zero. If supported by the server (version 1.9 and later), the
417 edge may be specified in percent of the total width of the
418 touchpad. Property: "Synaptics Area"
419
420 Option "AreaRightEdge" "integer"
421 Ignore movements, scrolling and tapping which start right of
422 this edge. The option is disabled by default and can be enabled
423 by setting the AreaRightEdge option to any integer value other
424 than zero. If supported by the server (version 1.9 and later),
425 the edge may be specified in percent of the total width of the
426 touchpad. Property: "Synaptics Area"
427
428 Option "AreaTopEdge" "integer"
429 Ignore movements, scrolling and tapping which start above this
430 edge. The option is disabled by default and can be enabled by
431 setting the AreaTopEdge option to any integer value other than
432 zero. If supported by the server (version 1.9 and later), the
433 edge may be specified in percent of the total height of the
434 touchpad. Property: "Synaptics Area"
435
436 Option "AreaBottomEdge" "integer"
437 Ignore movements, scrolling and tapping which start below this
438 edge. The option is disabled by default and can be enabled by
439 setting the AreaBottomEdge option to any integer value other
440 than zero. If supported by the server (version 1.9 and later),
441 the edge may be specified in percent of the total height of the
442 touchpad. Property: "Synaptics Area"
443
444 Option "SoftButtonAreas" "RBL RBR RBT RBB MBL MBR MBT MBB"
445 This option is only available on ClickPad devices. Enable soft
446 button click area support on ClickPad devices. The first four
447 parameters are the left, right, top, bottom edge of the right
448 button, respectively, the second four parameters are the left,
449 right, top, bottom edge of the middle button, respectively. Any
450 of the values may be given as percentage of the touchpad width
451 or height, whichever applies. If any edge is set to 0 (not 0%),
452 the button is assumed to extend to infinity in the given direc‐
453 tion. Setting all values to 0 (not 0%) disables soft button ar‐
454 eas. Button areas may not overlap, however it is permitted for
455 two buttons to share an edge value. Property: "Synaptics Soft
456 Button Areas"
457
458 Option "HasSecondarySoftButtons" "boolean"
459 This option is only available on ClickPad devices. Enable the
460 secondary software button area support. The exact area must be
461 set in option "SecondarySoftButtonAreas". See ClickPad support
462 for more details.
463
464 Option "SecondarySoftButtonAreas" "RBL RBR RBT RBB MBL MBR MBT MBB"
465 This option is only available on ClickPad devices and only if
466 Option "HasSecondarySoftButtons" is enabled. Define the sec‐
467 ondary soft button click areas on ClickPad devices (usually on
468 top of the device). For the allowed values for this option, see
469 Option "SoftButtonAreas". Primary and secondary soft button ar‐
470 eas must not overlap each other. If they do, the behavior of the
471 driver is undefined. Property: "Synaptics Secondary Soft Button
472 Areas". This property is only initialized if Option "HasSec‐
473 ondarySoftButtons" is enabled and this option is set in the
474 xorg.conf(5).
475
476
478 Area handling
479 The LeftEdge, RightEdge, TopEdge and BottomEdge parameters are used to
480 define the edge and corner areas of the touchpad. The parameters split
481 the touchpad area in 9 pieces, like this:
482 │ │
483 │ LeftEdge │ RightEdge
484 ┌─────└─────────────└───┐ Physical top edge
485 │ 1 │ 2 │ 3 │
486 └─────└─────────────└───┘ TopEdge
487 │ │ │ │
488 │ 4 │ 5 │ 6 │
489 │ │ │ │
490 └─────└─────────────└───┘ BottomEdge
491 │ 7 │ 8 │ 9 │
492 └─────└─────────────└───┘ Physical bottom edge
493 │Physical left edge │ Physical right edge
494
495 Coordinates to the left of LeftEdge are part of the left edge (areas 1,
496 4 and 7), coordinates to the left of LeftEdge and above TopEdge (area
497 1) are part of the upper left corner, etc.
498
499 A good way to find appropriate edge parameters is to use evtest(1) on
500 the device to see the x/y coordinates corresponding to different posi‐
501 tions on the touchpad.
502
503 The perceived physical edges may be adjusted with the AreaLeftEdge,
504 AreaRightEdge, AreaTopEdge, and AreaBottomEdge options. If these values
505 are set to something other than the physical edges, input that starts
506 in the space between the area edge and the respective physical edge is
507 ignored. Note that this reduces the available space on the touchpad to
508 start motions in.
509
510 Tapping
511 A tap event happens when the finger is touched and released in a time
512 interval shorter than MaxTapTime, and the touch and release coordinates
513 are less than MaxTapMove units apart. A "touch" event happens when the
514 Z value goes above FingerHigh, and an "untouch" event happens when the
515 Z value goes below FingerLow.
516
517 The MaxDoubleTapTime parameter has the same function as the MaxTapTime
518 parameter, but for the second, third, etc tap in a tap sequence. If
519 you can't perform double clicks fast enough (for example, xmms depends
520 on fast double clicks), try reducing this parameter. If you can't get
521 word selection to work in xterm (ie button down, button up, button
522 down, move mouse), try increasing this parameter.
523
524 The ClickTime parameter controls the delay between the button down and
525 button up X events generated in response to a tap event. A too long
526 value can cause undesirable autorepeat in scroll bars and a too small
527 value means that visual feedback from the gui application you are in‐
528 teracting with is harder to see.
529
530 Acceleration
531 The MinSpeed, MaxSpeed and AccelFactor parameters control the pointer
532 motion speed. The speed value defines the scaling between touchpad co‐
533 ordinates and screen coordinates. When moving the finger very slowly,
534 the MinSpeed value is used, when moving very fast the MaxSpeed value is
535 used. When moving the finger at moderate speed, you get a pointer mo‐
536 tion speed somewhere between MinSpeed and MaxSpeed. If you don't want
537 any acceleration, set MinSpeed and MaxSpeed to the same value.
538
539 The MinSpeed, MaxSpeed and AccelFactor parameters don't have any effect
540 on scrolling speed. Scrolling speed is determined solely from the
541 VertScrollDelta and HorizScrollDelta parameters. To invert the direc‐
542 tion of vertical or horizontal scrolling, set VertScrollDelta or
543 HorizScrollDelta to a negative value.
544
545 Acceleration is mostly handled outside the driver, thus the driver will
546 translate MinSpeed into constant deceleration and adapt MaxSpeed at
547 startup time. This ensures you can user the other acceleration pro‐
548 files, albeit without pressure motion. However the numbers at runtime
549 will likely be different from any options you may have set.
550
551
552 Pressure motion
553 When pressure motion is activated, the cursor motion speed depends on
554 the pressure exerted on the touchpad (the more pressure exerted on the
555 touchpad, the faster the pointer). More precisely the speed is first
556 calculated according to MinSpeed, MaxSpeed and AccelFactor, and then is
557 multiplied by a sensitivity factor.
558
559 The sensitivity factor can be adjusted using the PressureMotion parame‐
560 ters. If the pressure is below PressureMotionMinZ, PressureMotionMin‐
561 Factor is used, and if the pressure is greater than PressureMotionMaxZ,
562 PressureMotionMaxFactor is used. For a pressure value between Pres‐
563 sureMotionMinZ and PressureMotionMaxZ, the factor is increased lin‐
564 early.
565
566 Middle button emulation
567 Since most synaptics touchpad models don't have a button that corre‐
568 sponds to the middle button on a mouse, the driver can emulate middle
569 mouse button events. If you press both the left and right mouse but‐
570 tons at almost the same time (no more than EmulateMidButtonTime mil‐
571 liseconds apart) the driver generates a middle mouse button event.
572
573 Circular scrolling
574 Circular scrolling acts like a scrolling wheel on the touchpad.
575 Scrolling is engaged when a drag starts in the given CircScrollTrigger
576 region, which can be all edges, a particular side, or a particular cor‐
577 ner. Once scrolling is engaged, moving your finger in clockwise cir‐
578 cles around the center of the touchpad will generate scroll down events
579 and counter clockwise motion will generate scroll up events. Lifting
580 your finger will disengage circular scrolling. Use tight circles near
581 the center of the pad for fast scrolling and large circles for better
582 control. When used together with vertical scrolling, hitting the upper
583 or lower right corner will seamlessly switch over from vertical to cir‐
584 cular scrolling.
585
586
587 Coasting
588 Coasting is enabled by setting the CoastingSpeed parameter to a non-
589 zero value. Coasting comes in two flavors: conventional (finger off)
590 coasting, and corner (finger on) coasting.
591
592 Conventional coasting is enabled when coasting is enabled, and Corner‐
593 Coasting is set to false. When conventional coasting is enabled, hori‐
594 zontal/vertical scrolling can continue after the finger is released
595 from the lower/right edge of the touchpad. The driver computes the
596 scrolling speed corresponding to the finger speed immediately before
597 the finger leaves the touchpad. If this scrolling speed is larger than
598 the CoastingSpeed parameter (measured in scroll events per second), the
599 scrolling will continue with the same speed in the same direction until
600 the finger touches the touchpad again.
601
602 Corner coasting is enabled when coasting is enabled, and CornerCoasting
603 is set to true. When corner coasting is enabled, edge scrolling can
604 continue as long as the finger stays in a corner. Coasting begins when
605 the finger enters the corner, and continues until the finger leaves the
606 corner. CornerCoasting takes precedence over the seamless switch from
607 edge scrolling to circular scrolling. That is, if CornerCoasting is
608 active, scrolling will stop, and circular scrolling will not start,
609 when the finger leaves the corner.
610
611
612 Noise cancellation
613 The synaptics has a built-in noise cancellation based on hysteresis.
614 This means that incoming coordinates actually shift a box of predefined
615 dimensions such that it covers the incoming coordinate, and only the
616 boxes own center is used as input. Obviously, the smaller the box the
617 better, but the likelihood of noise motion coming through also in‐
618 creases.
619
620
621 ClickPad support
622 A click pad device has button(s) integrated into the touchpad surface.
623 The user must press downward on the touchpad in order to generated a
624 button press. ClickPad support is enabled if the option ClickPad is set
625 or the property is set at runtime. On some platforms, this option will
626 be set automatically if the kernel detects a matching device. On Linux,
627 the device must have the INPUT_PROP_BUTTONPAD property set.
628
629 ClickPads do not support middle mouse button emulation. If enabling
630 ClickPad support at runime, the user must also set the middle mouse
631 button timeout to 0. If auto-detected, middle mouse button emulation is
632 disabled by the driver.
633
634 ClickPads provide software emulated buttons through Option "SoftBut‐
635 tonAreas". These buttons enable areas on the touchpad to perform as
636 right or middle mouse button. When the user performs a click within a
637 defined soft button area, a right or middle click is performed.
638
639 Some laptops, most notably the Lenovo T440, T540 and x240 series, pro‐
640 vide a pointing stick without physical buttons. On those laptops, the
641 top of the touchpad acts as software-emulated button area. This area
642 can be enabled with Option "HasSecondarySoftButtons" and configured
643 with Option "SecondarySoftButtonAreas". On some platforms, this option
644 will be set automatically if the kernel detects a matching device. On
645 Linux, the device must have the INPUT_PROP_TOPBUTTONPAD property set.
646
647
649 Synaptics 1.0 and higher support input device properties if the driver
650 is running on X server 1.6 or higher. The synclient tool shipped with
651 synaptics version 1.1 uses input device properties by default. Proper‐
652 ties supported:
653
654 Synaptics Edges
655 32 bit, 4 values, left, right, top, bottom.
656
657
658 Synaptics Finger
659 32 bit, 3 values, low, high, press.
660
661
662 Synaptics Tap Time
663 32 bit.
664
665
666 Synaptics Tap Move
667 32 bit.
668
669
670 Synaptics Tap Durations
671 32 bit, 3 values, single touch timeout, max tapping time for
672 double taps, duration of a single click.
673
674
675 Synaptics ClickPad
676 8 bit (Bool).
677
678
679 Synaptics Middle Button Timeout
680 32 bit.
681
682
683 Synaptics Two-Finger Pressure
684 32 bit.
685
686
687 Synaptics Two-Finger Width
688 32 bit.
689
690
691 Synaptics Scrolling Distance
692 32 bit, 2 values, vert, horiz.
693
694
695 Synaptics Edge Scrolling
696 8 bit (BOOL), 3 values, vertical, horizontal, corner.
697
698
699 Synaptics Two-Finger Scrolling
700 8 bit (BOOL), 2 values, vertical, horizontal.
701
702
703 Synaptics Move Speed
704 FLOAT, 4 values, min, max, accel, <deprecated>
705
706
707 Synaptics Button Scrolling
708 8 bit (BOOL), 2 values, updown, leftright.
709
710
711 Synaptics Button Scrolling Repeat
712 8 bit (BOOL), 2 values, updown, leftright.
713
714
715 Synaptics Button Scrolling Time
716 32 bit.
717
718
719 Synaptics Off
720 8 bit, valid values (0, 1, 2).
721
722
723 Synaptics Locked Drags
724 8 bit (BOOL).
725
726
727 Synaptics Locked Drags Timeout
728 32 bit.
729
730
731 Synaptics Tap Action
732 8 bit, up to MAX_TAP values (see synaptics.h), 0 disables an el‐
733 ement. order: RT, RB, LT, LB, F1, F2, F3.
734
735
736 Synaptics Click Action
737 8 bit, up to MAX_CLICK values (see synaptics.h), 0 disables an
738 element. order: Finger 1, 2, 3.
739
740
741 Synaptics Circular Scrolling
742 8 bit (BOOL).
743
744
745 Synaptics Circular Scrolling Distance
746 FLOAT.
747
748
749 Synaptics Circular Scrolling Trigger
750 8 bit, valid values 0..8 (inclusive) order: any edge, top, top +
751 right, right, right + bottom, bottom, bottom + left, left, left
752 + top.
753
754
755 Synaptics Circular Pad
756 8 bit (BOOL).
757
758
759 Synaptics Palm Detection
760 8 bit (BOOL).
761
762
763 Synaptics Palm Dimensions
764 32 bit, 2 values, width, z.
765
766
767 Synaptics Coasting Speed
768 FLOAT, 2 values, speed, friction.
769
770
771 Synaptics Pressure Motion
772 32 bit, 2 values, min, max.
773
774
775 Synaptics Pressure Motion Factor
776 FLOAT, 2 values, min, max.
777
778
779 Synaptics Grab Event Device
780 8 bit (BOOL).
781
782
783 Synaptics Gestures
784 8 bit (BOOL), 1 value, tap-and-drag.
785
786
787 Synaptics Area
788 The AreaLeftEdge, AreaRightEdge, AreaTopEdge and AreaBottomEdge
789 parameters are used to define the edges of the active area of
790 the touchpad. All movements, scrolling and tapping which take
791 place outside of this area will be ignored. This property is
792 disabled by default.
793
794 32 bit, 4 values, left, right, top, bottom. 0 disables an ele‐
795 ment.
796
797
798 Synaptics Soft Button Areas
799 This property is only available on ClickPad devices. The Right
800 and middle soft button areas are used to support right and mid‐
801 dle click actions on a ClickPad device. Providing 0 for all val‐
802 ues of a given button disables the button area.
803
804 32 bit, 8 values, RBL, RBR, RBT, RBB, MBL, MBR, MBT, MBB.
805
806
807 Synaptics Capabilities
808 This read-only property expresses the physical capability of the
809 touchpad, most notably whether the touchpad hardware supports
810 multi-finger tapping and scrolling.
811
812 8 bit (BOOL), 7 values (read-only), has left button, has middle
813 button, has right button, two-finger detection, three-finger de‐
814 tection, pressure detection, and finger/palm width detection.
815
816
817 Synaptics Pad Resolution
818 32 bit unsigned, 2 values (read-only), vertical, horizontal in
819 units/millimeter.
820
821
823 Configuration through InputClass sections is recommended in X servers
824 1.8 and later. See xorg.conf.d(5) for more details. An example
825 xorg.conf.d snippet is provided in ${sourcecode}/conf/70-synaptics.conf
826
827 Configuration through hal fdi files is recommended in X servers 1.5,
828 1.6 and 1.7. An example hal policy file is provided in ${source‐
829 code}/conf/11-x11-synaptics.fdi
830
831 If either of Protocol "auto-dev" (default) or Protocol "event" is used,
832 the driver initializes defaults based on the capabilities reported by
833 the kernel driver. Acceleration, edges and resolution are based on the
834 dimensions reported by the kernel. If the kernel reports multi-finger
835 detection, two-finger vertical scrolling is enabled, horizontal two-
836 finger scrolling is disabled and edge scrolling is disabled. If no
837 multi-finger capabilities are reported, edge scrolling is enabled for
838 both horizontal and vertical scrolling. Tapping is disabled by default
839 for touchpads with one or more physical buttons. To enable it you need
840 to map tap actions to buttons. See the "TapButton1", "TapButton2" and
841 "TapButton3" options.
842
843 Button mapping for physical buttons is handled in the server. If the
844 device is switched to left-handed (an in-server mapping of physical
845 buttons 1, 2, 3 to the logical buttons 3, 2, 1, respectively), both
846 physical and TapButtons are affected. To counteract this, the TapBut‐
847 tons need to be set up in reverse order (TapButton1=3, TapButton2=1).
848
849
851 The following options are no longer part of the driver configuration:
852
853 Option "Repeater" "string"
854
855 Option "HistorySize" "integer"
856
857 Option "SpecialScrollAreaRight" "boolean"
858
859 Option "GuestMouseOff" "boolean"
860
861 Option "SHMConfig" "boolean"
862
863 Option "FingerPress" "integer"
864
865 Option "TrackstickSpeed" "float"
866
867 Option "EdgeMotionMinZ" "integer"
868
869 Option "EdgeMotionMaxZ" "integer"
870
871 Option "EdgeMotionMinSpeed" "integer"
872
873 Option "EdgeMotionMaxSpeed" "integer"
874
875 Option "EdgeMotionUseAlways" "boolean"
876
877
878
879 AUTHORS
880
881 Peter Osterlund <petero2@telia.com> and many others.
882
884 Xorg(1), xorg.conf(5), Xserver(1), X(7), synclient(1), syndaemon(1)
885
886
887
888X Version 11 xf86-input-synaptics 1.9.2 SYNAPTICS(4)