# Configure touchpads to use Chromium Multitouch (cmt) X input driver
Section "InputClass"
    Identifier      "touchpad rambi elan"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    MatchProduct    "Elan"
    Option          "Integrated Touchpad" "1"
    Option          "Touchpad Stack Version" "2"
    Option          "Pressure Calibration Offset" "-232.615476471713"
    Option          "Pressure Calibration Slope" "4.5003322861445"

    # Resolution is not correctly reported by the device.
    Option          "Horizontal Resolution" "30"
    Option          "Vertical Resolution" "28"
EndSection

Section "InputClass"
    Identifier      "touchpad rambi atmel"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    MatchProduct    "Atmel"
    Option          "Touchpad Stack Version" "1"
    Option          "Integrated Touchpad" "1"

    # Disable some causes of delay
    Option          "IIR b0" "1"
    Option          "IIR b1" "0"
    Option          "IIR b2" "0"
    Option          "IIR b3" "0"
    Option          "IIR a1" "0"
    Option          "IIR a2" "0"
    Option          "IIR Distance Threshold" "1000"

    Option          "Pressure Calibration Offset" "-30.8987555752642"
    Option          "Pressure Calibration Slope" "3.04377880501995"
    # TODO(clchiou): Calibrate bias on X-axis
    Option          "Touchpad Device Output Bias on X-Axis" "139.858245421079"
    Option          "Touchpad Device Output Bias on Y-Axis" "139.858245421079"

    # We see lots of pressure changes under normal use, so raise thresholds
    Option          "Max Allowed Pressure Change Per Sec" "100000.0"
    Option          "Max Hysteresis Pressure Per Sec" "100000.0"
    Option          "Fling Buffer Suppress Zero Length Scrolls" "1"

    # People complain that light tap clicks don't register
    Option          "Tap Minimum Pressure" "21.0"

    # Fix for finger merge issue
    Option          "Finger Merge Filter Enabled" "1"

    # Enable Stationary Wiggle Filter
    Option          "Stationary Wiggle Filter Enabled" "1"
    Option          "Finger Moving Energy" "0.002"
    Option          "Finger Moving Hysteresis" "0.001"

    # Increase Change Timeout
    Option          "Change Timeout" "0.1"

    # Raw data is a little unsteady, add box filter for smoother movement
    Option          "Box Width" "0.3"
    Option          "Box Height" "0.3"
EndSection
