Subject: Re: Phantom button presses from trackpad
To: None <port-macppc@netbsd.org>
From: David H. Gutteridge <dhgutteridge@sympatico.ca>
List: port-macppc
Date: 10/22/2006 16:09:46
Date: Sun, 22 Oct 2006 19:09:45 -0400
Mime-Version: 1.0
Content-Type: text/plain; format=flowed

>>>I have an iBook G4 of early 2004, running -current, but I haven't yet
>>>bothered to update X beyond 4.4.0.  I tried changing the keyboard
>>>driver from "keyboard" to "kbd", which gave positive results (more
>>>keys defined, less need for xmodmap), but also made the trackpad
>>>behave strangely.  Whenever I put my finger on it, it reports button
>>>179 being pressed:
>>
>>Whatever the cause was, the recent changes to ams.c fixed it.  The
>>trackpad is now quite usable.  Thanks!

>Good, the point of the change was to make tapping the pad work as button 
>one.
>About the phantom buttons - all Apple trackpads I know report more than one 
>button ( two in the PB3400c, four in my iBook G4 ) - the only one that's 
>corresponding to a real life button is button one. The others are (ab)used 
>for stuff like signalling that there's a finger on the pad ( the two-button 
>version uses button 2-4 for that, the four-button version uses button 5 and 
>reports button four as always down).
>The button count reported is bogus and ought to be read as protocol 
>revision or something.

I've also experienced the button 179 problem on my trusty old clamshell
iBook SE, running 3.0.1 at present.  I grabbed v. 1.20 of ams.c and 1.5
of amsvar.h and applied them against the 3.0 branch.  (I just had to
change ams_ioctl() back to use the proc rather than lwp struct, as
altered in v. 1.18 of ams.c.)  I assume that was safe; it worked for me.

After the change, the trackpad is now completely usable.  One thing
though -- not that it bothers me -- Michael, you've noted the intent
was to make tapping the pad work as button one.  That doesn't happen
for me.  As above, before the change if I used the trackpad with xev(1)
it would report button 179 as soon as I touched it.  Now it never
reports any button events when I touch it, whether that's a tap or
something more prolonged.  Like I said, no worries for me, I don't use
the trackpad to click (in fact, I had no idea one could do that), but
thought I'd mention it.  (Perhaps it's something to do with the older
branch I'm using?)

>So, has anyone ever seen an ADB trackpad that reports something else than 
>two or four buttons?

My iBook reports two buttons.

Dave