Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SYNAPTICS(4x)			  X Version 11			   SYNAPTICS(4x)

NAME
     synaptics - touchpad input driver

SYNOPSIS
     Section "InputDevice"
       Identifier "devname"
       Driver "synaptics"
       Option "Device"	 "devpath"
       Option "Path"	 "path"
       ...
     EndSection

DESCRIPTION
     synaptics is an Xorg input driver for touchpads.  Even though touchpads can
     be  handled  by  the normal evdev or mouse drivers, this driver allows more
     advanced features of the touchpad to become available.  Some benefits would
     be:

     *	 Movement with adjustable, non-linear acceleration and speed.

     *	 Button events through short touching of the touchpad.

     *	 Double-Button events through double short touching of the touchpad.

     *	 Dragging through short touching and holding  down  the  finger  on  the
	 touchpad (tap-and-drag gesture).

     *	 Middle  and  right  button  events on the upper and lower corner of the
	 touchpad.

     *	 Vertical scrolling (button four and five  events)  through  moving  the
	 finger on the right side of the touchpad.

     *	 The up/down button sends button four/five events.

     *	 Horizontal  scrolling	(button six and seven events) through moving the
	 finger on the lower side of the touchpad.

     *	 The multi-buttons send button four/five events for  vertical  scrolling
	 and button six/seven events for horizontal scrolling.

     *	 Adjustable finger detection.

     *	 Multifinger taps: two finger for right button and three finger for mid-
	 dle  button events.  (Needs hardware support.	Not all models implement
	 this feature.)

     *	 Pressure-dependent motion speed.

     Note that depending on the touchpad firmware, some of these features  might
     be  available even without using the synaptics driver.  Note also that some
     functions are not available on all touchpad models, because they need  sup-
     port from the touchpad hardware/firmware.	(Multifinger taps for example.)

     The name "synaptics" is historical and the driver still provides the synap-
     tics  protocol  parsing  code.  Under Linux however, the hardware-specifics
     are handled by the kernel and this driver will work for any  touchpad  that
     has  a working kernel driver.  If your device is recognized as "PS/2 Mouse"
     or similar, the kernel driver does not support your device and this  driver
     will only provide limited functionality.

CONFIGURATION OPTIONS
     Please  refer to xorg.conf(5) for general configuration details and for op-
     tions that can be used with all input drivers.  This  section  only  covers
     configuration details specific to this driver.

     The following driver Options are supported:

     Option "Device" "string"
	    This option specifies the device file in your "/dev" directory which
	    will be used to access the physical device.  Normally you should use
	    something like "/dev/input/eventX", where X is some integer.

     Option "Protocol" "string"
	    Specifies  which kernel driver will be used by this driver.  This is
	    the list of supported drivers and their default use scenarios.
	    auto-dev   automatic, default (recommend)
	    event      Linux 2.6 kernel events
	    psaux      raw device access (Linux 2.4)
	    psm        FreeBSD psm driver

     Option "LeftEdge" "integer"
	    X coordinate for left edge.  Property: "Synaptics Edges"

     Option "RightEdge" "integer"
	    X coordinate for right edge.  Property: "Synaptics Edges"

     Option "TopEdge" "integer"
	    Y coordinate for top edge.	Property: "Synaptics Edges"

     Option "BottomEdge" "integer"
	    Y coordinate for bottom edge.  Property: "Synaptics Edges"

     Option "FingerLow" "integer"
	    When finger pressure drops below this value, the driver counts it as
	    a release.	Property: "Synaptics Finger"

     Option "FingerHigh" "integer"
	    When finger pressure goes above this value, the driver counts it  as
	    a touch.  Property: "Synaptics Finger"

     Option "MaxTapTime" "integer"
	    Maximum  time  (in	milliseconds)  for  detecting  a tap.  Property:
	    "Synaptics Tap Durations"

     Option "MaxTapMove" "integer"
	    Maximum movement of the  finger  for  detecting  a	tap.   Property:
	    "Synaptics Tap Move"

     Option "MaxDoubleTapTime" "integer"
	    Maximum  time  (in	milliseconds) for detecting a double tap.  Prop-
	    erty: "Synaptics Tap Durations"

     Option "ClickTime" "integer"
	    The duration of the mouse click  generated	by  tapping.   Property:
	    "Synaptics Tap Durations"

     Option "ClickPad" "boolean"
	    Whether  the  device  is a click pad.  See ClickPad support for more
	    details.  Property: "Synaptics ClickPad"

     Option "VertEdgeScroll" "boolean"
	    Enable vertical scrolling when dragging along the right edge.  Prop-
	    erty: "Synaptics Edge Scrolling"

     Option "HorizEdgeScroll" "boolean"
	    Enable horizontal scrolling when dragging  along  the  bottom  edge.
	    Property: "Synaptics Edge Scrolling"

     Option "CornerCoasting" "boolean"
	    Enable  edge scrolling to continue while the finger stays in an edge
	    corner.  Property: "Synaptics Edge Scrolling"

     Option "VertTwoFingerScroll" "boolean"
	    Enable vertical scrolling when dragging with two fingers anywhere on
	    the touchpad.  Property: "Synaptics Two-Finger Scrolling"

     Option "HorizTwoFingerScroll" "boolean"
	    Enable horizontal scrolling when dragging with two fingers	anywhere
	    on the touchpad.  Property: "Synaptics Two-Finger Scrolling"

     Option "VertScrollDelta" "integer"
	    Move  distance  of the finger for a scroll event.  Property: "Synap-
	    tics Scrolling Distance"

     Option "HorizScrollDelta" "integer"
	    Move distance of the finger for a scroll event.   Property:  "Synap-
	    tics Scrolling Distance"

     Option "MinSpeed" "float"
	    Minimum speed factor.  Property: "Synaptics Move Speed"

     Option "MaxSpeed" "float"
	    Maximum speed factor.  Property: "Synaptics Move Speed"

     Option "AccelFactor" "float"
	    Acceleration factor for normal pointer movements.  Property: "Synap-
	    tics Move Speed"

     Option "PressureMotionMinZ" "integer"
	    Finger  pressure at which minimum pressure motion factor is applied.
	    Property: "Synaptics Pressure Motion"

     Option "PressureMotionMaxZ" "integer"
	    Finger pressure at which maximum pressure motion factor is	applied.
	    Property: "Synaptics Pressure Motion"

     Option "PressureMotionMinFactor" "integer"
	    Lowest  setting  for  pressure  motion factor.  Property: "Synaptics
	    Pressure Motion Factor"

     Option "PressureMotionMaxFactor" "integer"
	    Greatest setting for pressure motion factor.   Property:  "Synaptics
	    Pressure Motion Factor"

     Option "HorizHysteresis" "integer"
	    The  minimum  horizontal  HW  distance  required  to generate motion
	    events.  Can be specified as a percentage.	Increase if noise motion
	    is a problem for you.  Zero is disabled.  Default:	0.5  percent  of
	    the  diagonal or (in case of evdev) the appropriate "fuzz" as adver-
	    tised by the device.

     Option "VertHysteresis" "integer"
	    The minimum vertical HW distance required to generate motion events.
	    See HorizHysteresis.

     Option "UpDownScrolling" "boolean"
	    If on, the up/down buttons generate button 4/5 events.  If off,  the
	    up	button	generates a double click and the down button generates a
	    button 2 event.  This option is only available  for  touchpads  with
	    physical scroll buttons.  Property: "Synaptics Button Scrolling"

     Option "LeftRightScrolling" "boolean"
	    If	on,  the left/right buttons generate button 6/7 events.  If off,
	    the left/right buttons both generate button 2 events.   This  option
	    is only available for touchpads with physical scroll buttons.  Prop-
	    erty: "Synaptics Button Scrolling"

     Option "UpDownScrollRepeat" "boolean"
	    If	on,  and  the  up/down	buttons  are used for scrolling (UpDown-
	    Scrolling), these buttons will send auto-repeating 4/5 events,  with
	    the  delay	between  repeats determined by ScrollButtonRepeat.  This
	    option is only available for touchpads with physical scroll buttons.
	    Property: "Synaptics Button Scrolling Repeat"

     Option "LeftRightScrollRepeat" "boolean"
	    If on, and the left/right buttons  are  used  for  scrolling  (Left-
	    RightScrolling),  these buttons will send auto-repeating 6/7 events,
	    with the delay between  repeats  determined  by  ScrollButtonRepeat.
	    This  option  is  only  available for touchpads with physical scroll
	    buttons.  Property: "Synaptics Button Scrolling Repeat"

     Option "ScrollButtonRepeat" "integer"
	    The number of milliseconds between repeats of button events 4-7 from
	    the up/down/left/right scroll buttons.  This option is  only  avail-
	    able  for touchpads with physical scroll buttons.  Property: "Synap-
	    tics Button Scrolling Time"

     Option "EmulateMidButtonTime" "integer"
	    Maximum time (in milliseconds) for middle button  emulation.   Prop-
	    erty: "Synaptics Middle Button Timeout"

     Option "EmulateTwoFingerMinZ" "integer"
	    For  touchpads not capable of detecting multiple fingers but are ca-
	    pable of detecting finger pressure and width, this sets the Z  pres-
	    sure  threshold.   When  both  Z pressure and W width thresholds are
	    crossed, a two finger press will be emulated.  This  defaults  to  a
	    value  that disables emulation on touchpads with real two-finger de-
	    tection and defaults to a value that enables emulation on  remaining
	    touchpads  that  support  pressure	and  width  support.   Property:
	    "Synaptics Two-Finger Pressure"

     Option "EmulateTwoFingerMinW" "integer"
	    For touchpads not capable of detecting multiple fingers but are  ca-
	    pable  of detecting finger width and pressure, this sets the W width
	    threshold.	When both W width and Z pressure thresholds are crossed,
	    a two finger press will be emulated.  This feature works  best  with
	    PalmDetect off.  Property: "Synaptics Two-Finger Width"

     Option "TouchpadOff" "integer"
	    Switch off the touchpad.  Valid values are:
	    0	Touchpad is enabled
	    1	Touchpad is switched off (physical clicks still work)
	    2	Only tapping and scrolling is switched off
	    When  the touchpad is switched off, button events caused by a physi-
	    cal button press are still interpreted.  On  a  ClickPad,  this  in-
	    cludes  software-emulated middle and right buttons as defined by the
	    SoftButtonAreas setting.

     Property: "Synaptics Off"

     Option "LockedDrags" "boolean"
	    If off, a tap-and-drag gesture ends when you release the finger.  If
	    on, the gesture is active until you tap  a	second	time,  or  until
	    LockedDragTimeout expires.	Property: "Synaptics Locked Drags"

     Option "LockedDragTimeout" "integer"
	    This parameter specifies how long it takes (in milliseconds) for the
	    LockedDrags  mode to be automatically turned off after the finger is
	    released from the touchpad.  Property: "Synaptics Locked Drags Time-
	    out"

     Option "RTCornerButton" "integer"
	    Which mouse button is reported on a right top corner tap.  Set to  0
	    to disable.  Property: "Synaptics Tap Action"

     Option "RBCornerButton" "integer"
	    Which mouse button is reported on a right bottom corner tap.  Set to
	    0 to disable.  Property: "Synaptics Tap Action"

     Option "LTCornerButton" "integer"
	    Which  mouse  button is reported on a left top corner tap.	Set to 0
	    to disable.  Property: "Synaptics Tap Action"

     Option "LBCornerButton" "integer"
	    Which mouse button is reported on a left bottom corner tap.  Set  to
	    0 to disable.  Property: "Synaptics Tap Action"

     Option "TapButton1" "integer"
	    Which  mouse button is reported on a non-corner one-finger tap.  Set
	    to 0 to disable.  Property: "Synaptics Tap Action"

     Option "TapButton2" "integer"
	    Which mouse button is reported on a non-corner two-finger tap.   Set
	    to 0 to disable.  Property: "Synaptics Tap Action"

     Option "TapButton3" "integer"
	    Which  mouse  button  is  reported on a non-corner three-finger tap.
	    Set to 0 to disable.  Property: "Synaptics Tap Action"

     Option "ClickFinger1" "integer"
	    Which mouse button is reported when left-clicking with  one  finger.
	    Set to 0 to disable.  Property: "Synaptics Click Action"

     Option "ClickFinger2" "integer"
	    Which  mouse button is reported when left-clicking with two fingers.
	    Set to 0 to disable.  Property: "Synaptics Click Action"

     Option "ClickFinger3" "integer"
	    Which mouse button is reported when left-clicking  with  three  fin-
	    gers.  Set to 0 to disable.  Property: "Synaptics Click Action"

     Option "CircularScrolling" "boolean"
	    If	on,  circular  scrolling is used.  Property: "Synaptics Circular
	    Scrolling"

     Option "CircScrollDelta" "float"
	    Move angle (radians) of finger to generate a  scroll  event.   Prop-
	    erty: "Synaptics Circular Scrolling Distance"

     Option "CircScrollTrigger" "integer"
	    Trigger region on the touchpad to start circular scrolling
	    0	All Edges
	    1	Top Edge
	    2	Top Right Corner
	    3	Right Edge
	    4	Bottom Right Corner
	    5	Bottom Edge
	    6	Bottom Left Corner
	    7	Left Edge
	    8	Top Left Corner
	    Property: "Synaptics Circular Scrolling Trigger"

     Option "CircularPad" "boolean"
	    Instead  of  being	a rectangle, the edge is the ellipse enclosed by
	    the Left/Right/Top/BottomEdge parameters.  For  circular  touchpads.
	    Property: "Synaptics Circular Pad"

     Option "PalmDetect" "boolean"
	    If	palm  detection should be enabled.  Note that this also requires
	    hardware/firmware support from the touchpad.   Property:  "Synaptics
	    Palm Detection"

     Option "PalmMinWidth" "integer"
	    Minimum finger width at which touch is considered a palm.  Property:
	    "Synaptics Palm Dimensions"

     Option "PalmMinZ" "integer"
	    Minimum  finger pressure at which touch is considered a palm.  Prop-
	    erty: "Synaptics Palm Dimensions"

     Option "CoastingSpeed" "float"
	    Your finger needs to produce this many scrolls per second  in  order
	    to	start coasting.  The default is 20 which should prevent you from
	    starting coasting unintentionally.	0 disables coasting.   Property:
	    "Synaptics Coasting Speed"

     Option "CoastingFriction" "float"
	    Number of scrolls/secondA^2 to decrease the coasting speed.  Default
	    is 50.  Property: "Synaptics Coasting Speed"

     Option "SingleTapTimeout" "integer"
	    Timeout  after  a  tap  to	recognize it as a single tap.  Property:
	    "Synaptics Tap Durations"

     Option "GrabEventDevice" "boolean"
	    If GrabEventDevice is true, the driver will grab  the  event  device
	    for exclusive use when using the linux 2.6 event protocol.	When us-
	    ing  other protocols, this option has no effect.  Grabbing the event
	    device means that no other user space or kernel space  program  sees
	    the  touchpad  events.   This  is desirable if the X config file in-
	    cludes /dev/input/mice as an input device, but is undesirable if you
	    want to monitor the device from user space.  When changing this  pa-
	    rameter  with the synclient program, the change will not take effect
	    until the synaptics driver is disabled and re-enabled.  This can  be
	    achieved  by  switching to a text console and then switching back to
	    X.

     Option "TapAndDragGesture" "boolean"
	    Switch on/off the tap-and-drag gesture.  This gesture is an alterna-
	    tive way of dragging.  It is performed by tapping (touching and  re-
	    leasing  the  finger),  then touching again and moving the finger on
	    the touchpad.  The gesture is enabled by default and can be disabled
	    by setting the TapAndDragGesture option to false.  Property: "Synap-
	    tics Gestures"

     Option "VertResolution" "integer"
	    Resolution of X coordinates in units/millimeter.  The value is  used
	    together  with  HorizResolution  to  compensate unequal vertical and
	    horizontal sensitivity.  Setting VertResolution and  HorizResolution
	    equal  values means no compensation.  Default value is read from the
	    touchpad or set to 1 if value could not be read.  Property:  "Synap-
	    tics Pad Resolution"

     Option "HorizResolution" "integer"
	    Resolution	of Y coordinates in units/millimeter.  The value is used
	    together with VertResolution to compensate unequal vertical and hor-
	    izontal sensitivity.   Setting  VertResolution  and  HorizResolution
	    equal  values means no compensation.  Default value is read from the
	    touchpad or set to 1 if value could not be read.  Property:  "Synap-
	    tics Pad Resolution"

     Option "AreaLeftEdge" "integer"
	    Ignore  movements,	scrolling  and	tapping which start left of this
	    edge.  The option is disabled by default and can be enabled by  set-
	    ting  the  AreaLeftEdge option to any integer value other than zero.
	    If supported by the server (version 1.9 and later), the edge may  be
	    specified  in percent of the total width of the touchpad.  Property:
	    "Synaptics Area"

     Option "AreaRightEdge" "integer"
	    Ignore movements, scrolling and tapping which start  right	of  this
	    edge.   The option is disabled by default and can be enabled by set-
	    ting the AreaRightEdge option to any integer value other than  zero.
	    If	supported by the server (version 1.9 and later), the edge may be
	    specified in percent of the total width of the touchpad.   Property:
	    "Synaptics Area"

     Option "AreaTopEdge" "integer"
	    Ignore movements, scrolling and tapping which start above this edge.
	    The  option is disabled by default and can be enabled by setting the
	    AreaTopEdge option to any integer value other than	zero.	If  sup-
	    ported by the server (version 1.9 and later), the edge may be speci-
	    fied  in  percent  of  the	total height of the touchpad.  Property:
	    "Synaptics Area"

     Option "AreaBottomEdge" "integer"
	    Ignore movements, scrolling and tapping which start below this edge.
	    The option is disabled by default and can be enabled by setting  the
	    AreaBottomEdge option to any integer value other than zero.  If sup-
	    ported by the server (version 1.9 and later), the edge may be speci-
	    fied  in  percent  of  the	total height of the touchpad.  Property:
	    "Synaptics Area"

     Option "SoftButtonAreas" "RBL RBR RBT RBB MBL MBR MBT MBB"
	    This option is only available on ClickPad devices.	Enable soft but-
	    ton click area support on ClickPad devices.  The first four  parame-
	    ters  are the left, right, top, bottom edge of the right button, re-
	    spectively, the second four parameters are	the  left,  right,  top,
	    bottom  edge  of the middle button, respectively.  Any of the values
	    may be  given  as  percentage  of  the  touchpad  width  or  height,
	    whichever  applies.  If any edge is set to 0 (not 0%), the button is
	    assumed to extend to infinity in the given direction.   Setting  all
	    values  to	0 (not 0%) disables soft button areas.	Button areas may
	    not overlap, however it is permitted for two  buttons  to  share  an
	    edge value.  Property: "Synaptics Soft Button Areas"

     Option "HasSecondarySoftButtons" "boolean"
	    This  option is only available on ClickPad devices.  Enable the sec-
	    ondary software button area support.  The exact area must be set  in
	    option  "SecondarySoftButtonAreas".   See  ClickPad support for more
	    details.

     Option "SecondarySoftButtonAreas" "RBL RBR RBT RBB MBL MBR MBT MBB"
	    This option is only available on ClickPad devices and only if Option
	    "HasSecondarySoftButtons" is enabled.   Define  the  secondary  soft
	    button  click  areas  on ClickPad devices (usually on top of the de-
	    vice).  For the allowed values for this option, see Option "SoftBut-
	    tonAreas".	Primary and secondary soft button areas must not overlap
	    each other.  If they do, the behavior of the  driver  is  undefined.
	    Property: "Synaptics Secondary Soft Button Areas".	This property is
	    only  initialized if Option "HasSecondarySoftButtons" is enabled and
	    this option is set in the xorg.conf(5).

CONFIGURATION DETAILS
   Area handling
     The LeftEdge, RightEdge, TopEdge, and BottomEdge parameters are used to de-
     fine the edge and corner areas of the touchpad.  The parameters  split  the
     touchpad area in 9 pieces, like this:

	    |		  |
	    | LeftEdge	  | RightEdge
     +------+-------------+---+ Physical top edge
     |	1   |	   2	  | 3 |
     +------+-------------+---+ TopEdge
     |	    |		  |   |
     |	4   |	   5	  | 6 |
     |	    |		  |   |
     +------+-------------+---+ BottomEdge
     |	7   |	   8	  | 9 |
     +------+-------------+---+ Physical bottom edge
     | Physical left edge     | Physical right edge

     Coordinates  to the left of LeftEdge are part of the left edge (areas 1, 4,
     and 7), coordinates to the left of LeftEdge and above TopEdge (area 1)  are
     part of the upper left corner, etc.

     A	good  way to find appropriate edge parameters is to use evtest(1) on the
     device to see the x/y coordinates corresponding to different  positions  on
     the touchpad.

     The  perceived  physical  edges  may  be  adjusted  with  the AreaLeftEdge,
     AreaRightEdge, AreaTopEdge, and AreaBottomEdge options.   If  these  values
     are  set  to  something other than the physical edges, input that starts in
     the space between the area edge and the respective  physical  edge  is  ig-
     nored.  Note that this reduces the available space on the touchpad to start
     motions in.

   Tapping
     A	tap  event happens when the finger is touched and released in a time in-
     terval shorter than MaxTapTime, and the touch and release	coordinates  are
     less than MaxTapMove units apart.	A "touch" event happens when the Z value
     goes above FingerHigh, and an "untouch" event happens when the Z value goes
     below FingerLow.

     The  MaxDoubleTapTime parameter has the same function as the MaxTapTime pa-
     rameter, but for the second, third, etc tap in  a	tap  sequence.	 If  you
     can't  perform double clicks fast enough (for example, xmms depends on fast
     double clicks), try reducing this parameter.  If you can't get word  selec-
     tion to work in xterm (ie button down, button up, button down, move mouse),
     try increasing this parameter.

     The ClickTime parameter controls the delay between the button down and but-
     ton up X events generated in response to a tap event.  A too long value can
     cause  undesirable  autorepeat  in  scroll bars and a too small value means
     that visual feedback from the gui application you are interacting	with  is
     harder to see.

   Acceleration
     The  MinSpeed, MaxSpeed, and AccelFactor parameters control the pointer mo-
     tion speed.  The speed value defines the scaling between  touchpad  coordi-
     nates and screen coordinates.  When moving the finger very slowly, the Min-
     Speed  value  is  used,  when  moving very fast the MaxSpeed value is used.
     When moving the finger at moderate speed, you get a  pointer  motion  speed
     somewhere	between  MinSpeed and MaxSpeed.  If you don't want any accelera-
     tion, set MinSpeed and MaxSpeed to the same value.

     The MinSpeed, MaxSpeed, and AccelFactor parameters don't have any effect on
     scrolling	speed.	 Scrolling  speed  is	determined   solely   from   the
     VertScrollDelta  and  HorizScrollDelta parameters.  To invert the direction
     of   vertical   or   horizontal   scrolling,   set    VertScrollDelta    or
     HorizScrollDelta to a negative value.

     Acceleration  is  mostly  handled	outside the driver, thus the driver will
     translate MinSpeed into constant deceleration and adapt MaxSpeed at startup
     time.  This ensures you can use the  other  acceleration  profiles,  albeit
     without  pressure	motion.   However  the numbers at runtime will likely be
     different from any options you may have set.

   Pressure motion
     When pressure motion is activated, the cursor motion speed depends  on  the
     pressure  exerted	on the touchpad (the more pressure exerted on the touch-
     pad, the faster the pointer).  More precisely the speed is first calculated
     according to MinSpeed, MaxSpeed, and AccelFactor, and then is multiplied by
     a sensitivity factor.

     The sensitivity factor can be adjusted using the PressureMotion parameters.
     If the pressure is  below	PressureMotionMinZ,  PressureMotionMinFactor  is
     used,  and  if the pressure is greater than PressureMotionMaxZ, PressureMo-
     tionMaxFactor is used.  For a pressure value between PressureMotionMinZ and
     PressureMotionMaxZ, the factor is increased linearly.

   Middle button emulation
     Since most synaptics touchpad models don't have a button  that  corresponds
     to the middle button on a mouse, the driver can emulate middle mouse button
     events.   If  you press both the left and right mouse buttons at almost the
     same time (no more than EmulateMidButtonTime milliseconds apart) the driver
     generates a middle mouse button event.

   Circular scrolling
     Circular scrolling acts like a scrolling wheel on the touchpad.   Scrolling
     is  engaged when a drag starts in the given CircScrollTrigger region, which
     can be all  edges,  a  particular	side,  or  a  particular  corner.   Once
     scrolling	is  engaged,  moving your finger in clockwise circles around the
     center of the touchpad will generate scroll down events and counter  clock-
     wise  motion will generate scroll up events.  Lifting your finger will dis-
     engage circular scrolling.  Use tight circles near the center  of	the  pad
     for  fast	scrolling  and	large circles for better control.  When used to-
     gether with vertical scrolling, hitting the upper	or  lower  right  corner
     will seamlessly switch over from vertical to circular scrolling.

   Coasting
     Coasting  is  enabled  by setting the CoastingSpeed parameter to a non-zero
     value.  Coasting comes in two flavors: conventional (finger off)  coasting,
     and corner (finger on) coasting.

     Conventional coasting is enabled when coasting is enabled, and CornerCoast-
     ing  is  set  to  false.	When  conventional coasting is enabled, horizon-
     tal/vertical scrolling can continue after the finger is released  from  the
     lower/right  edge of the touchpad.  The driver computes the scrolling speed
     corresponding to the finger speed immediately before the finger leaves  the
     touchpad.	 If this scrolling speed is larger than the CoastingSpeed  para-
     meter (measured in scroll events per second), the scrolling  will	continue
     with  the	same  speed  in  the same direction until the finger touches the
     touchpad again.

     Corner coasting is enabled when coasting is enabled, and CornerCoasting  is
     set  to true.  When corner coasting is enabled, edge scrolling can continue
     as long as the finger stays in a corner.  Coasting begins when  the  finger
     enters  the corner, and continues until the finger leaves the corner.  Cor-
     nerCoasting takes precedence over the seamless switch from  edge  scrolling
     to  circular  scrolling.	That  is, if CornerCoasting is active, scrolling
     will stop, and circular scrolling will not start, when  the  finger  leaves
     the corner.

   Noise cancellation
     The  synaptics has a built-in noise cancellation based on hysteresis.  This
     means that incoming coordinates actually shift a box of  predefined  dimen-
     sions  such  that it covers the incoming coordinate, and only the boxes own
     center is used as input.  Obviously, the smaller the box  the  better,  but
     the likelihood of noise motion coming through also increases.

   ClickPad support
     A click pad device has button(s) integrated into the touchpad surface.  The
     user  must  press	downward  on the touchpad in order to generated a button
     press.  ClickPad support is enabled if the option ClickPad is  set  or  the
     property is set at runtime.  On some platforms, this option will be set au-
     tomatically  if the kernel detects a matching device.  On Linux, the device
     must have the INPUT_PROP_BUTTONPAD property set.

     ClickPads do not support middle mouse button emulation.  If enabling Click-
     Pad support at runime, the user must also set the middle mouse button time-
     out to 0.	If auto-detected, middle mouse button emulation is  disabled  by
     the driver.

     ClickPads	provide  software emulated buttons through Option "SoftButtonAr-
     eas".  These buttons enable areas on the touchpad to perform  as  right  or
     middle  mouse button.  When the user performs a click within a defined soft
     button area, a right or middle click is performed.

     Some laptops, most notably the Lenovo T440, T540 and x240 series, provide a
     pointing stick without physical buttons.  On those laptops, the top of  the
     touchpad  acts  as software-emulated button area.	This area can be enabled
     with Option "HasSecondarySoftButtons"  and  configured  with  Option  "Sec-
     ondarySoftButtonAreas".   On  some platforms, this option will be set auto-
     matically if the kernel detects a matching device.  On  Linux,  the  device
     must have the INPUT_PROP_TOPBUTTONPAD property set.

DEVICE PROPERTIES
     Synaptics	1.0  and higher support input device properties if the driver is
     running on X server 1.6 or higher.  The synclient tool shipped with  synap-
     tics  version 1.1 uses input device properties by default.  Properties sup-
     ported:

     Synaptics Edges
	    32 bit, 4 values, left, right, top, bottom.

     Synaptics Finger
	    32 bit, 3 values, low, high, press.

     Synaptics Tap Time
	    32 bit.

     Synaptics Tap Move
	    32 bit.

     Synaptics Tap Durations
	    32 bit, 3 values, single touch timeout, max tapping time for  double
	    taps, duration of a single click.

     Synaptics ClickPad
	    8 bit (Bool).

     Synaptics Middle Button Timeout
	    32 bit.

     Synaptics Two-Finger Pressure
	    32 bit.

     Synaptics Two-Finger Width
	    32 bit.

     Synaptics Scrolling Distance
	    32 bit, 2 values, vert, horiz.

     Synaptics Edge Scrolling
	    8 bit (BOOL), 3 values, vertical, horizontal, corner.

     Synaptics Two-Finger Scrolling
	    8 bit (BOOL), 2 values, vertical, horizontal.

     Synaptics Move Speed
	    FLOAT, 4 values, min, max, accel, <deprecated>

     Synaptics Button Scrolling
	    8 bit (BOOL), 2 values, updown, leftright.

     Synaptics Button Scrolling Repeat
	    8 bit (BOOL), 2 values, updown, leftright.

     Synaptics Button Scrolling Time
	    32 bit.

     Synaptics Off
	    8 bit, valid values (0, 1, 2).

     Synaptics Locked Drags
	    8 bit (BOOL).

     Synaptics Locked Drags Timeout
	    32 bit.

     Synaptics Tap Action
	    8  bit,  up  to MAX_TAP values (see synaptics.h), 0 disables an ele-
	    ment. order: RT, RB, LT, LB, F1, F2, F3.

     Synaptics Click Action
	    8 bit, up to MAX_CLICK values (see synaptics.h), 0 disables an  ele-
	    ment.  order: Finger 1, 2, 3.

     Synaptics Circular Scrolling
	    8 bit (BOOL).

     Synaptics Circular Scrolling Distance
	    FLOAT.

     Synaptics Circular Scrolling Trigger
	    8  bit,  valid  values  0..8 (inclusive) order: any edge, top, top +
	    right, right, right + bottom, bottom, bottom + left, left,	left   +
	    top.

     Synaptics Circular Pad
	    8 bit (BOOL).

     Synaptics Palm Detection
	    8 bit (BOOL).

     Synaptics Palm Dimensions
	    32 bit, 2 values, width, z.

     Synaptics Coasting Speed
	    FLOAT, 2 values, speed, friction.

     Synaptics Pressure Motion
	    32 bit, 2 values, min, max.

     Synaptics Pressure Motion Factor
	    FLOAT, 2 values, min, max.

     Synaptics Grab Event Device
	    8 bit (BOOL).

     Synaptics Gestures
	    8 bit (BOOL), 1 value, tap-and-drag.

     Synaptics Area
	    The  AreaLeftEdge, AreaRightEdge, AreaTopEdge and AreaBottomEdge pa-
	    rameters are used to define the edges of  the  active  area  of  the
	    touchpad.	All  movements,  scrolling  and tapping which take place
	    outside of this area will be ignored.  This property is disabled  by
	    default.

	    32 bit, 4 values, left, right, top, bottom. 0 disables an element.

     Synaptics Soft Button Areas
	    This  property is only available on ClickPad devices.  The Right and
	    middle soft button areas are used to support right and middle  click
	    actions  on a ClickPad device. Providing 0 for all values of a given
	    button disables the button area.

	    32 bit, 8 values, RBL, RBR, RBT, RBB, MBL, MBR, MBT, MBB.

     Synaptics Capabilities
	    This read-only property expresses the  physical  capability  of  the
	    touchpad, most notably whether the touchpad hardware supports multi-
	    finger tapping and scrolling.

	    8 bit (BOOL), 7 values (read-only), has left button, has middle but-
	    ton, has right button, two-finger detection, three-finger detection,
	    pressure detection, and finger/palm width detection.

     Synaptics Pad Resolution
	    32	bit  unsigned,	2  values  (read-only),  vertical, horizontal in
	    units/millimeter.

NOTES
     Configuration through InputClass sections is recommended in X  servers  1.8
     and  later.   See	xorg.conf.d(5) for more details.  An example xorg.conf.d
     snippet is provided in ${sourcecode}/conf/70-synaptics.conf

     Configuration through hal fdi files is recommended in X  servers  1.5,  1.6
     and   1.7.    An	example   hal  policy  file  is  provided  in  ${source-
     code}/conf/11-x11-synaptics.fdi

     If either of Protocol "auto-dev" (default) or Protocol "event" is used, the
     driver initializes defaults based on the capabilities reported by the  ker-
     nel driver.  Acceleration, edges and resolution are based on the dimensions
     reported by the kernel.  If the kernel reports multi-finger detection, two-
     finger  vertical  scrolling  is enabled, horizontal two-finger scrolling is
     disabled and edge scrolling is disabled.  If no  multi-finger  capabilities
     are  reported,  edge  scrolling is enabled for both horizontal and vertical
     scrolling.  Tapping is disabled by default for touchpads with one	or  more
     physical buttons.	To enable it you need to map tap actions to buttons. See
     the "TapButton1", "TapButton2" and "TapButton3" options.

     Button  mapping  for physical buttons is handled in the server.  If the de-
     vice is switched to left-handed (an in-server mapping of  physical  buttons
     1,  2,  3	to the logical buttons 3, 2, 1, respectively), both physical and
     TapButtons are affected.  To counteract this, the TapButtons need to be set
     up in reverse order (TapButton1=3, TapButton2=1).

REMOVED OPTIONS
     The following options are no longer part of the driver configuration:

     Option "Repeater" "string"

     Option "HistorySize" "integer"

     Option "SpecialScrollAreaRight" "boolean"

     Option "GuestMouseOff" "boolean"

     Option "SHMConfig" "boolean"

     Option "FingerPress" "integer"

     Option "TrackstickSpeed" "float"

     Option "EdgeMotionMinZ" "integer"

     Option "EdgeMotionMaxZ" "integer"

     Option "EdgeMotionMinSpeed" "integer"

     Option "EdgeMotionMaxSpeed" "integer"

     Option "EdgeMotionUseAlways" "boolean"

AUTHORS
     Peter Osterlund <petero2@telia.com> and many others.

SEE ALSO
     Xorg(1), xorg.conf(5), Xserver(1), X(7), synclient(1), syndaemon(1)

xlibre-xf86-input-synaptics 25.0.0 2016-05-19			   SYNAPTICS(4x)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=synaptics&sektion=4&manpath=FreeBSD+15.1-RELEASE+and+Ports>

home | help