View Single Post
Old 09-17-2007, 09:55 PM   #6
GenghisTron
AKA LittleAndroidMan
D&A Member
Beta Tester
 
GenghisTron's Avatar
 
Join Date: Sep 2007
Location: Dystopia
Class/Position: Demo/Medic
Gametype: CTF
Affiliations: [TALOS] [SR]
Posts Rated Helpful 11 Times
Advanced Optimization

Table of Contents
Advanced Optimization
Warning some tweaks may be risky!
2.1 - Measure mouse report rate.
2.2 - Overclock your USB port.
2.3 - Remove extra weight from MX500/MX510.
2.4 - Update mouse firmware.
2.5 - Advanced Mouseware control panel.
2.6 - Maximize monitor refresh rate.
2.7 - Boost PS/2 port performance.
2.8 - Quick mouse sensitivity switch binding.
2.9 - Reducing mouse lag or delay.
2.10 - Finding the PERFECT sensitivity.

2.1 - Measure mouse report rate.

It is nice to know what your mouse is currently capable of reporting at in windows before you start overclocking. The mouse rate checker is very easy to use, there is nothing to install. When you run the program and move your mouse in fast sweeping circles and it figures out your average mouse rate. This is how many times per second your mouse is updating in windows. The higher the better. A higher mouse rate means smoother cursor movement, and less latency. (the time between clicking or moving and your computer getting the instruction.) Here is a formula for mouse latency:
1000 / (average mouse rate in hz) = (average mouse latency in ms)
Lastly, some newer mice automatically work at an increased USB mouse rate, such as 500hz with the Logitech G3, or 1000hz on the Microsoft Habu and you can ensure those claims with this tool.

You can download it,
here: http://hosted.filefront.com/antigen07
here: http://tscherwitschke.de/download/mouserate-s.zip
and
here: http://www.truecarnage.com/downloads...&download_id=4


USB default is 125hz and 8ms.
My MX510 Plugged into USB.

2.2 - Overclock your USB port.
Can be risky and you need to be comfortable editing system files to perform this

Skip this section if your mouse reported well above 400hz by default in section 2.1.

One tricks that was tucked away up some sleeves until recently was how to change the USB polling rate to faster than the Windows default of 125hz. For all intents and purposes the default 125hz polling rate has a 8ms built in response time (lag) that cannot be overcome without changing the usbport.sys file. If you change the polling rate to 250hz your mouse response time drops to 4ms. At 500hz it drops to 2ms and 1000HZ it drops to 1ms. This is an obvious advantage in a gaming environment. Some Logitech and Microsoft mice also have a huge performance boost when you overclock the mouse port, because of an interface limit related to the 8-bit data bus. Specifically they are: Logitech's MX300, MX500 & MX510 and Microsoft's WMO, IE3.0 & Laser 6000. My recommendation is to set the USB rate to 500Hz for these mice. However increasing the reporting rate of any mouse will benefit from smoother tracking and faster response, however not all mice will dramatically reduce negative acceleration and improve perfect control like these do.

There are things to consider before changing anything in your system. First of all, you have probably been using the standard 125hz for quite awhile. You are used to it. You have learned to compensate for the delay however minute it is and if you change the polling rate of your system there will be an adjustment period. At first it may seem awkward but in my experience the change made the tracking in my mouse feel noticeably smoother. Turns were more natural and fluid. I have also heard some players did not like the change and some couldn't tell the difference. Your mileage may vary.

Also, not all mice are created equal. There should be no harm to your system or mouse if you attempt to change your system to a polling rate that the mouse does not support. There should be no system hangs or glitches if you perform the tweak correctly. However, all mice have relative limits and just because you set a mouse to 500hz does not mean it will report at that speed. Furthermore wireless mice cannot be overclocked since their limitation is not in the USB interface but in the wireless transmit speed so don't try. Raising USB report rate increases CPU utilization slightly, if your computer is very old you may notice a small FPS drop, use a slower setting.

Read or print my instructions and the readme files before starting! You won't have internet connectivity while in Safemode.
  1. The first thing you will want to do is download a mouse rate checking program, and see what your average mouse rate is using the USB interface. So you can compare to see if you have improved it.
  2. Now if you have 32-bit Windows XP you can download the USB Mouserate Switcher below and extract it to your desktop. If you have 64-bit Windows XP you will have to do it a different way which I will cover after 32-bit Windows
    You can download it,
    here: http://hosted.filefront.com/antigen07
    here: http://www.softpedia.com/get/Tweak/S...switcher.shtml
    and
    here: http://www.majorgeeks.com/USB_Mouser...her_d4469.html
  3. Reboot your computer and before Windows begins to load rapidly press F8 on your keyboard to get a startup selection screen. If your computer loaded back up to regular windows try again and make sure you are not using a USB keyboard, either use a PS/2 adapter or turn on something called “USB Legacy Device Support” in your system BIOS. Finally if you still can't boot into safe mode you may just have to use MSConfig. Go Start>Run type “msconfig” without quotes, click the 'BOOT.ini' tab, just check “SAFEBOOT” and click Okay and say 'Yes restart my computer'.
  4. If you get the the windows startup diagnostic screen use the arrow keys to select safemode, make sure to sign into an account with administrative privileges and click yes when it tells you Safemode is for diagnostic purposes.
  5. Make a backup of your C:\Windows\system32\drivers\usbport.sys file!! You can rename it something like usbport.sys.old or usbport.sys.bak and just leave it in the folder. If you ever need to revert back to the old settings you can delete the patched files and rename your backup to usbport.sys.
  6. After backing up that file and while still in safemode, run the usbmrs11.exe file and follow the instructions. I suggest you first try changing your USB polling rate from 125hz to 250hz. This change alone reduces mouse latency to 4ms. You can go higher later.
  7. Now install the patch, then you will have to restart your computer for it to take effect, boot into safe mode again in case you need to revert back to the previous setting or want to keep pushing the port higher. To pick a setting above 250hz say 'no' to the prompt of setting it to 250hz, and then say 'yes' to the prompt of setting it to 500hz.
  8. When your computer loads into safemode, run the 'Mouserate Checker' to see if the change has taken effect. If it did not, get out of safemode and do a good search for “USB port overclocking” or “USB Polling Rate” in Google you might find some more help. Make sure you followed all the instructions properly.
  9. Repeat steps 6 through 8 until you've hit and tested the speed you want to stay at, I don't really recommend 1000hz since it's overkill and most mice can't obtain that speed. Best to pick a speed your mouse handles. If you used MSConfig to make your computer boot into safe mode, run msconfig again and then just click the circle by “Use Original BOOT.ini” and restart and you will have your computer back.

Here are some guidelines for knowing when you've overclocked far enough. First off, I don't recommend you use 1000hz it is twice the stress on your USB components for only a 1ms improvement in latency (vs 500hz). My G5 can be overclocked to 1000hz, but actually only averages at 620hz, which I can't tell the difference from 500hz, so I keep it on default. You want to raise your average mouserate by overclocking, so if you try 250hz and your average hz increases, and then try 500hz and it doesn't increase much, you've probably hit the limit of your device and should stick with 250hz.


Furthermore, you want the update rate to be stable, that is to say, does not constantly vary wildly between different values when you are moving the mouse quickly at speed in the box. If you overclock you mouse and you get a series of update rates in the box like 125,250,125,250,... it means your mouse does not like it's new settings. Not only that, this may make you play worse, because the response time on the mouse is not being consistent.


So just remember when you overclock:
  1. You want to see a real improvement in your average mouserate, not just setting it as high as possible if you are only going to average at 133hz for example.
  2. You want the polling rate to be very constant or close to rock solid, it it's flipping between different rates every other polling or once every 3 pollings that is not good for the mouse, and not good for your gaming consistency. See my pictures for illustration of this tip.
  3. Remember every USB component in your system is also connected at this speed, if you set your polling rates too high your mouse may do fine and pass the first two tips, but your USB sound card might start crackling or your printer might not print, be safe rather than sorry is the rule here.
(For example after several months of 500hz, my Steelsound 5Hv2 USB soundcard began to crackle from time to time. I am not sure if it would have started to do this anyways because it was a cheapy 15 dollar sound card, but it's worth noting. Just don't let this stop you from overclocking at all, because more than likely you wont have any problems.)

Okay, now if you have 64-bit windows and really want to do this, it will take a bit more skill and you have to thank me greatly for hosting the required .sys files. It took me about 3 hours of searching the internet just to find someone who had manually patched and would give me the unlocked usbport.sys drivers for 64-bit windows.
  1. Same as 32-bit step 1. Test your Mouserate.
  2. Download the x64 Mouserate Switcher file from my ftp, this is the only place you can get this on the internet as far as I know. You can download it here: http://hosted.filefront.com/antigen07
  3. Same as 32-bit step 2. Boot into Safe Mode.
  4. Once you are in safemode make a backup of your usbport.sys you can find it in this folder:
    C:\Windows\system32\drivers\usbport.sys
  5. Extract the 64-bit mouse rate folder you will see several more folders inside, named things like 1830_usbport.sys_250hz_4ms
    Inside each folder there is a modded usbport.sys file, select the rate you would like to overclock to and copy that usbport.sys
  6. Head to your 'C\Windows\system32\drivers\' folder and paste your usbport.sys into there, don't overwrite your old one, just rename the backup one to 'usbport.sys.bak'. Also don't delete anything else in this folder or your computer will be broken very quickly.
  7. Restart your computer into safemode again and use Mouserate Checker to see if your setting has taken effect.
  8. Repeat steps 5 through 7 except now it's okay to overwrite the modified usbport.sys since you're replacing patched versions and not the original. Follow my tips above while you look for a stable setting that is good for your mouse (and other USB devices!).
  9. Reboot into normal Windows XP and enjoy your new mouse.
2.3 - Remove extra weight from MX500/MX510.
Be careful with this tweak and work over a flat table or white sheet of paper so you don't lose any parts that could fall out.

Many mice come from the factory with weights inside them to make the mouse feel more substantial and help it stay on the mouse pad better. If you feel your mouse to be heavier than you like you can remove the ballast. This may not make you play better by being able to move the mouse quicker, but this is instead mostly a personal preference. The weight of your hand is far greater than the weight of your mouse, so the amount it's mass hinders your movement is probably negligible.

Although I'll just quickly cover the MX5x0 mice there may be other mice with removable weights inside. However don't take apart a wireless mouse looking for weight, it's the batteries inside adding weight. Also don't take apart a mouse that has it's mouse skates intentionally set up to block the screwdriver holes, that's a sign there is probably nothing inside you can service. The MX518, along with many other “Gaming” purpose mice have no weights.
  1. Unplug your mouse from your computer's USB port, or turn off your PC off and then unplug from a PS/2 port.
  2. Flip it over and look for the three screw holes on the bottom, they are covered by the mouse's stickers. Remember their locations and get a screwdriver. These steps may be a lot different if you are trying with a different mouse than the MX5x0, but you will get the idea.
  3. Poke holes and use the screwdriver to loosen each screw. The front two screws will tear some of the sticker at the front of the mouse, just make sure your P/N is not ruined because if you ever have to make warranty claims they'll ask for that. The rear screw will probably not want to come out because the sticker might block it from leaving the shaft, use a magnet to pull it out, or just pinch the sticker away so the screw can fall out.
  4. Once you've got all 3 screws removed, start firmly but gently prying the mouse starting at the front and working to the rear, the back will pop and the two halves will separate when you get it. TAKE YOUR TIME!! If you force the mouse open small parts that make the scroll wheel work could go flying, try hard to keep the scroll wheel together as you open it.
  5. The weight is located inside the upper section of the mouse it's held in with a screw, simply unscrew it and keep the weight and screw someplace just in case you want to go back to the heavier setting.
  6. Reassemble the mouse making sure the sticker in front is held down by the two screws so it does not drag and interfere with gaming. If your sticker is causes friction now, trim it back, but do not wreck you P/N unless you've wrote it down somewhere you aren't going to lose.
  7. You are done.
If you're brave and try this with a mouse other than an MX500 or MX510 please post what mouse you used that had a weight, what you did and how to do it. So then other people with the same mouse you have can also try changing the weight of their mouse.

2.4 - Update mouse firmware.

Some new high end mice come with flash memory inside, which can be manually updated to improve the performance of the mouse on various surfaces and fix bugs. The firmware is not a driver, but you sometimes need to have the driver installed before you can update it. Firmware is software that is inside your mouse that controls how it works. If you update the firmware on your mouse, you'll still be updated even if you bring your mouse to a different computer, which is a good thing. But it also means there is no way to reverse what you have done either. So when you update firmware on a mouse make sure to follow the instructions, and do not shutdown your PC or unplug the mouse while the update is happening or you may have a new paperweight. Mice that I know have an update are the Copperhead, Deathadder, G5/G3 and Habu.

You can download the latest firmware from your manufacturer's support website. If you need have the driver installed to update the firmware make a system restore point, install your mouse driver, flash the firmware onto the mouse, restore your computer back to before you installed the driver. That way you'll get the updated mouse without the added hassle of a driver. For mice that can store custom profiles inside them like the Razer DeathAdder you can briefly install the driver to add new custom profiles you want like say 1800dpi and 1000hz. Then restore back to before installing the driver and the button on the bottom of the mouse will still be able to switch between custom profiles.

Look for your firmware update here:
Logitech Support: http://www.logitech.com/index.cfm/do...S/EN,CRID=1792
Razer Support: http://www.razersupport.com/

2.5 - Advanced Mouseware control panel.

If you are using 32-bit windows and can use the old Mouseware driver with a Logitech mouse you can access an advanced control panel that allows you to adjust game specific settings but most importantly tune the sensor in your optical mouse for speed or precision. You can download the Mouseware advanced control panel from Logitech's support site above.



This would be the only good reason to install the Mouseware driver, by default when you install the Mouseware driver on a Mouseware supported 800dpi Logitech mouse your mouse can run at 800dpi, but this is known to cause problems with these older generation mice and very fast mouse movements. With this control panel you can set your mouse sensor to 'Optimized for Speed' and this pretty much fixes the negative acceleration problem for low sensitivity players. For medium and high sensitivities the default setting of 'Optimize for Precision' is ideal.

NOTE: The Logitech MX300, MX310, MX500, MX510 are all “800dpi” mice technically, but they will not support that setting unless the driver is installed! Use the second formula from section 1.5 to figure out how much dpi you really NEED before deciding to install Mouseware or Setpoint. If the formula says that you need over 400dpi then I recommend installing the driver to enable 800dpi otherwise if you only need 400 or less then follow my general recommendation from section 1.9. If you need need 800dpi but move fast enough to experience negative acceleration at the optimize for "Precision" setting try overclocking your USB port to 500hz and see if it is cured.
GenghisTron is offline   Reply With Quote