InfiniteMac OSx86  
  #1  
Old 06-03-2009, 04:34 PM
milanca's Avatar
milanca milanca is offline
 
Join Date: Jan 2008
Location: Serbia and Montenegro
Posts: 326
Microsoft Mouse driver for non-MS mice

I was looking for more windows/linux like mouse movement under OSX and the closest solution i came up with was Microsoft Intelli mouse(explorer) with Microsoft IntelliPoint driver. I have Logitech MX400 Laser mouse and Logitech VX nano cordless. Logitech software allows me to map the buttons but the acceleration curve is still in OSX fashion. IntelliPoint driver completely replaces it with its own acceleration curve and the mouse movement is more in Windows-like manner.

Searching the net i found this post explaining how to use MS driver (IntelliPoint software can be downloaded from MS site) with non-MS mice.

http://groups.google.com/group/alpha...5ed909aa?pli=1

I have tested it with VX nano cordless mouse and A4Tech X7 mouse. I started to love my Hack again. Here is also a quick howto, with some more details, based on the original link, if you would like to use this driver for your mouse.

Open SystemProfiler, navigate to USB section:



My A4Tech mouse has product id: 0x000e and vendor id:0x09da. You can use osx calculator (apple+3 to switch) to convert hex to dec values. Converted product id is 14 and vendor id is 2522.

Install Microsoft IntelliPoint software (can be downloaded from MS site) and after restart navigate to:

/System/Library/Extensions/MicrosoftMouse.kext/Contents/Plugins/MicrosoftMouseUSB.kext/

If you open Package Contents you'll have Info.plist here which you can edit with PlistEditor, TextMate, etc.

Add this section before first <key>:
Code:
		<key>A4Tech</key> 
                <dict> 
                        <key>CFBundleIdentifier</key> 
                        <string>com.microsoft.driver.MicrosoftMouseUSB</string> 
                        <key>HIDPointerAccelerationTable</key> 
                        <data> 
                        AACAAFVTQioABwAAAAAAAQABAAAAAQAAAAAgAAAQAABxOwAATOMA 
                        BE7FAA03BAAFRAAAFIAAAAcsAAAj4AAACQAAADSwAAAK2AAARfAA 
                        AA0IAABXkAAAD2AAAGkAAAASEAAAeoAAABUAAACJAAAAF8AAAJEA 
                        AAAawAAAlrAAAB2QAACZsAAAIKAAAJswAAAj8AAAnDAAACewAACc 
                        MAAAAIAAABIAAHE7AABWfwAESgAADqAAAAY6AAAfQAAABygAACkA 
                        AAAI2AAAPGAAAAm4AABHQAAACrAAAFMwAAALwAAAYDAAAAzAAABs 
                        IAAADuAAAIQgAAARYAAAnSAAABQAAAC0AAAAFsAAAMcAAAAZoAAA 
                        1AAAABzgAADbAAAAIIAAAOAAAAAkQAAA4wAAACegAADjAAAAALAA 
                        ABQAAHE7AABhTgAESgAAD2AAAAUyAAAXYAAABjIAACCgAAAHLAAA 
                        LCAAAAgIAAA3oAAACOQAAENAAAAJwAAAUIAAAAqgAABfIgAAC5AA 
                        AG1wAAAMcAAAewAAAA6AAACYoAAAEMAAALYAAAATQAAA0gAAABZg 
                        AADpAAAAGiAAAPoAAAAdoAABAwAAACEgAAEHAAAAJIAAAQoAAAAn 
                        oAABDAAAAADgAAARAABxOwAAbXcABBoAABHwAAAFGgAAG/AAAAXw 
                        AAAmYAAABvwAADQAAAAITAAAT+AAAAlsAABt4AAACngAAI3AAAAL 
                        sAAAtkAAAA1QAADZgAAAEQAAAPeAAAAVwAABEQAAABlgAAEgAAAA 
                        HUAAASgAAAAhAAABLgAAACSAAAEyAAAAJ4AAATUAAAAAUAAAEgAA 
                        cTsAAEuwAARMAAAOAAAABUAAABVQAAAHJAAAJiAAAAi0AAA1wAAA 
                        CpAAAEmAAAAL6AAAVoAAAA0gAABiAAAADhgAAGrQAAAPGAAAdAAA 
                        ABGQAACHgAAAFFAAAJoAAAAXYAAAqYAAABpgAAC0AAAAHVAAALkA 
                        AAAg0AAAvIAAACQgAAC9gAAAJ7AAAL6AAAABAAAAEAAAcTsAAFZ/ 
                        AAO4AAASoAAABSAAACVAAAAGCAAAN4AAAAbwAABfAAAAB/AAAIoA 
                        AAAJKAAAyyAAAArwAAD3gAAADSAAARyAAAAQAAABOAAAABRAAAFK 
                        AAAAGQAAAVMAAAAc0AABVwAAACDgAAFbgAAAJCAAAV2AAAAnoAAB 
                        XgAAAFJwAAAJlNEAWTAAAAoSaQBf8AAACpAAAGawAAAA4AAAHAAB 
                        GFUAATAAAAGyKAAC8AAAAlNpAAagAAADb0oAENAAAAOteAAUWAAA 
                        A+ulABfgAAAEKdMAG2gAAARoAAAe8AAABKIBACKYAAAE2VYAJiAA 
                        AAUUqwApaAAABVAAACywAAAFgAEAMcgAAAW1VgA2QAAABeqrADq4 
                        AAAGIAAAPzAAAAZiAABD3AAABp6rAEh4AAAG21YATRQAAAcYAABR 
                        sAAAB3oBAFbcAAAH2VYAW/gAAAg4qwBhFAAACJgAAGYwAAAJFgEA 
                        bAAAAAmRVgBx0AAACgyrAHegAAAKiAAAfXAAAAEAAAATAAEYVQAB 
                        MAAAAbIoAAMQAAACU2kABxAAAAMvSgARgAAAA6z7AByIAAAEOqsA 
                        KOAAAASBVgAwiAAABMgAADgwAAAFDVYAQJgAAAVQAABI8AAABcar 
                        AFKwAAAGOAAAXHAAAAbxVgBnwAAAB0yrAG1YAAAHqAAAcvAAAAhM 
                        AAB5BAAACPAAAH8YAAAJlAAAhSwAAAo4AACLQAA= 
                        </data> 
                        <key>IOClass</key> 
                        <string>MicrosoftMouseUSB</string> 
                        <key>IOProviderClass</key> 
                        <string>IOUSBInterface</string> 
                        <key>bConfigurationValue</key> 
                        <integer>1</integer> 
                        <key>bInterfaceNumber</key> 
                        <integer>0</integer> 
                        <key>idProduct</key> 
                        <integer>14</integer> 
                        <key>idVendor</key> 
                        <integer>2522</integer>
			<key>bInterfaceClass</key> 
			<integer>3</integer> 
			<key>bInterfaceProtocol</key> 
			<integer>2</integer> 
			<key>bInterfaceSubClass</key> 
			<integer>1</integer>
                </dict>
Change key name and Product/Vendor ids with your converted values. If you use TextMate you can save the file at this point.
Launch terminal and become 'su' so we can fix permissions/ownership/extensions cache

Code:
sudo -s
cd /System/Library/Extensions
chmod -R 755 MicrosoftMouse.kext
chown -R root:wheel MicrosoftMouse.kext
cd ..
rm -rf Extensions.*
kextcache -k Extensions/
reboot
After restarting you can use this driver. In system preferences->microsoft mouse->pointer speed you can switch from OSX mouse tracking to IntelliPoint pointer speed and adjust it to your needs. Check if the driver is properly loaded by clicking on mouse pointer icon (top right corner next to the '?' icon). Under Mouse Info you should have something like this:



Regards

Reply With Quote
  #2  
Old 06-03-2009, 05:28 PM
elk elk is offline
Cheetah
 
Join Date: May 2009
Posts: 1
Nice Idea and a very good tutorial.
But I have a question: Could I use this for trackpads (in my case a synaptic) too? I love OSX, but the cursor-acceleration is crap

Best regards,
elk
Reply With Quote
  #3  
Old 09-25-2009, 02:25 AM
broker220981 broker220981 is offline
Cheetah
 
Join Date: Sep 2009
Posts: 1
Still not the same

Tried that, still not the same.
Driver recognized my mouse, but it still feels wrong - like if mac driver is actually active, but Microsoft one sits on top of it and tries recalculate the movement.
I have windows machine on the same table with exact the same mouse. The difference feels especially when doing lots of short fast movements (shaking).
Reply With Quote
  #4  
Old 12-16-2009, 09:02 AM
NghiaDev's Avatar
NghiaDev NghiaDev is offline
Jaguar
 
Join Date: Oct 2009
Posts: 33
Well done! Really good guide!
I followed the instructions and everything works fine.
In my opinion the mouse and font rendering from Microsoft Windows are better than Mac OS X's way.
It's really difficult to control the mouse that doesn't move at the same speed ( Mac OS X )
Snow does not offer this option for users ( bad )

10.6.2 Pcj 64-bit kernel | Mobo Asus P5LD2-VM Revision 1.03 945G/ICH7 Graphic Intel GMA950 | CPU Pentium 4 630 3 GHz HT
Sleep never wake up, Quicktime 64-bit crashed

10.6.2 Vanilla | Mobo GigaByte GA-EP43T-UD3L | CPU C2D E7500 | GPU GigaByte GV-N240D3-1GI Nvidia GT240 ( Full QE/CI )

Last edited by NghiaDev; 12-16-2009 at 09:27 AM.
Reply With Quote
  #5  
Old 12-17-2009, 12:46 AM
milanca's Avatar
milanca milanca is offline
 
Join Date: Jan 2008
Location: Serbia and Montenegro
Posts: 326
@NghiaDev, thanks.

@broker220981, yes i guess you're right, mac os x native driver is still active in a way and MS driver is recalculating the movement in its way. Far from perfect solution but a bit better, or at least it seems to me.

What i wanted, and actually tried, is to re-compile IOHIDFamily back in 10.5.x. Mouse movement and accel. curve is there and the code is very old; I compared it with tiger's kext (part with mouse movement and acc.) and its the same one. I wanted to disable acceleration at all but the kext is missing zillion files to compile properly. So i gave up setting up its build environment. When i have some more free time i will try to set it up in Snow Leopard and try to patch it again. Just hope i won't give up that soon.

Reply With Quote
  #6  
Old 09-15-2011, 03:29 PM
Symbiosis Symbiosis is offline
Cheetah
 
Join Date: Sep 2011
Posts: 1
I have a MacBookPro with 10.7 Lion and Logitech mouse. Made all by tutorial, it is very simple... But Intellimouse does not recognise my mouse. Show: No microsoft mouse was found. Why it happens ? Please, Help me ! (((
Reply With Quote
  #7  
Old 09-16-2011, 11:38 PM
Andru Andru is offline
Cheetah
 
Join Date: Jul 2011
Posts: 1
Quote:
Originally Posted by Symbiosis View Post
But Intellimouse does not recognise my mouse. Show: No microsoft mouse was found. Why it happens ? Please, Help me ! (((
Hi, Symbiosis. New versions of Microsoft drivers need to be a binary patch.
Navigate to MicrosoftMouse.kext/Contents/MacOS and open MicrosoftMouse file in any Hex Editor. Find the line 077D and replace it on your Product ID. Save and exit from the Hex Editor. Then go to MicrosoftMouse.kext/Contents/Plugins/MicrosoftMouseUSB.kext/Contents and open Info.plist. Find there <key>M077D</key> and change Product/Vendor IDs below.
Good luck.
Reply With Quote
  #8  
Old 07-28-2012, 03:54 AM
NghiaDev's Avatar
NghiaDev NghiaDev is offline
Jaguar
 
Join Date: Oct 2009
Posts: 33
@Andru: Thanks



10.6.2 Pcj 64-bit kernel | Mobo Asus P5LD2-VM Revision 1.03 945G/ICH7 Graphic Intel GMA950 | CPU Pentium 4 630 3 GHz HT
Sleep never wake up, Quicktime 64-bit crashed

10.6.2 Vanilla | Mobo GigaByte GA-EP43T-UD3L | CPU C2D E7500 | GPU GigaByte GV-N240D3-1GI Nvidia GT240 ( Full QE/CI )
Reply With Quote