Bug in the AppleBluetoothMultitouch Kext. Using HID Manager API trackpad x/y elements are always ZERO
Bug in the AppleBluetoothMultitouch Kext. Using HID Manager API trackpad x/y elements are always ZERO
- Subject: Bug in the AppleBluetoothMultitouch Kext. Using HID Manager API trackpad x/y elements are always ZERO
- From: faraz khan <email@hidden>
- Date: Tue, 15 May 2012 19:12:47 -0700
All,
I've been hitting my head against the wall on this one but I really
cannot find a solution. I'm pretty sure its a apple bug (i've filed a
bug report) but I'm actually looking for a workaround if possible. The
problem is described as follows:
Summary:
Using the HID Manager API, some hardware devices have a zero-valued
input callback. (the callback does happen but the value is ALWAYS
zero)
Steps to Reproduce:
Download any HID manager test suite from:
http://developer.apple.com/library/mac/#samplecode/HID_Explorer/Introduction/Intro.html#//apple_ref/doc/uid/DTS10000443
or
http://ddribin.googlecode.com/svn/trunk/DDHidLib/
Try to test the above code using a Apple Magic Trackpad.
Expected Results:
Apple magic trackpad should issue GD_X and GD_Y events with non zero
values like the apple magic mouse, corded USB Apple mouse or any other
mouse
Actual Results:
HID Manager input callbacks DO happen but always have a zero value
Regression:
None. This does not work since Snow Leopard (10.6)
Notes:
Some users of my application (which uses HID Manager) have also
complained that a Macbook Air connected through a thunderbolt display
exhibits the same behavior when using USB corded mice attached to the
TB display.
Thanks.
I would also like to add that the SeizeDevice parameter:
IOReturn ret = IOHIDManagerOpen(hidman, kIOHIDOptionsTypeSeizeDevice);
Is able to grant me exclusive access of ALL mice (Apple USB Mouse,
Bluetooth mouse, Logitech USB mouse) but is unable to grant exclusive
access on the trackpad ( the above command would return with zero
result but the OS still gets trackpad events)
To add to this: unloading the
com.apple.driver.AppleBluetoothMultitouch kext and removing it from
/System/Library/Extensions so that it doesnt load at all fixes the
problem as the OS loads the default safe mode driver. So its obviously
this driver thats causing the issue.
Thanks
--
Faraz Khan
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden