Steam for Linux

Steam for Linux

aPollO Jan 20, 2014 @ 1:56am
Mouse delay and slow speed in games
Hey,

since i use steam on Linux Mint 16 i have some problems with the mouse movement. I have a delay between 0.5 - 3 sec. Sometimes the games runs slowly and not in realtime (not only fps).

My OS is Linux Mint 16 64bit. I have a i3 and a amd radeon hd 5430.

ii fglrx 2:13.101-0ubuntu3 amd64 Video driver for the AMD graphics accelerators

I have no idea how i can fix this problem.
< >
Showing 1-6 of 6 comments
phillippi2 Jan 24, 2014 @ 11:45pm 
Check your graphics settings. Usually if they're too high, they'll cause these problems. Also, you might want to try updating your graphics driver, if you haven't. Sometimes newer versions will help performance.
aPollO Feb 1, 2014 @ 7:02am 
I have the newest version of fglrx and the lowest graphic settings in all games :( nothing helps
What is your mouse? Does it work Ok outside Steam? Did you try another mouse? What games have troubles with mouse? Do they run Ok if you don't touch the mouse? "Sometimes the games run slowly" -- what games, what means "sometimes" and "not in realtime", is it irrespective to mouse? Run Steam in terminal, copy its output, paste it at pastebin.com and give here link to it. Also contents of /var/log/Xorg.0.log file. Shortly, more detailed info is needed.
Anyway, still looks like it's video-driver problem...
Last edited by Kranky K. Krackpot; Feb 1, 2014 @ 10:11am
Nabi Feb 1, 2014 @ 1:18pm 
i'm probably wrong but the fglrx driver that is on the default repos on linux mint/ubuntu is outdated, you may want to use the one from the amd site or xorg edgers
funkynutz Apr 22, 2014 @ 7:50am 
I'm probably a bit late to the party... I've just fixed it, might be able to help others do the same...

64 bit version of mint 16 has a known weird mouse input lag problem... Easily fixed (it's not as complicated as it looks, honest).

First you need to disable mouse acceleration in xinput:

Open terminal, type:

xinput list

You should get an output that looks something like this:

Yourname@machinename ~ $ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Corsair Corsair M65 Gaming Mouse id=9 [slave pointer (2)]
⎜ ↳ Corsair Corsair M65 Gaming Mouse id=11 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
(There'll be a bit more data here but it's pointer section we're interested in)

The following steps I did for 3 different ids (2,9 and 11, pretty sure I actually only needed to do it for 11 now but I was in a rush and couldn't be bothered figuring out which one at the time lol).

Using id 9 as an example, you then want to add:

xinput list-props 9

The default output should look something like:

Device 'Corsair Corsair M65 Gaming Mouse':
Device Enabled (141): 1
Coordinate Transformation Matrix (143): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (269): 0
Device Accel Constant Deceleration (270): 1.000000
Device Accel Adaptive Deceleration (271): 1.000000
Device Accel Velocity Scaling (272): 10.000000
Device Product ID (259): 6940, 6917
Device Node (260): "/dev/input/event18"
Evdev Axis Inversion (273): 0, 0
Evdev Axes Swap (275): 0
Axis Labels (276): "Rel X" (151), "Rel Y" (152), "Rel Horiz Wheel" (291)
Button Labels (277): "Button 0" (290), "Button Unknown" (262), "Button Unknown" (262), "Button Wheel Up" (147), "Button Wheel Down" (148), "Button Horiz Wheel Left" (149), "Button Horiz Wheel Right" (150)
Evdev Middle Button Emulation (278): 0
Evdev Middle Button Timeout (279): 50
Evdev Third Button Emulation (280): 0
Evdev Third Button Emulation Timeout (281): 1000
Evdev Third Button Emulation Button (282): 3
Evdev Third Button Emulation Threshold (283): 20
Evdev Wheel Emulation (284): 0
Evdev Wheel Emulation Axes (285): 0, 0, 4, 5
Evdev Wheel Emulation Inertia (286): 10
Evdev Wheel Emulation Timeout (287): 200
Evdev Wheel Emulation Button (288): 4
Evdev Drag Lock Buttons (289): 0

You want to change the Device Accel Profile (269) and Device Accel Constant (270)... To do this use:

sudo xinput set-prop 9 269 -1 sudo xinput set-prop 9 270 2

Replace 9 with your device id, replace 269/270 with the parameter id if different, -1/2 is the attribute). These changes are not permanent and will need to be reapplied after reboot. You can set them as a script to run at boot if you want it to be permanent.

Second you need to disable the touchpad option in mouse settings (menu>prefs>mouse... untick it).

And finally you need to set mouse polling rate to 1000Hz (if your mouse supports it that high as most modern gaming mice do, try 500/250/125 etc if not):

sudo gedit /etc/modules

Add the lines:

-r usbhid usbhid mousepoll=1

Different poll rate values you could use here:

1000hz = 1
500hz = 2
250hz =4
125hz=8
100hz = 10

So for a gaming mouse use 1, for an old mouse you might have to use 10.

Save and close.

Hope this helps someone :)
Last edited by funkynutz; Apr 22, 2014 @ 8:03am
Podakov Jul 22, 2019 @ 4:30am 
Originally posted by FunkynutZ:
I'm probably a bit late to the party... I've just fixed it, might be able to help others do the same...

64 bit version of mint 16 has a known weird mouse input lag problem... Easily fixed (it's not as complicated as it looks, honest).

First you need to disable mouse acceleration in xinput:

Open terminal, type:

xinput list

You should get an output that looks something like this:

Yourname@machinename ~ $ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Corsair Corsair M65 Gaming Mouse id=9 [slave pointer (2)]
⎜ ↳ Corsair Corsair M65 Gaming Mouse id=11 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
(There'll be a bit more data here but it's pointer section we're interested in)

The following steps I did for 3 different ids (2,9 and 11, pretty sure I actually only needed to do it for 11 now but I was in a rush and couldn't be bothered figuring out which one at the time lol).

Using id 9 as an example, you then want to add:

xinput list-props 9

The default output should look something like:

Device 'Corsair Corsair M65 Gaming Mouse':
Device Enabled (141): 1
Coordinate Transformation Matrix (143): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (269): 0
Device Accel Constant Deceleration (270): 1.000000
Device Accel Adaptive Deceleration (271): 1.000000
Device Accel Velocity Scaling (272): 10.000000
Device Product ID (259): 6940, 6917
Device Node (260): "/dev/input/event18"
Evdev Axis Inversion (273): 0, 0
Evdev Axes Swap (275): 0
Axis Labels (276): "Rel X" (151), "Rel Y" (152), "Rel Horiz Wheel" (291)
Button Labels (277): "Button 0" (290), "Button Unknown" (262), "Button Unknown" (262), "Button Wheel Up" (147), "Button Wheel Down" (148), "Button Horiz Wheel Left" (149), "Button Horiz Wheel Right" (150)
Evdev Middle Button Emulation (278): 0
Evdev Middle Button Timeout (279): 50
Evdev Third Button Emulation (280): 0
Evdev Third Button Emulation Timeout (281): 1000
Evdev Third Button Emulation Button (282): 3
Evdev Third Button Emulation Threshold (283): 20
Evdev Wheel Emulation (284): 0
Evdev Wheel Emulation Axes (285): 0, 0, 4, 5
Evdev Wheel Emulation Inertia (286): 10
Evdev Wheel Emulation Timeout (287): 200
Evdev Wheel Emulation Button (288): 4
Evdev Drag Lock Buttons (289): 0

You want to change the Device Accel Profile (269) and Device Accel Constant (270)... To do this use:

sudo xinput set-prop 9 269 -1 sudo xinput set-prop 9 270 2

Replace 9 with your device id, replace 269/270 with the parameter id if different, -1/2 is the attribute). These changes are not permanent and will need to be reapplied after reboot. You can set them as a script to run at boot if you want it to be permanent.

Second you need to disable the touchpad option in mouse settings (menu>prefs>mouse... untick it).

And finally you need to set mouse polling rate to 1000Hz (if your mouse supports it that high as most modern gaming mice do, try 500/250/125 etc if not):

sudo gedit /etc/modules

Add the lines:

-r usbhid usbhid mousepoll=1

Different poll rate values you could use here:

1000hz = 1
500hz = 2
250hz =4
125hz=8
100hz = 10

So for a gaming mouse use 1, for an old mouse you might have to use 10.

Save and close.

Hope this helps someone :)
Thx, this help me a lot in manjaro!!!
< >
Showing 1-6 of 6 comments
Per page: 1530 50

Date Posted: Jan 20, 2014 @ 1:56am
Posts: 6