# USB Mouse and Synaptics touchpad problems

## MishY

kernel 2.6.4

Although the mouse works great I cannot get the scroll wheel to work and its driving me nuts  :Sad: 

The touchpad works but double tapping the pad does not work.

I have synaptics loading in the load section of XF86Config. I do however think I might have made a mistake on the rest of the config.

If anyone could help I would really appreciate it  :Smile: 

# **********************************************************************

# Core Pointer's InputDevice section

# **********************************************************************

Section "InputDevice"

  Driver     "synaptics"

  Identifier     "Mouse3"

  #Option    "Device"     "/dev/input/event0"

  #Option   "Protocol"   "event"

  Option    "Device"     "/dev/psaux"

  #Option   "Protocol"   "psaux"

  Option   "Protocol"   "IMPS/2"

  Option   "LeftEdge"      "1900"

  Option   "RightEdge"     "5400"

  Option   "TopEdge"       "3900"

  Option   "BottomEdge"    "1800"

  Option   "Finger"   "25 30"

  Option   "MaxTapTime"   "180"

  Option   "MaxTapMove"   "220"

  Option   "VertScrollDelta" "100"

  Option   "MinSpeed"   "0.02"

  Option   "MaxSpeed"   "0.18"

  Option   "AccelFactor" "0.0010"

EndSection

Section "InputDevice"

# Identifier and driver

    Identifier  "Mouse1"

    Driver      "mouse"

    Option "Protocol"    "PS/2"

    Option "Device"      "/dev/psaux"

# Mouse-speed setting for PS/2 mouse.

#    Option "Resolution"        "256"

# When using XQUEUE, comment out the above two lines, and uncomment

# the following line.

#    Option "Protocol"  "Xqueue"

# Baudrate and SampleRate are only for some Logitech mice. In

# almost every case these lines should be omitted.

#    Option "BaudRate"  "9600"

#    Option "SampleRate"        "150"

# Emulate3Buttons is an option for 2-button Microsoft mice

# Emulate3Timeout is the timeout in milliseconds (default is 50ms)

    Option "Emulate3Buttons"

#    Option "Emulate3Timeout"    "50"

# ChordMiddle is an option for some 3-button Logitech mice

#    Option "ChordMiddle"

EndSection

# **********************************************************************

# Other input device sections

# this is optional and is required only if you

# are using extended input devices.  This is for example only.  Refer

# to the XF86Config man page for a description of the options.

# **********************************************************************

#

 Section "InputDevice"

    Identifier  "USBMouse"

    Driver      "mouse"

    Option      "Protocol"      "IMPS/2"

    Option      "Device"        "/dev/input/mouse1"

    Option      "ZAxisMapping" "4 5" # scroll enabled

 EndSection

Section "ServerLayout"

# The Identifier line must be present

    Identifier  "Simple Layout"

# Each Screen line specifies a Screen section name, and optionally

# the relative position of other screens.  The four names after

# primary screen name are the screens to the top, bottom, left and right

# of the primary screen.  In this example, screen 2 is located to the

# right of screen 1.

    Screen "Screen 1"

# Each InputDevice line specifies an InputDevice section name and

# optionally some options to specify the way the device is to be

# used.  Those options include "CorePointer", "CoreKeyboard" and

# "SendCoreEvents".

    InputDevice "Mouse1" "CorePointer"

    InputDevice "Mouse3" "SendCoreEvents"

    InputDevice "Keyboard1" "CoreKeyboard"

EndSection

cat /proc/bus/input/devices shows:

bash-2.05b# cat /proc/bus/input/devices

I: Bus=0011 Vendor=0002 Product=0007 Version=0000

N: Name="SynPS/2 Synaptics TouchPad"

P: Phys=isa0060/serio1/input0

H: Handlers=mouse0

B: EV=b

B: KEY=6420 0 670000 0 0 0 0 0 0 0 0

B: ABS=11000003

I: Bus=0011 Vendor=0001 Product=0001 Version=ab41

N: Name="AT Translated Set 2 keyboard"

P: Phys=isa0060/serio0/input0

H: Handlers=kbd

B: EV=120003

B: KEY=4 2000000 3802078 f840d001 f2ffffdf ffefffff ffffffff fffffffe

B: LED=7

I: Bus=0003 Vendor=045e Product=007d Version=0000

N: Name="Microsoft Microsoft 3-Button Mouse with IntelliEye?"

P: Phys=usb-0000:00:1d.0-1/input0

H: Handlers=mouse1

B: EV=7

B: KEY=70000 0 0 0 0 0 0 0 0

B: REL=103Last edited by MishY on Sat Mar 27, 2004 6:38 am; edited 1 time in total

----------

## slaesche

please e-mail me a copy of your kernel config file

alauzon - at - crosswinds.net

----------

## dtor

Try this:

1. Rename Mouse3 to TouchPad

2. Kill Mouse1 section

3. Rename USBmouse to PS2mice

4. Change Device in PS2mice to /dev/input/mice

5. In ServerLayout change Mouse1 to PS2mice and Mouse3 to TouchPad

Renaming of your devices is not really necessary... but I like things labeled properly.

Oh, and in IMPS/2 is not a valid protocol name for Synaptics driver. It shoudl be either evdev, psaux or auto-dev. Luckily for you it defaults to auto-dev anyway.

----------

## MishY

Thanks for your help however my touchpad still has no double tap. Kinda weird  :Sad: 

Is the synaptics driver a module or built in to the 2.6.4 kernel ? I did a make menuconfig and couldn't find it at all

----------

## dtor

 *MishY wrote:*   

> Thanks for your help however my touchpad still has no double tap. Kinda weird 

 

Hmm.. does the scrolling work? Try moving you finger alongside the right edge of the touchpad and see if windows scroll. If tehy are then the driver works and you just need to play with the parameters. If not the touchpad still uses PS/2 emulation layer and need futher setup.

Also, look in /var/log/XFree86.0.log- is there any error messages from Synaptics driver. Do you see it mentioned there at all?

 *MishY wrote:*   

> Is the synaptics driver a module or built in to the 2.6.4 kernel ? I did a make menuconfig and couldn't find it at all

 

It is built-in as long as you have "PS/2 mouse" selected.

----------

## dtor

Oh, I just took another look at your /proc/bus/input/devices - you do not have "Event interface" (evdev) loaded. It is required for synaptics driver. Please enable Device Drivers--->Input device support  --->Event interface and either reboot or just load the module (if you compile it as module).

----------

## theonlymcc

I had a simliar problem. Try changing

```

InputDevice "Mouse1" "CorePointer"

InputDevice "Mouse3" "SendCoreEvents"

```

to this:

```

InputDevice "Mouse3" "CorePointer"

InputDevice "Mouse1" "SendCoreEvents"

```

You need to set the Touchpad to CorePointer instead of to SendCoreEvents. Worked for me.

----------

## kongit

synaptic driver is built in to kernel 2.6.4.  I use it.  here is my xf86config mouse input lines

 *Quote:*   

> Section "InputDevice"
> 
>     Identifier	"Mouse1"
> 
>     Driver	"mouse"
> ...

 

then this at bottom

 *Quote:*   

>  InputDevice "Mouse1" "CorePointer" 

 

no other reference to a mouse in my xf86config and both my synaptic touchpad and usb mouse work with kernel 2.6.4 and the scrollwheel on the mouse works.undefined.  You do need the event interface compiled into the kernel for usb.

----------

## dtor

 *kongit wrote:*   

> synaptic driver is built in to kernel 2.6.4.
> 
> <... skip ...>
> 
> no other reference to a mouse in my xf86config and both my synaptic touchpad and usb mouse work with kernel 2.6.4 and the scrollwheel on the mouse works.

 

The kernel portion is always present in 2.6. The userspace however has 2 options of communicating with device - either through /dev/input/{mice|mouseX} or through /dev/input/eventX. /dev/input/{mice|mouseX} is handled by standard xfree "mouse" driver, the "synaptics" driver communicates via /dev/input/eventX and provides advanced features, such as edge scrolling and multi-finger taps. Note that the original poster wanted to configure the advanced driver. 

 *kongit wrote:*   

> You do need the event interface compiled into the kernel for usb.

 

I respectfully disagree. The only users of event interface that I know of are synaptics and wacom drivers. The "mouse" driver has no idea what /dev/input/eventX device is so there is no need installing evdev for standard USB mice.

----------

## kongit

well for advance usage yes you need to so some extra stuff.  But I never do and find those usages annoying.    :Embarassed: 

----------

## R!tman

For tap-to-click, try adding

```
psmouse.proto=imps
```

to your kernel options in grub.conf.

----------

