Bug 18062

Summary: Multitouch support for Synaptics V7.4 Touchpads
Product: Drivers Reporter: tob (tobynbertram)
Component: Input DevicesAssignee: drivers_input-devices
Status: RESOLVED OBSOLETE    
Severity: normal CC: alan, alex.hunziker, devel, hokasch, simar.i3r
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6 Subsystem:
Regression: No Bisected commit-id:
Attachments: Synaptics Multitouch Initialization
Script to send Init sequence to touchpad and monitor response

Description tob 2010-09-08 07:31:24 UTC
Created attachment 29262 [details]
Synaptics Multitouch Initialization

I was inspired by Andrew Skalski's work that he did for the Alps touchpad in Bug # 14660.  So I used the same technique to find the multitouch initialization sequence for the Synaptics Clickpad touchpad in my HP dv7t Select laptop.  I have attached the initialization sequence exchanged between the Windows 7 Synaptics driver and the touchpad as well as a script that I borrowed from Andrew Skalski's work that makes it easy to send the initialization sequence to the touchpad and monitor the response.

I haven't  figured out the new 12 byte protocol yet but here are a few quick observations:
1)One finger contact utilizes the same 6 byte absolute format that is detailed in the Synaptics PS/2 interfacing guide.  A new 12 byte protocol is used whenever 2 or more fingers are used.
2)The touchpad can report the contact of 1, 2, or 3 fingers.
3)X and Y coordinates for 2 points on the touchpad are provided.
Comment 1 tob 2010-09-08 07:34:11 UTC
Created attachment 29282 [details]
Script to send Init sequence to touchpad and monitor response
Comment 2 Cody P Schafer 2010-09-09 21:04:14 UTC
Could you disclose what exactly the method of obtaining the initialization sequence was?
Comment 3 tob 2010-09-10 06:37:17 UTC
I followed the procedure that Andrew Skalski detailed in post #140 of this bug report: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/550625
Comment 4 Gursimran singh Mohar 2010-11-09 19:04:58 UTC
great work Tob!!