MOUSED.CONF(5)

NAME
moused.conf - mouse daemon configuration file

DESCRIPTION
The moused.conf file specifies how the moused(8) (mouse daemon) should operate. It provides ability to adjust certain mice parameters on per-device basis.

Configuration file format is derived from libinput(1) device quirk files. A file may contain multiple section headers ([some identifier]) followed by one or more MatchFoo=Bar directives, followed by at least one of MousedFoo=bar or AttrFoo=bar directive. A configuration file must contain at least one section, each section must have at least one ‘Match’ tag and at least one of either ‘Attr’ or ‘Moused’. Section names are free-form and may contain spaces.

  List of currently available matches.

MatchName, MatchUniq
    Match on the NAME or UNIQ udev property on this device. These properties are typically derived from the device’s kernel name or uniq. These matches use fnmatch() globs.

MatchBus
    A lower-case bus name. Currently supported are usb, bluetooth, ps2, rmi, i2c, and spi.

MatchVendor, MatchProduct, MatchVersion
    The hexadecmial 4-digit vendor ID, product ID or driver version as exported, without a 0x prefix.

MatchDMIModalias, MatchDeviceTree
    An fnmatch() glob for the DMI modalias or the DeviceTree compatible string.

MatchDevType
    One of touchpad, mouse, pointingstick, keyboard, joystick, tablet, tablet-pad. Only touchpad and mouse types are supported.

  List of currently available Moused tags.

MousedGrabDevice
    Only for evdev interface. Become the sole recipient of all incoming input events. This prevents other processes from getting input events on the device.

    Use -g option alternatively.

MousedIgnoreDevice
    Ignore given device.

MousedClickThreshold
    Set double click speed as the maximum interval in msec between button clicks. Without this option, the default value of 500 msec will be assumed. This option will have effect only on the cut and paste operations in the text mode console. The user program which is reading mouse data via sysmouse(4) will not be affected.

    Use -C option alternatively.

MousedEmulateThirdButton
    Emulate the third (middle) button for 2-button mice. It is emulated by pressing the left and right physical buttons simultaneously.

    Use -3 option alternatively.

MousedEmulateThirdButtonTimeout
    When the third button emulation is enabled (see above), the moused(8) utility waits MousedEmulateThirdButtonTimeout msec at most before deciding whether two buttons are being pressed simultaneously. The default timeout is 100 msec.

    Use -E option alternatively.

MousedLinearAccelX

MousedLinearAccelY

MousedLinearAccelZ
    Accelerate or decelerate the mouse input. This is a linear acceleration only. Values less than 1.0 slow down movement, values greater than 1.0 speed it up.

    You can use the MousedLinearAccel and MousedExponentialAccel options at the same time to have the combined effect of linear and exponential acceleration.

    Use -a option alternatively.

MousedExponentialAccel

MousedExponentialOffset
    Apply exponential (dynamic) acceleration to mouse movements: the faster you move the mouse, the more it will be accelerated. That means that small mouse movements are not accelerated, so they are still very accurate, while a faster movement will drive the pointer quickly across the screen.

    The MousedExponentialAccel value specifies the exponent, which is basically the amount of acceleration. Useful values are in the range 1.1 to 2.0, but it depends on your mouse hardware and your personal preference. A value of 1.0 means no exponential acceleration. A value of 2.0 means squared acceleration (i.e. if you move the mouse twice as fast, the pointer will move four times as fast on the screen). Values beyond 2.0 are possible but not recommended. A good value to start is probably 1.5.

    The optional MousedExponentialOffset value specifies the distance at which the acceleration begins. The default is 1.0, which means that the acceleration is applied to movements larger than one unit. If you specify a larger value, it takes more speed for the acceleration to kick in, i.e. the speed range for small and accurate movements is wider. Usually the default should be sufficient, but if you're not satisfied with the behaviour, try a value of 2.0.

    Note that the -A option interacts badly with the X server's own acceleration, which doesn't work very well anyway. Therefore it is recommended to switch it off if necessary: “xset m 1”.

    Use -A option alternatively.

MousedMapZAxis
    Map Z axis (roller/wheel) movement to another axis or to virtual buttons. Does not supported yet. Use -z option instead.

MousedVirtualScrollEnable
    Enable “Virtual Scrolling”. With this option set, holding the middle mouse button down will cause motion to be interpreted as scrolling. Use the MousedVirtualScrollThreshold option to set the distance the mouse must move before the scrolling mode is activated and the MousedVirtualScrollSpeed option to set the scrolling speed.

    Use -V option alternatively.

MousedHorVirtualScrollEnable
    Enable “Horizontal Virtual Scrolling”. With this option set, holding the middle mouse button down will cause motion to be interpreted as horizontal scrolling. Use the MousedVirtualScrollThreshold option to set the distance the mouse must move before the scrolling mode is activated and the MousedVirtualScrollSpeed option to set the scrolling speed. This option may be used with or without the MousedVirtualScrollEnable option.

    Use -H option alternatively.

MousedVirtualScrollSpeed= distance
    When “Virtual Scrolling” is enabled, the MousedVirtualScrollSpeed option can be used to set the distance (in pixels) that the mouse must move before a scroll event is generated. This effectively controls the scrolling speed. The default distance is 2 pixels.

    Use -L option alternatively.

MousedVirtualScrollThreshold= distance
    When “Virtual Scrolling” is enabled, the MousedVirtualScrollThreshold option can be used to set the distance (in pixels) that the mouse must move before the scrolling mode is activated. The default distance is 3 pixels.

    Use -U option alternatively.

MousedWMode= N
    Make the physical button N act as the wheel mode button. While this button is pressed, X and Y axis movement is reported to be zero and the Y axis movement is mapped to Z axis. You may further map the Z axis movement to virtual buttons by the MousedMapZAxis tag.

    Use -w option alternatively.

  List of currently available Moused mice specific tags.

MousedDriftTerminate

MousedDriftDistance

MousedDriftTime

MousedDriftAfter
    Terminate drift. Use this option if mouse pointer slowly wanders when mouse is not moved. Movements up to MousedDriftDistance (for example 4) pixels (X+Y) in MousedDriftTime msec (default 500) are ignored, except during MousedDriftAfter msec (default 4000) since last real mouse movement.

    Use -T option alternatively.

  List of currently available Moused touchpad specific tags.

MousedTwoFingerScroll
    Enable two finger scrolling.

MousedNaturalScroll
    Enable natural scrolling.

MousedThreeFingerDrag
    Enable dragging with three fingers.

MousedSoftButton2X
    Horizontal position of 2-nd softbutton left edge in percents. (0-disable)

MousedSoftButton3X
    Horizontal position of 3-rd softbutton left edge in percents. (0-disable)

MousedSoftButtonsY
    Vertical size of softbuttons area in percents. Use negative values to place softbutton area at top of touchpad.

MousedTapTimeout
    Tap timeout in milliseconds

MousedTapPressureThreshold
    Pressure threshold to detect tap.

MousedTapMaxDelta
    Length of finger movement above which a tap is ignored measured in mm.

MousedTapholdTimeout
    Maximum elapsed time between two taps to consider a tap-hold action.

MousedVScrollMinDelta
    Minimum movement to consider virtual scrolling.

MousedVScrollHorArea
    Area reserved for horizontal virtual scrolling in mm.

MousedVScrollVerArea
    Area reserved for vertical virtual scrolling in mm.

  List of currently available libinput-compatible tags.

AttrSizeHint
    Hints at the width x height of the device in mm.

AttrTouchSizeRange
    Not supported yet.

AttrPalmSizeThreshold
    Maximum finger width to detect palm in mm.

AttrLidSwitchReliability
    Not supported yet.

AttrKeyboardIntegration
    Not supported yet.

AttrPointingStickIntegration
    Not supported yet.

AttrTPKComboLayout
    Not supported yet.

AttrPressureRange= N: M
    Specifies the touch pressure required to trigger a press N and to trigger a release M.

AttrPalmPressureThreshold
    Maximum pressure to detect palm.

AttrResolutionHint
    Hints at the resolution of the x/y axis in units/mm.

AttrTrackpointMultiplier
    Not supported yet.

AttrThumbPressureThreshold
    Not supported yet.

AttrUseVelocityAveraging
    Not supported yet.

AttrTabletSmoothing
    Not supported yet.

AttrThumbSizeThreshold
    Not supported yet.

AttrMscTimestamp
    Not supported yet.

AttrEventCode
    Enables or disables the evdev event type/code tuples on the device. The prefix for each entry is either ‘+’ (enable) or ‘-’ (disable). Entries may be a named event type, or a named event code, or a named event type with a hexadecimal event code, separated by a single colon.

AttrInputProp
    Enables or disables the evdev input property on the device. The prefix for each entry is either ,Sq + (enable) or ‘-’ (disable). Entries may be a named input property or the hexadecimal value of that property.

All libinput(1) ‘Model’ quirks are currently ignored.

FILES
/usr/local/etc/moused.conf
    The file moused.conf resides in /usr/local/etc.
/usr/local/share/moused/*.quirks
    Predefined quirks processed before moused.conf.

EXAMPLES
Set touch pressure and palm detection thresholds for PS/2 Synaptics touchpad:

    [SynPS/2 Synaptics TouchPad]
    MatchDevType=touchpad
    MatchName=SynPS/2 Synaptics TouchPad
    AttrPressureRange=35:30
    AttrPalmPressureThreshold=220

SEE ALSO
moused(8)

libinput(1) device quirk format: https://wayland.freedesktop.org/libinput/doc/latest/device-quirks.html

HISTORY
The moused.conf file format first appeared in FreeBSD 15.0.

AUTHORS
This manual page was written by Vladimir Kondratyev <wulf@FreeBSD.org> based on moused(8) manual page and libinput(1) documentation.