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

DEVICE PROPERTIES

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

NOTES

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

REMOVED OPTIONS

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

SEE ALSO

888       Xorg(1), xorg.conf(5), Xserver(1), X(7), synclient(1), syndaemon(1)
889
890
891
892X Version 11              xf86-input-synaptics 1.8.3              SYNAPTICS(4)
Impressum