1SYNAPTICS(4)               Kernel Interfaces Manual               SYNAPTICS(4)
2
3
4

NAME

6       synaptics - touchpad input driver
7

SYNOPSIS

9       Section "InputDevice"
10         Identifier "devname"
11         Driver "synaptics"
12         Option "Device"   "devpath"
13         Option "Path"     "path"
14         ...
15       EndSection
16

DESCRIPTION

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
50           implement 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
65       device and this driver will only provide limited functionality.
66
67

CONFIGURATION OPTIONS

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
173              applied. Property: "Synaptics Pressure Motion"
174
175       Option "PressureMotionMaxZ" "integer"
176              Finger  pressure  at  which  maximum  pressure  motion factor is
177              applied.  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
190              motion is a problem for you. Zero  is  disabled.   Default:  0.5
191              percent  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
270              until 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
318              Action"
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
350              requires 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
363              order 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.
369              Default 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
377              device  for  exclusive use when using the linux 2.6 event proto‐
378              col.  When using other protocols, this  option  has  no  effect.
379              Grabbing the event device means that no other user space or ker‐
380              nel space program sees the touchpad events.  This  is  desirable
381              if  the  X  config  file  includes  /dev/input/mice  as an input
382              device, but is undesirable if you want  to  monitor  the  device
383              from  user  space.   When  changing this parameter with the syn‐
384              client program, the change will not take effect until the synap‐
385              tics  driver is disabled and reenabled.  This can be achieved by
386              switching to a 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
390              alternative way of dragging.  It is performed by tapping (touch‐
391              ing and releasing the finger), then touching  again  and  moving
392              the  finger  on the touchpad.  The gesture is enabled by default
393              and 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
454              areas. 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
470              areas must not overlap each other. If they do, the  behavior  of
471              the  driver  is  undefined.  Property: "Synaptics Secondary Soft
472              Button Areas". This property is only initialized if Option "Has‐
473              SecondarySoftButtons"  is  enabled and this option is set in the
474              xorg.conf(5).
475
476

CONFIGURATION DETAILS

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
528       interacting 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
533       coordinates and  screen  coordinates.   When  moving  the  finger  very
534       slowly,  the MinSpeed value is used, when moving very fast the MaxSpeed
535       value is used.  When moving the finger at moderate  speed,  you  get  a
536       pointer  motion  speed somewhere between MinSpeed and MaxSpeed.  If you
537       don't want any acceleration, set MinSpeed  and  MaxSpeed  to  the  same
538       value.
539
540       The MinSpeed, MaxSpeed and AccelFactor parameters don't have any effect
541       on scrolling speed.  Scrolling speed  is  determined  solely  from  the
542       VertScrollDelta  and HorizScrollDelta parameters.  To invert the direc‐
543       tion of  vertical  or  horizontal  scrolling,  set  VertScrollDelta  or
544       HorizScrollDelta to a negative value.
545
546       Acceleration is mostly handled outside the driver, thus the driver will
547       translate MinSpeed into constant deceleration  and  adapt  MaxSpeed  at
548       startup  time.  This  ensures  you can user the other acceleration pro‐
549       files, albeit without pressure motion. However the numbers  at  runtime
550       will likely be different from any options you may have set.
551
552
553   Pressure motion
554       When  pressure  motion is activated, the cursor motion speed depends on
555       the pressure exerted on the touchpad (the more pressure exerted on  the
556       touchpad,  the  faster the pointer).  More precisely the speed is first
557       calculated according to MinSpeed, MaxSpeed and AccelFactor, and then is
558       multiplied by a sensitivity factor.
559
560       The sensitivity factor can be adjusted using the PressureMotion parame‐
561       ters.  If the pressure is below PressureMotionMinZ,  PressureMotionMin‐
562       Factor is used, and if the pressure is greater than PressureMotionMaxZ,
563       PressureMotionMaxFactor is used.  For a pressure  value  between  Pres‐
564       sureMotionMinZ  and  PressureMotionMaxZ,  the  factor is increased lin‐
565       early.
566
567   Middle button emulation
568       Since most synaptics touchpad models don't have a  button  that  corre‐
569       sponds  to  the middle button on a mouse, the driver can emulate middle
570       mouse button events.  If you press both the left and right  mouse  but‐
571       tons  at  almost  the same time (no more than EmulateMidButtonTime mil‐
572       liseconds apart) the driver generates a middle mouse button event.
573
574   Circular scrolling
575       Circular scrolling  acts  like  a  scrolling  wheel  on  the  touchpad.
576       Scrolling  is engaged when a drag starts in the given CircScrollTrigger
577       region, which can be all edges, a particular side, or a particular cor‐
578       ner.   Once  scrolling is engaged, moving your finger in clockwise cir‐
579       cles around the center of the touchpad will generate scroll down events
580       and  counter  clockwise motion will generate scroll up events.  Lifting
581       your finger will disengage circular scrolling.  Use tight circles  near
582       the  center  of the pad for fast scrolling and large circles for better
583       control.  When used together with vertical scrolling, hitting the upper
584       or lower right corner will seamlessly switch over from vertical to cir‐
585       cular scrolling.
586
587
588   Coasting
589       Coasting is enabled by setting the CoastingSpeed parameter  to  a  non-
590       zero  value.   Coasting comes in two flavors: conventional (finger off)
591       coasting, and corner (finger on) coasting.
592
593       Conventional coasting is enabled when coasting is enabled, and  Corner‐
594       Coasting is set to false.  When conventional coasting is enabled, hori‐
595       zontal/vertical scrolling can continue after  the  finger  is  released
596       from  the  lower/right  edge  of the touchpad.  The driver computes the
597       scrolling speed corresponding to the finger  speed  immediately  before
598       the finger leaves the touchpad.  If this scrolling speed is larger than
599       the CoastingSpeed parameter (measured in scroll events per second), the
600       scrolling will continue with the same speed in the same direction until
601       the finger touches the touchpad again.
602
603       Corner coasting is enabled when coasting is enabled, and CornerCoasting
604       is  set  to  true.  When corner coasting is enabled, edge scrolling can
605       continue as long as the finger stays in a corner.  Coasting begins when
606       the finger enters the corner, and continues until the finger leaves the
607       corner.  CornerCoasting takes precedence over the seamless switch  from
608       edge  scrolling  to  circular scrolling.  That is, if CornerCoasting is
609       active, scrolling will stop, and circular  scrolling  will  not  start,
610       when the finger leaves the corner.
611
612
613   Noise cancellation
614       The  synaptics  has  a built-in noise cancellation based on hysteresis.
615       This means that incoming coordinates actually shift a box of predefined
616       dimensions  such  that  it covers the incoming coordinate, and only the
617       boxes own center is used as input. Obviously, the smaller the  box  the
618       better,  but  the  likelyhood  of  noise  motion  coming  through  also
619       increases.
620
621
622   ClickPad support
623       A click pad device has button(s) integrated into the touchpad  surface.
624       The  user  must  press downward on the touchpad in order to generated a
625       button press. ClickPad support is enabled if the option ClickPad is set
626       or  the property is set at runtime. On some platforms, this option will
627       be set automatically if the kernel detects a matching device. On Linux,
628       the device must have the INPUT_PROP_BUTTONPAD property set.
629
630       ClickPads  do  not  support  middle mouse button emulation. If enabling
631       ClickPad support at runime, the user must also  set  the  middle  mouse
632       button timeout to 0. If auto-detected, middle mouse button emulation is
633       disabled by the driver.
634
635       ClickPads provide software emulated buttons  through  Option  "SoftBut‐
636       tonAreas".   These  buttons  enable areas on the touchpad to perform as
637       right or middle mouse button. When the user performs a click  within  a
638       defined soft button area, a right or middle click is performed.
639
640       Some  laptops, most notably the Lenovo T440, T540 and x240 series, pro‐
641       vide a pointing stick without physical buttons. On those  laptops,  the
642       top  of  the  touchpad acts as software-emulated button area. This area
643       can be enabled with  Option  "HasSecondarySoftButtons"  and  configured
644       with Option "SecondarySoftButtonAreas".  On some platforms, this option
645       will be set automatically if the kernel detects a matching  device.  On
646       Linux, the device must have the INPUT_PROP_TOPBUTTONPAD property set.
647
648

DEVICE PROPERTIES

650       Synaptics  1.0 and higher support input device properties if the driver
651       is running on X server 1.6 or higher. The synclient tool  shipped  with
652       synaptics version 1.1 uses input device properties by default.  Proper‐
653       ties supported:
654
655       Synaptics Edges
656              32 bit, 4 values, left, right, top, bottom.
657
658
659       Synaptics Finger
660              32 bit, 3 values, low, high, press.
661
662
663       Synaptics Tap Time
664              32 bit.
665
666
667       Synaptics Tap Move
668              32 bit.
669
670
671       Synaptics Tap Durations
672              32 bit, 3 values, single touch timeout,  max  tapping  time  for
673              double taps, duration of a single click.
674
675
676       Synaptics ClickPad
677              8 bit (Bool).
678
679
680       Synaptics Middle Button Timeout
681              32 bit.
682
683
684       Synaptics Two-Finger Pressure
685              32 bit.
686
687
688       Synaptics Two-Finger Width
689              32 bit.
690
691
692       Synaptics Scrolling Distance
693              32 bit, 2 values, vert, horiz.
694
695
696       Synaptics Edge Scrolling
697              8 bit (BOOL), 3 values, vertical, horizontal, corner.
698
699
700       Synaptics Two-Finger Scrolling
701              8 bit (BOOL), 2 values, vertical, horizontal.
702
703
704       Synaptics Move Speed
705              FLOAT, 4 values, min, max, accel, <deprecated>
706
707
708       Synaptics Button Scrolling
709              8 bit (BOOL), 2 values, updown, leftright.
710
711
712       Synaptics Button Scrolling Repeat
713              8 bit (BOOL), 2 values, updown, leftright.
714
715
716       Synaptics Button Scrolling Time
717              32 bit.
718
719
720       Synaptics Off
721              8 bit, valid values (0, 1, 2).
722
723
724       Synaptics Locked Drags
725              8 bit (BOOL).
726
727
728       Synaptics Locked Drags Timeout
729              32 bit.
730
731
732       Synaptics Tap Action
733              8  bit,  up  to  MAX_TAP values (see synaptics.h), 0 disables an
734              element. order: RT, RB, LT, LB, F1, F2, F3.
735
736
737       Synaptics Click Action
738              8 bit, up to MAX_CLICK values (see synaptics.h), 0  disables  an
739              element.  order: Finger 1, 2, 3.
740
741
742       Synaptics Circular Scrolling
743              8 bit (BOOL).
744
745
746       Synaptics Circular Scrolling Distance
747              FLOAT.
748
749
750       Synaptics Circular Scrolling Trigger
751              8 bit, valid values 0..8 (inclusive) order: any edge, top, top +
752              right, right, right + bottom, bottom, bottom + left, left,  left
753              + top.
754
755
756       Synaptics Circular Pad
757              8 bit (BOOL).
758
759
760       Synaptics Palm Detection
761              8 bit (BOOL).
762
763
764       Synaptics Palm Dimensions
765              32 bit, 2 values, width, z.
766
767
768       Synaptics Coasting Speed
769              FLOAT, 2 values, speed, friction.
770
771
772       Synaptics Pressure Motion
773              32 bit, 2 values, min, max.
774
775
776       Synaptics Pressure Motion Factor
777              FLOAT, 2 values, min, max.
778
779
780       Synaptics Grab Event Device
781              8 bit (BOOL).
782
783
784       Synaptics Gestures
785              8 bit (BOOL), 1 value, tap-and-drag.
786
787
788       Synaptics Area
789              The  AreaLeftEdge, AreaRightEdge, AreaTopEdge and AreaBottomEdge
790              parameters are used to define the edges of the  active  area  of
791              the  touchpad.  All  movements, scrolling and tapping which take
792              place outside of this area will be  ignored.  This  property  is
793              disabled by default.
794
795              32  bit,  4 values, left, right, top, bottom. 0 disables an ele‐
796              ment.
797
798
799       Synaptics Soft Button Areas
800              This property is only available on ClickPad devices.  The  Right
801              and  middle soft button areas are used to support right and mid‐
802              dle click actions on a ClickPad device. Providing 0 for all val‐
803              ues of a given button disables the button area.
804
805              32 bit, 8 values, RBL, RBR, RBT, RBB, MBL, MBR, MBT, MBB.
806
807
808       Synaptics Capabilities
809              This read-only property expresses the physical capability of the
810              touchpad, most notably whether the  touchpad  hardware  supports
811              multi-finger tapping and scrolling.
812
813              8  bit (BOOL), 7 values (read-only), has left button, has middle
814              button, has right  button,  two-finger  detection,  three-finger
815              detection, pressure detection, and finger/palm width detection.
816
817
818       Synaptics Pad Resolution
819              32  bit  unsigned, 2 values (read-only), vertical, horizontal in
820              units/millimeter.
821
822

NOTES

824       Configuration through InputClass sections is recommended in  X  servers
825       1.8  and  later.  See  xorg.conf.d(5)  for  more  details.  An  example
826       xorg.conf.d snippet is provided in ${sourcecode}/conf/70-synaptics.conf
827
828       Configuration through hal fdi files is recommended in  X  servers  1.5,
829       1.6  and  1.7.  An  example  hal  policy  file is provided in ${source‐
830       code}/conf/11-x11-synaptics.fdi
831
832       If either of Protocol "auto-dev" (default) or Protocol "event" is used,
833       the  driver  initializes defaults based on the capabilities reported by
834       the kernel driver. Acceleration, edges and resolution are based on  the
835       dimensions  reported  by the kernel. If the kernel reports multi-finger
836       detection, two-finger vertical scrolling is  enabled,  horizontal  two-
837       finger  scrolling  is  disabled  and  edge scrolling is disabled. If no
838       multi-finger capabilities are reported, edge scrolling is  enabled  for
839       both horizontal and vertical scrolling.  Tapping is disabled by default
840       for touchpads with one or more physical buttons.  To enable it you need
841       to  map  tap actions to buttons. See the "TapButton1", "TapButton2" and
842       "TapButton3" options.
843
844       Button mapping for physical buttons is handled in the server.   If  the
845       device  is  switched  to  left-handed (an in-server mapping of physical
846       buttons 1, 2, 3 to the logical buttons 3,  2,  1,  respectively),  both
847       physical  and  TapButtons are affected. To counteract this, the TapBut‐
848       tons need to be set up in reverse order (TapButton1=3, TapButton2=1).
849
850

REMOVED OPTIONS

852       The following options are no longer part of the driver configuration:
853
854       Option "Repeater" "string"
855
856       Option "HistorySize" "integer"
857
858       Option "SpecialScrollAreaRight" "boolean"
859
860       Option "GuestMouseOff" "boolean"
861
862       Option "SHMConfig" "boolean"
863
864       Option "FingerPress" "integer"
865
866       Option "TrackstickSpeed" "float"
867
868       Option "EdgeMotionMinZ" "integer"
869
870       Option "EdgeMotionMaxZ" "integer"
871
872       Option "EdgeMotionMinSpeed" "integer"
873
874       Option "EdgeMotionMaxSpeed" "integer"
875
876       Option "EdgeMotionUseAlways" "boolean"
877
878
879
880       AUTHORS
881
882       Peter Osterlund <petero2@telia.com> and many others.
883

SEE ALSO

885       Xorg(1), xorg.conf(5), Xserver(1), X(7), synclient(1), syndaemon(1)
886
887
888
889X Version 11              xf86-input-synaptics 1.9.1              SYNAPTICS(4)
Impressum