Author Topic: Registry settings for low quality trackball  (Read 9310 times)

0 Members and 1 Guest are viewing this topic.

Offline nomoore

  • Thread Starter
  • Posts: 1
  • Location: Austin TX
Registry settings for low quality trackball
« on: Thu, 30 January 2020, 16:14:21 »
A couple of months ago I pulled a cheap old trackball (Adesso iMouse T1) out of the closet at work to try out. I had never used a trackball for any length of time but I wanted my wrist strain/pain to go away. After getting used to it I finally got fed up with the low precision caused by junky bearings. The symptoms were that I needed to exert too much rolling force on the ball to get it started moving so when it finally did move it would move too far. Everything was clean but the ball seemed to want to "stick" to the contact points/bearings. This caused me to have poor precision. So I decided to finally research what settings in Win10 could be changed to better my experience.  Here's what I came up with:

First, I tried tweaking the mouse settings in the control panel. I didn't find a satisfactory setting for pointer speed but I did find a check box for "Enhanced pointer precision". I checked this box and it did help some. I would suggest trying this before diving into the registry. It still wasn't quite smooth for me though so I started researching registry hacks for pointer speed.

For anyone not familiar with where these settings are contained in the registry they are values located in this registry key:

    "HKCU\Control Panel\Mouse"

Whenever you make a change to these reg settings you need to log out and log back in to see the effect of your changes.

First I turned off acceleration by setting the following:

    "MouseSpeed" = 0

This allowed me to play with the cursor speed by changing the "MouseSensitivity" key. Research told me that a setting of 10 would give me a 1:1 mapping between mouse movement and pixels. In other words if the mouse sends a one unit change the cursor moves one pixel. I also learned that a setting of 5 would give me a 2:1 mapping. If the mouse sent 2 units of change the cursor would move 1 pixel. Any number other number in between 1 and 10 had the potential to add erratic behavior. Since my ball would sometimes move more than I intended I decided to change to a 2:1 mapping. I changed the setting to 5:

    "MouseSensitivity" = 5

Now I could move my cursor with much better precision but it was painfully slow to get across the screen. So it was time to add in acceleration. Windows has up to 2 levels of acceleration and you can set the movement threshold for each level. At the first level it multiplies the speed (the "MouseSensitivity" value) by 2x. At the second level it multiplies it by 4x. Since the speed was now painfully slow I wanted the first level of acceleration to activate quickly. With the first level of acceleration activated the "MouseSensitivity" value would be multipled by 2x. This would bring our 5 back up to a 10 which is a 1:1 mapping. I set the "MouseSpeed" setting to "1" so I could play with only the first level of acceleration without the second level interfering.

    "MouseSpeed" = 1

The threshold setting for the first level of acceleration is called "MouseThreshold1". A lower number means the acceleration activates quicker. I played around with it, logging out and back in after each change, until I came up with a setting I liked. I finally settled on a setting of "3".

    "MouseThreshold1" = 3

Now it felt like it was back to normal speed without acceleration. But it had the extra precision when I was moving the ball slow. These settings were ok and I could live with it if I had to. But I use dual monitors and I really wanted more speed. So now it was time to add in the second level of acceleration to get a 4x multiplier. I now changed the "MouseSpeed" setting once again, this time to a "2".

    "MouseSpeed" = 2

The threshold setting for the second level of acceleration is relative to the same point as "MouseThreshold1". Thus this number needs to be higher than the "MouseThreshold1" setting, otherwise it will activate before that setting. I started out with a number quite a bit above "MouseThreshold1". I slowly lowered it (again logging out and in after each change) until I got it where it felt good to me. My final number for "MouseThreshold2" is "6".

    "MouseThreshold2" = 6

The mouse still feels a little slow to me. I wish I could tweak the multipliers but I haven't found a way yet. This will work for me though and it is far better than the imprecise default choices.

Here's a list of my final settings:

    "MouseSensitivity" = 5
    "MouseSpeed" = 2
    "MouseThreshold1" = 3
    "MouseThreshold2" = 6

I hope this helps someone!
- Nicholas Moore