Jump to content

OS X Driver for Sentelic Touchpad (e.g. MSI Wind)


nhand42
 Share

28 posts in this topic

Recommended Posts

UPDATE - now with corner-scroll

 

There's a new version with the corner-scroll feature enabled. It can't be turned off because I can't add features to the Trackpad preference pane. I personally don't like corner-scroll so I'm leaving the old driver there as well; choose the one you want.

 

--------

 

This is a port of the Linux Sentelic driver into the ApplePS2Controller.kext. The only functional change over the stock driver is filtering out touchpad-clicks. Only the physical buttons are recognised.

 

I've written it as an additional class under the ApplePS2Trackpad.kext plugin. When correctly loaded the driver appears in dmesg.

 

	$ sudo dmesg
ApplePS2Trackpad: Sentelic FSP 12.0.1

 

Under 10.5.6 the trackpad preference pane disappears, as does the mouse preference pane, so make sure you have tracking configured the way you like it before installing this driver.

 

To install simply unpack the driver, then install it into /System/Libraray/Extensions, and reboot.

 

	$ sudo rm -rf /System/Library/Extensions/ApplePS2Controller.kext
$ sudo mv ~/Downloads/System/Library/Extensions/ApplePS2Controller.kext /System/Library/Extensions/
$ sudo chmod -R 755 /System/Library/Extensions/ApplePS2Controller.kext
$ sudo chown -R root:wheel /System/Library/Extensions/ApplePS2Controller.kext

 

Tested on an MSI Wind U100. Works correctly after reboots and wake-from-sleep.

 

NB: the ApplePS2Mouse.kext plugin has been removed from my package because it was taking priority over the trackpad plugin. If anybody knows a better way to set priority, let me know.

 

UPDATE: Fixed the Trackpad Preference Pane.

 

CyberGreg said he could control the trackpad with 10.5.5 Keyboard preference pane. With a little fiddling I have achieved a similar result which enables the 10.5.6 Keyboard and Trackpad preference panes with the new Sentelic enabled driver.

 

First modify the 10.5.6 Trackpad preference pane to disable Apple's vendor ID check. Edit the Info.plist for the Trackpad.prefPane

 

$ sudo pico /System/Library/PreferencePanes/Trackpad.prefPane/Contents/Info.plist

 

And remove these lines

 

<key>VendorID</key>
<integer>1452</integer>

 

Save the file then reboot. Notice that the Trackpad preference pane does *not* yet appear in System Preferences. Next grab the 10.5.5 Keyboard preference pane from here:

 

http://www.mediafire.com/download.php?fxmezuyejmf

 

Install it using the standard technique but do *not* delete the 10.5.6 Keyboard preference pane

 

$ sudo mv /System/Library/PreferencePanes/Keyboard.prefPane /System/Library/PreferencePanes/Keyboard.prefPane.10.5.6
$ sudo chmod 000 /System/Library/PreferencePanes/Keyboard.prefPane.10.5.6
$ sudo mv ~/Downloads/Keyboard.prefPane /System/Library/PreferencePanes/
$ sudo chown -R root:wheel /System/Library/PreferencePanes/Keyboard.prefPane
$ sudo chmod -R 755 /System/Library/PreferencePanes/Keyboard.prefPane

 

Reboot. Now you should have both the 10.5.5 Keyboard pane and the 10.5.6 Trackpad pane. On my machine at least, using the 10.5.5 Keyboard pane to configure the trackpad causes System Preferences to crash. Now restore the 10.5.6 Keyboard pane.

 

$ sudo rm -rf /System/Library/PreferencePanes/Keyboard.prefPane
$ sudo mv /System/Library/PreferencePanes/Keyboard.prefPane.10.5.6 /System/Library/PreferencePanes/Keyboard.prefPane
$ sudo chmod 755 /System/Library/PreferencePanes/Keyboard.prefPane

 

Reboot. Now strangely although we have the same files as in the beginning, the Trackpad pane now appears in System Preferences. You can control Tracking Speed and Clicking from this pane. Also you have the 10.5.6 Keyboard pane so there's no loss of functionality.

 

It's a little bit of mucking about but it's a good result. Thanks CyberGreg.

ApplePS2Controller_WithSentelic_1.1.0.zip

ApplePS2Controller_WithSentelic_1.1.0_src.zip

ApplePS2Controller_WithSentelic_1.1.1_src.zip

ApplePS2Controller_WithSentelic_1.1.1.zip

Link to comment
Share on other sites

THANKS!

 

Works great, I have since disabled my touchpad pref because now my (10.5.5 I think) keyboard pref pane has a touchpad setting. The touchpad seems less jittery too.

 

:rolleyes:

 

MSI Wind 10.5.6 retail DVD install

 

BTW I use tap to click and the setting works fine. I see that the corner scrolling is disabled

Link to comment
Share on other sites

Thanks for the feedback. Do you want corner scrolling enabled? I expect it's this function in the Linux driver.

 

static int
fsp_onpad_vscr(struct psmouse *psmouse, int enable)

 

It would be fairly easy to add that to the kext. However it would have to be permanently enabled because I can't easily modify the Preference Pane.

Link to comment
Share on other sites

While I agree the corner scrolling is far from ideal, I did immediately find myself "missing" it.

 

Thanks for the info, I'm going to play with it a bit. I wish I could just install SideTrack and be done with it.

 

Many thanks again nhand42

 

Thanks for the feedback. Do you want corner scrolling enabled? I expect it's this function in the Linux driver.

 

static int
fsp_onpad_vscr(struct psmouse *psmouse, int enable)

 

It would be fairly easy to add that to the kext. However it would have to be permanently enabled because I can't easily modify the Preference Pane.

 

YES! I would love to try it out, then we'd have the most options available to this hardware. If you post it here, I'll grab it and test it out. (I'm watching this thread).

:P

Link to comment
Share on other sites

Thanks for the work. However, I installed it on my MSI Wind running a retail 10.5.6 MacOS X and it does not load.

I still have the horrible click-on-tab and nothing in the dmesg output.

 

This means one of two things

 

1. Permissions on /System/Library/Extensions/ApplePS2Controller.kext are wrong (must be 755 and root:wheel, for all files and subdirectories). Follow the instructions above to repair the permissions.

 

or

 

2. You have a second ApplePS2Controller.kext somewhere else on the computer that is being loaded before the Sentelic kext. Possibilities include /Extra/Extensions, a hidden partition (typically /dev/disk0s1), etc.

Link to comment
Share on other sites

2. You have a second ApplePS2Controller.kext somewhere else on the computer that is being loaded before the Sentelic kext. Possibilities include /Extra/Extensions, a hidden partition (typically /dev/disk0s1), etc.

 

Yes, this was it. Thanks, I didn't know that /Extra/Extensions was used for this as I started to install OSX on PC just a few days ago. I'm having a hard time collecting all the information from the different sources on kext, boot process...

 

And another big thanks for removing the click-on-tap. This the trackpad usable for me and I won't probably take the risk to switch it to a Synaptics now.

Link to comment
Share on other sites

Fantastic work -

I had just pulled down the ps2 kext code and the linux sourcforge project to hack on this for the weekend - beat me to the punch!

What led you to the roundabout method of activating the preference pane?

 

FWIW

From the info I can see, the tap to scroll areas are encoded in the touchpad controller and can only be enable/disabled. No slide scroll in HW. A more sophisticated driver could possible simulate that.

There is some hint of Sentelic having a multi-touch gesture capability in their later touch screen product, but I do not think the pad has this...

 

All in all, the ability to control the tracking speed and tap to click makes this pad acceptable.

Link to comment
Share on other sites

Thanks for working this out!

But there are alot of noobs out there inlcuding me.. That the above info appears quite complex and confusing. Especially when it comes to Terminal commands.

 

It would really help if some kind person could write a noob step by step walkthrough of this. Containing the following:

 

1. What you need

 

2. Numbered steps of what to do (example: Open Terminal> Type"xxxx"and hit enter>drag "zzzz" file to folder "y")

 

3. Numbered steps to undo

 

Screenshots would also be nice.

Link to comment
Share on other sites

1) install nhand42's kext file (using the kext helper application, don't reboot)

2) drag nhand42's preference pane file to /System/Library/PreferencePanes (don't reboot yet either)

3) launch /Applications/Utilities/DiskUtility, select "Macintosh HD" and click "Repair Permissions"

4) reboot

Link to comment
Share on other sites

nhand42 - THANK-YOU very much - frackin' sweet! working great!

Could you please explain to a mac noob how you got the scrolling to work. I followed the directions and seem to have everything working okay but no corner scrolling. I used the ApplePS2Controller_WithSentelic_1.1.0_src.zip file which I guess is the correct one but i did have trouble installing as per the instructions so I installed the kext with the kext helper. Has this caused a problem?

Any help would be appreciated.

Link to comment
Share on other sites

Could you please explain to a mac noob how you got the scrolling to work. I followed the directions and seem to have everything working okay but no corner scrolling. I used the ApplePS2Controller_WithSentelic_1.1.0_src.zip file which I guess is the correct one but i did have trouble installing as per the instructions so I installed the kext with the kext helper. Has this caused a problem?

Any help would be appreciated.

 

You want ApplePS2Controller_WithSentelic_1.1.1.zip for the kext with corner scrolling. Using kexthelper is fine.

Link to comment
Share on other sites

You want ApplePS2Controller_WithSentelic_1.1.1.zip for the kext with corner scrolling. Using kexthelper is fine.

 

I installed the 1.1.1 driver and the trackpad is much more stable/smooth, but cannot get corner scrolling to work. It's the upper and lower left corners of the trackpad, right? Is there an enable flag somewhere I missed? I am running 10.5.4 with no updates.

 

Thanks for the help!

Link to comment
Share on other sites

I installed the 1.1.1 driver and the trackpad is much more stable/smooth, but cannot get corner scrolling to work. It's the upper and lower left corners of the trackpad, right? Is there an enable flag somewhere I missed? I am running 10.5.4 with no updates.

 

It's the upper and lower right corners of the trackpad. There are no flags and 10.5.4 should be fine.

 

I personally don't like the corner scrolling; I find it very difficult to hit the correct regions. There's nothing that can be done about that because it's set in hardware.

Link to comment
Share on other sites

You want ApplePS2Controller_WithSentelic_1.1.1.zip for the kext with corner scrolling. Using kexthelper is fine.

 

Thank you! That has fixed my problem although it does seem a bit hit and miss at times to get the scrolling working. I have another problem in that I now have 2 trackpad settings in system properties, one in keyboard settings and one on its own but so far it doesn't appear to be causing any issues. Thanks for your hard work.

Link to comment
Share on other sites

Does anyone have there original unmodified appleps2controller.kext file for 10.5.4? I stupidly didn't install the one, but simply copied it over the original one. Now, no keyboard or mouse works, not even usb ones. Any help would be greatly appreciated.

 

Thanks

Link to comment
Share on other sites

  • 9 months later...
  • 2 months later...
  • 3 months later...
 Share

×
×
  • Create New...