You are not logged in.

#1 2005-09-08 15:52:05

TB2
Member
Registered: 2005-09-06
Posts: 25

Mouse speed

One thing is driving me insane about Linux. And X. How to hell is it possible to get the mousepointer move smooth? I don't get it, I can play around with those two slidebars and I get nothing like I want. I want the cursor to move pixel-per-pixe, without jumping around like hell, skipping bunch of pixels, and also want no acceleration. The curser just should go through a certain amount of pixel for a certain amount of milimeters moved on the table. And I dont get it, how this thing can work under windows, but not with Linux. I hate this acceleration, and pixel-jumping. I nearly cant hit the close-field in the upper right corner, cos my mouse just jumps over 5 pixels in one step if I move the mouse to fast, and when I move it slowly the pointer is nearly stopping. I hate it! tongue

How can I make my mouse doing what I want?

Offline

#2 2005-09-08 16:40:50

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: Mouse speed

TB2 wrote:

How can I make my mouse doing what I want?

That's going to depend entirely on what you're using as far as DEs go - you mentioned "little sliders" but that doesn't tell us much... there's "little sliders" in almost any DE.

Are you using KDE, Gnome, XFCE, fluxbox, what?

Offline

#3 2005-09-08 17:06:35

TB2
Member
Registered: 2005-09-06
Posts: 25

Re: Mouse speed

I'm using XFCE atm, but I had the same problems under Gentoo with Gnome .

Offline

#4 2005-09-08 17:45:36

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: Mouse speed

Maybe it's your mouse - is it a PS2 mouse?

try checking out the man page of "xset" - there's a mouse command there which I can't recall... I use it in my xinitrc

Offline

#5 2005-09-08 18:22:11

TB2
Member
Registered: 2005-09-06
Posts: 25

Re: Mouse speed

Yes it is a PS/2 Logitech Cordless MouseMan Wheel. (The Wheel doesn't work btw). But under Windows it works nice. I think there'0s something unusual for Windows users about the way the mouse movement is handled . I dont know. Anyway there are only options for "threshold" and "acceleration". In Windows there are options for "acceleration" and "speed", and it's the speed I need to be changed, as the acceleration should be zero, because the cursor should always move at the same speed, but not so slow, as if I turn acceleraition to zero, because it is the only way to "control" speed. Isn't there a plugin or something to emulate the speed-function? I can understand that in fact there is no speed-option, because the mouse always gives the same input, but how it is handled should be changed...

the xset main page is down, and the tool gives just the same option as the GUI-based program, acceleration and threshold.

Offline

#6 2005-09-08 19:03:58

Snowman
Developer/Forum Fellow
From: Montreal, Canada
Registered: 2004-08-20
Posts: 5,212

Offline

#7 2005-09-08 20:11:40

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: Mouse speed

"Acceleration" is not what you're thinking of... acceleration has to do with how much the speed is accelerated beyond the base speed...

Offline

#8 2005-09-08 20:42:34

TB2
Member
Registered: 2005-09-06
Posts: 25

Re: Mouse speed

Thanks for the mouse wheel link, I assumed, that it should work out of the box and didn't look there.

For the speed:

Acceleration defines how many times faster the cursor will move than the default speed, when the cursor moves more than threshold pixels in a short time. Acceleration can be a fraction, so if you want to slow down the mouse you can use 1/2, and if 3 is slightly too fast, but 2 is too slow, you can use 5/2. You effectively disable the threshold by setting it to 1, that way the cursor will always move the same speed. To get the default settings back, type xset m default. You can add the xset command to your ~/.xinitrc to get the desired mouse speed every time X starts.

Now, as I said, I want the cursor to move at the same speed all the time. So I put threshold to 1. Ok, it's nice, no more real acceleration. But now, by the option "acceleration", I can only tell, how many pixels it jumps at once. If I fill in 4, it jumps 4 pixels, if I put it to 1, it moves pixe-per-pixel, but way to slow.
I just want the cursor to move over ALL pixels! I think this handling is so lame, instead of resampling the input, so that the mouse moves as it should, this "speed" setting called "acceleration" doesn't change the actual speed at all. It just leaves out a cuple of pixels. sad
May it help if I changed some setting in the xorg? Like "Resolution" or "SampleRate"?

Offline

#9 2005-09-08 21:28:32

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: Mouse speed

http://www.x.org/X11R6.8.2/doc/mouse.4.html

Option "SampleRate" "integer"
    Sets the number of motion/button events the mouse sends per second. Setting this is only supported for some mice, including some Logitech mice and some PS/2 mice on some platforms. Default: whatever the mouse is already set to. 
Option "Resolution" "integer"
    Sets the resolution of the device in counts per inch. Setting this is only supported for some mice, including some PS/2 mice on some platforms. Default: whatever the mouse is already set to.

Offline

#10 2005-09-08 21:34:26

sh__
Member
Registered: 2005-07-19
Posts: 272

Re: Mouse speed

For kernel 2.6.12 or later, you can set a boot parameter "usbhid.mousepoll=N" where N is the mouse polling interval in milliseconds. If you have usbhid built as a module, the command is "modprobe usbhid mousepoll=N". More info here.

Offline

#11 2005-09-08 21:44:06

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: Mouse speed

sh__ wrote:

For kernel 2.6.12 or later, you can set a boot parameter "usbhid.mousepoll=N" where N is the mouse polling interval in milliseconds. If you have usbhid built as a module, the command is "modprobe usbhid mousepoll=N". More info here.

He's using a PS/2 mouse

Offline

#12 2005-09-08 21:54:12

sh__
Member
Registered: 2005-07-19
Posts: 272

Re: Mouse speed

phrakture wrote:

He's using a PS/2 mouse

Whoops. In that case, the relevant boot parameters are "psmouse.rate=nnn" and "psmouse.resolution=nnn". Not sure how these differ from the X settings, though.

Offline

#13 2005-10-28 14:22:18

DethKnight
Member
Registered: 2005-10-27
Posts: 6

Re: Mouse speed

I encountered mouse speed problems also right after the "noodle" update

first I thought it was nvidia related, but I was getting 7100fps in glxgears

so therefore it has to be mouse related

Arch was king of distros on my computer until the last pacman -Syu,
therefore I have gone to Zenwalk until this "noodle" smooths out a little

(I also use a Logitech "trackman" wheelmouse trackball wireless thru usb->ps/2 adapter)

so far arch runs it slowly and yoper refuses to see it, but every other distro I throw at it is fine

Offline

#14 2005-10-28 21:16:20

elasticdog
Member
From: Washington, USA
Registered: 2005-05-02
Posts: 995
Website

Re: Mouse speed

Adjusting the samplerate and resolution in my xorg.conf seemed to improve mine a bit.  It might take some more tweaking to get it to perform as smoothly as in Windows, but it is definitely better than it was.  With the Xorg upgrade a while back, which included evdev support, it now works properly with all the buttons as well.

(I'm using a Logitech MX500 with a usb->ps2 adapter on it for the KVM)

Offline

#15 2005-10-29 12:24:18

Mythoz
Member
Registered: 2004-04-25
Posts: 58

Re: Mouse speed

Windows has a tricky but nice acceleration curve with multiple thresholds. Xorg uses only one threshold or exponential acceleration. The topic about better mouse acceleration for Xorg recurs regularly but nothing really happened so far. Because I have to change often between Linux and Windows, I once even considered to port the Windows solution to Xorg. But never get so far, because of lack of time and laziness...    smile

For better mouse control in Xorg it's necessary to set the correct resolution in your xorg.conf. For USB mices you can switch between 400 and 800 DPI with tools like logitech_applet or lmctl. For example I have an local udev rule for mine mouse, which sets its resolution to 800 DPI:

# logitech applet / Logitech MX510
BUS="usb", SYSFS{idVendor}="046d", SYSFS{idProduct}="c01d", PROGRAM="/usr/bin/logitech_applet -s 800 --disable-cc"

For PS/2 you should use the kernel options like mentioned by sh__ before.

The next step is to tell Xorg which resolution your mouse is using by adding an option to the input device section in your xorg.conf:

Option      "Resolution"    "800"

If you set a deviant value, the mouse speed will be too fast or slow. Anyway some people use this setting to "tweak" their mouse speed, but I think it's just a wrong attempt.

Or you can omit the last step and like elasticdog said just use evdev. The evdev driver submits beside the amout of the movement additionally a timestemp for each event. With this information the Xorg driver can deduce the speed of your mouse movement and thus is resolution (DPI) idependent.

Offline

#16 2005-10-30 22:02:00

elasticdog
Member
From: Washington, USA
Registered: 2005-05-02
Posts: 995
Website

Re: Mouse speed

Awesomely informative post Mythoz!  Would you consider wikifying it for the community?  I know that the mouse sensitivity issue has come up quite a few times...

Offline

#17 2005-10-31 09:38:37

Mythoz
Member
Registered: 2004-04-25
Posts: 58

Re: Mouse speed

elasticdog wrote:

Would you consider wikifying it for the community?

Oh, I'm very lazy...  wink For a complete article one has to rewrite this in a user-friendly manner, search for more references and clarify some circumstance like "mouse speed". One must differentiate between physical mouse movement and the resulting mouse cursor motion. Besides that I  finally must get my diploma thesis done...  tongue

Offline

#18 2006-10-09 14:15:50

bud
Member
From: swe
Registered: 2006-07-12
Posts: 74

Re: Mouse speed

Just do:

xset m 0 0

done!

Sorry for bringing up kinda dead topic but its the answer to the problem here smile

EDIT: Also add this to grub:

# (0) Arch Linux
title  Arch Linux
root   (hd0,0)
kernel /vmlinuz26 root=/dev/hda7 ro usbhid.mousepoll=2
initrd /kernel26.img


Notice the bold area ^^

Last edited by bud (2007-06-08 20:23:55)


Hello, I am normal!

Offline

Board footer

Powered by FluxBB