tluck / os-x-voodoo-ps2-controller Goto Github PK
View Code? Open in Web Editor NEWThis project forked from rehabman/os-x-voodoo-ps2-controller
Contains updated Voodoo PS/2 Controller, improved Keyboard & Synaptics TouchPad
License: Other
This project forked from rehabman/os-x-voodoo-ps2-controller
Contains updated Voodoo PS/2 Controller, improved Keyboard & Synaptics TouchPad
License: Other
jcsnider says in this commit:
X1 Carbon Compatibility Mods
Updated the project to run on OS X 10.9 SDK, it is working in the
latest Xcode.
Modified PS2Trackpad-Info.plist and set the default MouseMultiplierX/Y
and MouseScrollMultiplierX/Y to 1 in order to fix the super fast,
uncontrollable TrackPoint movement.
Finally I modified SynapticsTouchPad.cpp/.h to look for X1 Carbon
TrackPoint dedicated button packets to keep track of when the
left/right/middle buttons are clicked. Afterwards I inject the
dedicated button state into the following packet handler calls until
the buttons are released.
I change these lines in 1.8.24e's plugins-->VoodooPS2Trackpad.kext-->Contents-->info.plist
to
<key>MouseMultiplierX</key>
<integer>2</integer>
<key>MouseMultiplierY</key>
<integer>2</integer>
<key>MouseScrollMultiplierX</key>
<integer>1</integer>
<key>MouseScrollMultiplierY</key>
<integer>1</integer>
<key>
and it works!
but it not work in 1.8.24g.
I don't kown it's Karabiner-Elements
's bug or keyboard driver's bug.
Hey there, issues I'm currently experiencing on my x220:
This seems like something that might be able to be fixed with the plist settings as functionally everything seems to be working alright, but i'm hesitant to start messing with the plist before I know what everything does. Do you have any settings you recommend I start with? I should note that I used this same kext on El Capitan and didn't experience any issues - that might be a good starting point. Also, scrolling works somewhat better if I am using RehabMan's original trackpad plist.
Thanks!
Tried to adopt this version of the kext again on a T450s. But I still have the problem where my trackpoint will jump 5 to 20 pixels on each movement - so its quite jerky.
I figured it was the mouseMultiplierX/Y settings which default to 20 (I personally like them at 1 or maybe 2). But changning the plist made no difference so I just commented out the code in the extension and ran using that. No difference.
Any ideas outside of the MultiplierX/Y settings that could cause this?
when restart the Serria, if trackpoint worked in login screen, it works fine. if not, it never work! there almost 70% not work when restart my x1c-2015. trackpad and keyboard works.
with RehabMan-Voodoo, trackpoint works, but three button not.
this is why I stick in 10.11 . but yesterday I can't login app store in 10.11, but the app store works fine in 10.12, I face the problem again.
Hi! I find your VoodooPS2Controller.kext for touchpad of T450 on tonymacx86 here
It's work wrong with macOS 10.15. Do you have optimized version this kext for 10.15? :)
It's very good kext for my T440p with trackpad of T450. But prefpanel don't view, trackpoint wrong moved cursor (arrow). 3-fingers swipes don't work(
Physical buttons worked very good. :-)
P.S. I'm sorry for my bad english.
Hello tluck. Does this kext suppot ThinkPad E550 ? I can test this kext.
Hello,
I've been using this kext for my T450s and it works better than all the other ones I tried, thanks for maintaining this.
I do have two small problems though. The main one is that the middle click doesn't work a lot of the time. For scrolling it works fine but it takes a few clicks to close a browser tab. I think it's picking up tiny movements from my finger on the trackpoint and it thinks I'm trying to scroll instead of middle click. Is there a setting in Info.plist to increase the movement threshold required before it registers a middle click as a scroll instead of a click?
The other problem is that the trackpoint is only recognized about 1/2 of the times I boot the system. Sleep doesn't work (due to USB wifi) so I have to boot almost every day and half the time the trackpad will work but not the trackpoint so I have to restart the system. Have you seen that before or is that a kext cache loading issue? My kext is in S/L/E, it didn't seem to work in /EFI/CLOVER/kexts.
My system has a full custom DSDT/SSDT, using the latest 1.8.25 version and OSX 10.12.3. Thanks!
Sorry for the delay @tluck, I wanted to make sure I was correct before bothering you with code changes.
As I mentioned here (RehabMan#149 (comment)) you have one slight oversight that is causing passthru to not always be enabled.
Prior to this block of code running you are setting skipassthru=1 and passthru=1.
if (!skippassthru)
{
UInt8 passthru2 = buf3[2] >> 7;
// see if guest device for pass through is present
UInt8 passthru1 = 0;
if (getTouchPadData(0x1, buf3))
{
// first byte, bit 0 indicates guest present
passthru1 = buf3[0] & 0x01;
}
// trackpad must have both guest present and pass through capability
passthru = passthru1 & passthru2;
#ifdef SIMULATE_PASSTHRU
passthru = true;
#endif
DEBUG_LOG("VoodooPS2Trackpad: passthru1=%d, passthru2=%d, passthru=%d\n", passthru1, passthru2, passthru);
}
The problem is that there is another function overriding the skippassthru variable, so that block of code runs anyways. See function setParamPropertiesGated in the VoodooPS2SynapticsTouchPad.cpp. This line specifically is what is overriding your skippassthru value from one of the plists I believe:
{"SkipPassThrough", &skippassthru},
Anyways, my personal "quick fix" was to do the following.
Add:
skippassthru = 1;
passthru = 1;
Above:
if (!skippassthru)
I delayed posting this until I had confirmation from another Thinkpad user of the fix working. (https://www.tonymacx86.com/threads/guide-lenovo-thinkpad-t440s.244798/page-3#post-1727481)
A more appropriate fix would be to find SkipPassThrough in whichever plist file and setting the value to true. A even better fix would be to correct the passthru support detection code -- I'm working on that side of things now in Rehabman's original repo.
Hope this helps!
-JC
Hi,
I'm using a ThinkPad T460 and am experiencing the following issue:
Whenever I disable the Trackpad using the printscreen button, the three physical buttons won't response unless I am simultaneously moving the cursor using the trackpoint, which makes clicking on buttons very difficult.
Except for this, your fork works awesome :-)
Hi, it's not really an issue, more like questions.
If I understand right, ps2trackpad kext takes care of both trackpad and trackpoint(+buttons).
Do you think it's possible to make the ps2mouse kext takes care of the trackpoint(+buttons) device,
and the ps2trackpad kext takes care of the trackpad device?
When the trackpad is disabled in the BIOS, ps2mouse kext naturally takes over to handle the trackpoint(+buttons). And it's doing it pretty well.
it seems to be around the personalities matching process, I'm still trying to figure it out...
By the way, I wonder, there is 2 devices listed in the DSDT: PS2K(or KBD for me: x230) and MOU. So how does that work between the physical keyboard, the physical trackpoint and the physical trackpad?
I have tried using this fork, but unfortunately it does not work to show settings on mojave.
this is shame because i prefer the feeling of your kext over rehabmans, but his one works with the right settings
Hi there,
I will happily PayPal 30$ to anyone who would log in to my machine and got the ClickPad (Left, Middle, Right) physical buttons to work.
I have a Thinkpad Yoga S1 for which I have swiped the Trackpoint by the one of the X250
If someone got it to work for me I will report here.
If interested please contact me at [email protected]
Regards
Hi, I've been using this kext on my x1c hackintosh for a while now and it has worked perfectly, thank you very much for maintaining and updating it. However sometimes the trackpoint doesn't work at all on boot, the trackpad and buttons work fine, but the trackpoint will just stay in the top left corner. I have to reboot a couple of times to have it work again, and it happens seemingly random. I'd like to troubleshoot but I'm not really sure how I would be able to.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.