Jump to content

Fixing the PS/2 driver (ApplePS2Controller.kext)


  • Please log in to reply
99 replies to this topic

#1
Tom H

Tom H

    InsanelyMac Protégé

  • Members
  • PipPip
  • 95 posts
  • Location:Silicon Valley, California
I have grabbed the Apple open source driver for PS/2 keyboards, mice and trackpads. I fixed it to build and run with the latest Xcode and moved headers so it would be self-contained. I still haven't fixed the build so all 4 kexts are automatically combined, but this is easy enough to work around. All are combined now, you still must build all 4 projects.

I have added more startup code to make it less likely to fail to load. I would say is fails about 50% as often as before - leave the kextunload/kextload hack in for now. Working much better, no failures on keyboard in 10 tries.

The source is covered by APSL, so modifying it is legal and here is the source posted to comply with that license.

Edit: 31 July 2006 - Updated kext and source. The keyboard now works without a mouse. More reliable, the kernel debug option is now off.

Kext: Attached File  ApplePS2Controller.kext.zip   284.42KB   29864 downloads
Source: Attached File  ApplePS2Controller.zip   95.58KB   6267 downloads

#2
quixos

quixos

    InsanelyMac Legend

  • Retired
  • 943 posts
grabbed it and going to check it out tomorrow. thanks :whistle:

#3
Tom H

Tom H

    InsanelyMac Protégé

  • Members
  • PipPip
  • 95 posts
  • Location:Silicon Valley, California
Updated, please try it out!

#4
myzar

myzar

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 718 posts
it would be great if you could fix the bug when only a ps2 mouse or a ps2 keyboard is plugged in, the driver dies after the msg

Jul 16 11:19:38 localhost kernel[0]: ApplePS2Controller: Timed out on mouse input stream.

its weird because the trick to issue a kextunload and reload works

#5
thomas2099

thomas2099

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 2 posts
thanks for continuing the work on the ps2 Driver, but i have an (old) Problem. After a few Seconds the System Starts. Mouse and Keyboard Stops working. reload is possible after a few minutes but stops working again after a few seconds. Sometimes it works for a few Minutes. I've found no Errors in Dmesg. I have a Acer Travelmate 290. I searched a lot in this forum but it seems to be nobody has fixed the problem. Yes i know i can use a USB Keyboard/Mouse. But on a notebook?

#6
cyclonefr

cyclonefr

    InsanelyMacaholic

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 2,751 posts
  • Gender:Male
  • Location:Paris, France
wow it's huge! i have a Sony VAIO were the mousepad has never worked, i'll try if i can have osx on it :censored2:

#7
Dr. Hurt

Dr. Hurt

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,493 posts
  • Gender:Male
  • Location:Cairo, Egypt and NYC, USA
  • Interests:Wandering around on the internet!! Politics, Sci/Tech, Medicine.
I have a usb keyboard and ps/2 mouse.
I used your kext, loaded it and rebooted but the mouse still doesn't work.
What should I do?
I also have a usb mouse which works but I like my old trusty mouse.

#8
TrevG

TrevG

    InsanelyMac Protégé

  • Members
  • Pip
  • 6 posts
sorry I'm a n00b to OS X and macs can someone tell me how to install this package and how to remove it if I need to. Thanks for the help.

#9
Dr. Hurt

Dr. Hurt

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,493 posts
  • Gender:Male
  • Location:Cairo, Egypt and NYC, USA
  • Interests:Wandering around on the internet!! Politics, Sci/Tech, Medicine.

sorry I'm a n00b to OS X and macs can someone tell me how to install this package and how to remove it if I need to. Thanks for the help.


It's OK.
first put the kext file in system>library>extensions folder.
Open the terminal (application>utilities>terminal>
type "sudo -s" and then press enter
type chown -R root:wheel /system/library/extensions/appleps2controller.kext
type chmod -R 755 /System/Library/Extensions/appleps2controller.kext
type rm -r /System/Library/Extensions.kextcache
type rm -r /System/Library/Extensions.mkext
type exit
Restart osx and hopefully it will work.

#10
jacksont123

jacksont123

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 117 posts
Thanks to:
Tom H for the driver [will test it later]
Ahmed Khaled for the instructions

Good work.

#11
TrevG

TrevG

    InsanelyMac Protégé

  • Members
  • Pip
  • 6 posts
thanks i will give that a try A.S.A.P.

#12
myzar

myzar

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 718 posts

I have a usb keyboard and ps/2 mouse.
I used your kext, loaded it and rebooted but the mouse still doesn't work.
What should I do?
I also have a usb mouse which works but I like my old trusty mouse.


wait and hope he's able to fix the problem, it's not supposed to be fixed yet

#13
TrevG

TrevG

    InsanelyMac Protégé

  • Members
  • Pip
  • 6 posts
Tom H the driver works perfectly. thx

#14
quixos

quixos

    InsanelyMac Legend

  • Retired
  • 943 posts
finally used your drivers, (i'm having a painfully extended 4th of July experience, so was unable to until now). thank you, the plugins work great. :P

#15
truespin411

truespin411

    InsanelyMac Protégé

  • Members
  • Pip
  • 8 posts
This got my laptop nearly functional. No other hacked drivers worked at all. Thanks Tom.

#16
Tom H

Tom H

    InsanelyMac Protégé

  • Members
  • PipPip
  • 95 posts
  • Location:Silicon Valley, California

it would be great if you could fix the bug when only a ps2 mouse or a ps2 keyboard is plugged in

New version now supports PS/2 keyboard alone, this should be a big plus for laptop users. I haven't tested mouse without keyboard.

Key fix was turning off the conditional code for keyboard kernel debugging (kdb).

#17
truespin411

truespin411

    InsanelyMac Protégé

  • Members
  • Pip
  • 8 posts
Tom,

Is there a way to get my trackpad working (tapping is my primary concern) with your driver? Someone else wrote a driver (on this forum) that claims to get the trackpad fully functional, but my keyboard doesnt work when I use it (since it also uses PS2Controller.kext).

Thanks for the work so far.

#18
Tom H

Tom H

    InsanelyMac Protégé

  • Members
  • PipPip
  • 95 posts
  • Location:Silicon Valley, California

Is there a way to get my trackpad working (tapping is my primary concern) with your driver? Someone else wrote a driver (on this forum) that claims to get the trackpad fully functional, but my keyboard doesnt work when I use it (since it also uses PS2Controller.kext).

Actually, there are "4 kext's in 1", ApplePS2Controller.kext has a Plugins directory (within Contents). In there you'll find ApplePS2Trackpad.kext; replace it with the one you want. Then just delete the Extensions cache files and reboot. My changes were all in ApplePS2Controller.kext and ApplePS2Keyboard.kext (another plugin kext).

I read mixed reviews about the trackpad kext and was dubious about the source code. It only changes ALPS trackpad support, it apparently works well for some people - good luck.

#19
myzar

myzar

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 718 posts
HI, it still doesn't seem to work for me with a ps2 keyboard and an usb mouse without having the kextunload/load trick in the /etc/rc . I can see the first message timeout on ps2 stream and the keyboard is still alive, after 3/4 secs there's another timeout msg followed by a msg about failed to probe ps2/mouse and the keyboard is dead. I've noticed that with your new build i've the keyboard working while booting with -s so i can easily uncomment the line in rc and reboot to have the keyboard working again

#20
Tom H

Tom H

    InsanelyMac Protégé

  • Members
  • PipPip
  • 95 posts
  • Location:Silicon Valley, California

HI, it still doesn't seem to work for me with a ps2 keyboard and an usb mouse without having the kextunload/load trick in the /etc/rc . I can see the first message timeout on ps2 stream and the keyboard is still alive, after 3/4 secs there's another timeout msg followed by a msg about failed to probe ps2/mouse and the keyboard is dead. I've noticed that with your new build i've the keyboard working while booting with -s so i can easily uncomment the line in rc and reboot to have the keyboard working again

Bummer! I thought I'd solved this one finally. I use both PS/2 keyboard and mouse, and have disabled my /etc/rc.local - which is where I did the kextunload/kextload. I haven't seen anymore timeout IOLog's, just probe failed for missing mice.

My final goal is "hot plug" support, assuming you only have 0 or 1 keyboard and 0 or 1 mouse each plugged in the "correct" port.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy