# [solved]workaround for touchpad problem

## dgulotta

I have been having problems with my touchpad.  I believe the root cause is a hardware problem, but Linux is not handling it gracefully.  When the touchpad fails, Linux sometimes thinks that the right mouse button is being held down (or at least that's what I think it's doing), which makes it impossible to switch to another mouse.  Even after removing the psmouse module and restarting the X server, Linux still thinks that the right mouse button is being held down.  Is there any way to convince it that the right mouse button is not, in fact, being held down?

Of course it would be even nicer if the driver was able to recover from whatever bad input it's receiving, but I guess that would be more difficult.

If it matters, the dmesg output looks like this:

```

[  166.263735] psmouse.c: Mouse at isa0060/serio1/input0 lost synchronization, throwing 1 bytes away.

[  173.052737] psmouse.c: bad data from KBC - timeout

[  426.758284] psmouse.c: bad data from KBC - timeout

[  551.421592] psmouse.c: Mouse at isa0060/serio1/input0 lost synchronization, throwing 1 bytes away.

[  823.053239] psmouse.c: Mouse at isa0060/serio1/input0 lost synchronization, throwing 1 bytes away.

[ 1043.416887] psmouse.c: bad data from KBC - timeout

[ 1046.267891] psmouse.c: bad data from KBC - timeout

[ 1046.918846] psmouse.c: Mouse at isa0060/serio1/input0 lost synchronization, throwing 2 bytes away.

[ 1051.502114] psmouse.c: bad data from KBC - timeout

[ 1060.970561] psmouse.c: bad data from KBC - timeout

```

Last edited by dgulotta on Thu Jul 15, 2010 6:45 pm; edited 1 time in total

----------

## wilsonsamm

It could be that you have not told it which protocol to use. In my slackware days I had some similar problems, but that was maybe three years ago or more.

At any rate, in your xorg.conf you can specifiy "Option "Protocol" "string"" in your mouse section.

Copy-pasta from http://ftp.x.org/pub/X11R7.0/doc/html/mouse.4.html

 *Quote:*   

> 
> 
> Valid protocol types include: 
> 
>     Auto, Microsoft, MouseSystems, MMSeries, Logitech, MouseMan, MMHitTab, GlidePoint, IntelliMouse, ThinkingMouse, ValuMouseScroll, AceCad, PS/2, ImPS/2, ExplorerPS/2, ThinkingMousePS/2, MouseManPlusPS/2, GlidePointPS/2, NetMousePS/2, NetScrollPS/2, BusMouse, SysMouse, WSMouse, USB, VUID, Xqueue. 
> ...

 

----------

## wilsonsamm

Another thought: if this is on a serial port, is perhaps your baud rate wrong?

----------

## cach0rr0

on my laptop i have to pass proto=imps whenever the module is loaded. This may be worth trying, though it does require you enable the requisite protocol extensions in the kernel config

----------

## dgulotta

I'll look into that, but it seems unlikely to be the problem.  I had been using the same kernel and xf86-input-mouse for several weeks without issue when the problem started happening.  I think it is more likely that some dirt got into some place that it's not supposed to be.  I guess mainly I'd like to know why X still thinks the mouse button is being held down after I remove the psmouse module, and if there's any way to convince it that the mouse button is not being held down.

----------

## dgulotta

I guess it was actually the middle button that Linux thought I was holding down.  If I press the middle button on my USB mouse, then Linux recognizes that the mouse button has been released and the USB mouse becomes usable.

----------

