Hi all, I have searched the net and the archives of linux-input for information on how to use the Linux g_hid kernel module on a device and the hid-multitouch kernel module on a host to communicate multitouch events. But unfortunately I can only get single touch working. Q: Has anyone successfully completed a g_hid <-> hid-multitouch setup? And is there a description somewhere of such setup? Q: Is the Windows 7 multitouch USB HID descriptor the correct one to use also for Linux hid-multitouch? Or is some tweaking necessary? DETAILED DESCRIPTION BELOW The device is a Linux device that uses g_hid (currently 2.6.37 kernel) and a USB HID Report Descriptor for multitouch using two-touch parallel mode according to Microsoft document http://msdn.microsoft.com/en-us/windows/hardware/gg487437. On the host (ubuntu 11.04, 2.6.38 kernel) I register dynamically according to the description at http://lii-enac.fr/en/architecture/linux-input/multitouch-ubuntu-howto.html. Using the events/rdesc files in debugfs on Ubuntu 11.04 I have validated the parsing of the report descriptor and the input reports. Example multitouch input report from /sys/kernel/debug/hid/0003:xxxx:yyyy.0002/events looks correct: report (size 14) (numbered) = 05 03 00 a5 12 32 0e 03 01 99 14 32 0e 02 Digitizers.TipSwitch = 1 Digitizers.InRange = 1 Digitizers.ContactID = 0 GenericDesktop.X = 4773 GenericDesktop.Y = 3634 Digitizers.TipSwitch = 1 Digitizers.InRange = 1 Digitizers.ContactID = 1 GenericDesktop.X = 5273 GenericDesktop.Y = 3634 Digitizers.ContactCount = 2 The first touch in the report is correctly presented both on Windows and on Ubuntu 11.04 (using ENAC's mtdiag tool with a minor tweak to display data from all devices not just multitouch ones). I can see in the debugfs files that the data for the second touch data is correctly transferred and interpreted (see above), but the mapping to the linux input system seems a bit strange though (see below). My guess is that I have not been correctly registered as a multitouch device. I'm assuming this also because I cannot see any activity from the hid-multitouch module other than it being initialized when I connect my device (probably another reason for the needed tweak in mtdiag above). Example mapping from /sys/kernel/debug/hid/0003:xxxx:yyyy.0002/rdesc that does not look entirely correct for the second touch: Digitizers.TipSwitch ---> Key.Touch Digitizers.InRange ---> Key.ToolPen Digitizers.ContactID ---> Absolute.Misc GenericDesktop.X ---> Absolute.X GenericDesktop.Y ---> Absolute.Y Digitizers.TipSwitch ---> Key.Touch Digitizers.InRange ---> Key.ToolRubber Digitizers.ContactID ---> Absolute.? GenericDesktop.X ---> Absolute.Z GenericDesktop.Y ---> Absolute.Rx Digitizers.ContactCount ---> Absolute.? Button.0001 ---> Key.LeftBtn Button.0002 ---> Key.RightBtn Button.0003 ---> Key.MiddleBtn GenericDesktop.X ---> Relative.X GenericDesktop.Y ---> Relative.Y GenericDesktop.Wheel ---> Relative.Wheel Regards, Pablo Cases ------------------------- Pablo Cases, M.Sc. Development Engineer Software FlatFrog Laboratories AB Magistratsvägen 10 22643 Lund Sweden Tel: +46 708 393816 Mail: pc@xxxxxxxxxxxx Web: www.flatfrog.com -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html