You are not logged in.

#1 2011-07-19 22:24:59

Camus
Member
Registered: 2011-07-03
Posts: 71

Gnome 3 or just X - increased mouse speed with dual monitor

Whenever I plug in my external monitor to my laptop, the speed of the mouse cursor increases in both directions (X and Y axis). I don't know if this is strictly Gnome or X issue. Does anyone have similar problems? How could I solve this?

Offline

#2 2011-07-20 09:39:40

StenM
Member
Registered: 2011-07-03
Posts: 33

Re: Gnome 3 or just X - increased mouse speed with dual monitor

That could be related to the different resolution of you screen if your mouse ran in RELLATIVE mode, so you could try to change it to ABSOLUTE by "xinput set-mode <device name> ABSOLUTE|RELATIVE". I'm not sure because my mouse support only ABSOLUTE, so I can not test it.

To see what setting you use run  "xinput list [<device name>]", device name (number) you find by running simply "xinput list". Alternatively, read /var/log/Xorg.0.log for info.

S-

Offline

#3 2011-07-20 11:36:08

Camus
Member
Registered: 2011-07-03
Posts: 71

Re: Gnome 3 or just X - increased mouse speed with dual monitor

Touchpad in absolute mode makes each point on the touchpad map to absolute point on the screen, e.g. if I swipe my finger on right side of the touchpad, cursor will jump to the right side of the screen. That way I can't even reach all areas of the screen.
Output of "xinput list $device_id" doesn't change at all when I plug in my external monitor. Info in /var/log/Xorg.0.log is the same as in output of "xinput list $id".

Offline

#4 2011-07-20 12:47:47

StenM
Member
Registered: 2011-07-03
Posts: 33

Re: Gnome 3 or just X - increased mouse speed with dual monitor

Sorry, I didn't realised that you mean touchpad by "mouse cursor".  In this case, you have to use "xinput set-mode <device name> RELATIVE".

Use "synclient" to see parameters of touchpad and to change settings like:
     synclient AccelFactor=<value>
     synclient MaxSpeed=<value>
    ...

If you change resolution of your desktop with plug in of external monitor to lower one, the problem could be based on the fact that same movement of your finger on the touchpad means same absolute value of "dots" so with smaller resolution it seems that the cursor moves faster. But, I played with monitor resolution and it seem that the resolution doesn't have an effect. Question is, how the system calculated acceleration. I wasn't able properly tested it, but if calculation of acceleration is based on movement of cursor on monitor rather an position of finger on tachpad, then higher resolution could lead to higher movement due to higher acceleration based on short absolute distance on monitor.
So, if you use external monitor just as clone, try to used it as an extended desktop and compare if you have same movement of the cursor on both screens.

Last edited by StenM (2011-07-20 13:46:01)

Offline

#5 2011-07-20 17:50:53

Camus
Member
Registered: 2011-07-03
Posts: 71

Re: Gnome 3 or just X - increased mouse speed with dual monitor

Tried setting synclient AccelFactor to 0 (from ~0.036) and MaxSpeed to 1 (from 1.75). Cursor speed/behavior did change, but there is still increase in speed when I plug-in external monitor. Output of synclient is again the same if I'm using dual monitor or not. I'm using it as extended desktop, meaning that the resolution on the main screen (laptop's internal) stays the same.

Pixel movement per touchpad movement ratio is definitely increased. It seems that the speed is set dynamically based on number of total pixels; in my case that's either 1440*900 (internal) or 1440*900+2048*1152 (internal and external - as extended desktop).

Offline

#6 2011-07-20 20:23:59

StenM
Member
Registered: 2011-07-03
Posts: 33

Re: Gnome 3 or just X - increased mouse speed with dual monitor

I don't know how much that behaviour is "correct", but you could compare it with some liveCD (like Ubuntu, OpenSuSe ...). If you see the same result, than it was probably meant to work this way.

Nevertheless, there is still much to play around. You could go back to xinput and see output of

 xinput list-props <device> 

You have about twenty parameters that you could modify, I suggest to star with all "Device Accel ..." parameters.

Ones, you have right combination of all parameters from xinput and synclient, just made script file that you could run manually, bind to key combination, as demon bind to monitor status (plug/unplug), or maybe some Xorg settings ...

I only know how to set-up a script file. So, for example if you change parameter "AccelFactor" from original value 0.1 to 0.5. 


#!/bin/sh

STATUS=`synclient -l 2>/dev/null | awk ' /AccelFactor/ {print $3}'`

# you should replace 0.1 with your original value
if [ $STATUS = 0.1 ]; then

    # add all commands with new settings
    synclient AccelFactor=0.5

else

    # add all commands to restore original settings, replace 0.1 with your original value
    synclient AccelFactor=0.1

fi

Last edited by StenM (2011-07-21 11:16:11)

Offline

#7 2011-07-21 10:22:17

Camus
Member
Registered: 2011-07-03
Posts: 71

Re: Gnome 3 or just X - increased mouse speed with dual monitor

After trying different display orientations (where the secondary display is placed relative to primary one), it seems that I have the same issue as described on Ubuntu's forums (remains unsolved); cursor's speed increases on X and Y axis based on pixel-width and pixel-height. So if I set my secondary display to be below my primary one (via display settings in Gnome), the speed increases much more in Y-direction. I haven't noticed this before, because I was placing my secondary display near the top left corner, so the increase was almost equal in both directions.

I tried changing:
- Device Accel Adaptive Deceleration
- Device Accel Constant Deceleration
- Device Accel Velocity Scaling

But it doesn't even allow me to change original values. For example, this command didn't work:

$ xinput set-int-prop "SynPS/2 Synaptics TouchPad" "Device Accel Constant Deceleration" 8 1.0
X Error of failed request:  BadMatch (invalid parameter attributes)
  Major opcode of failed request:  141 (XInputExtension)
  Minor opcode of failed request:  57 ()
  Serial number of failed request:  18
  Current serial number in output stream:  19

I had to do this (notice the number in parentheses):

$ xinput set-int-prop "SynPS/2 Synaptics TouchPad" "Device Accel Constant Deceleration (251)" 8 1.0

Which put another entry at the end of the xinput list-props output:

Device Accel Constant Deceleration (251) (661):          1

While the original entry with its original value remained.

Is there any configuration file I can edit directly? I looked in the /etc/X11 directory and there's nothing with the above values.

Offline

#8 2011-07-21 11:14:16

StenM
Member
Registered: 2011-07-03
Posts: 33

Re: Gnome 3 or just X - increased mouse speed with dual monitor

The problem is that you use parameters in a wrong way
Output of my:

 xinput list 

is

⎡ Virtual core pointer                          id=2     [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer          id=4     [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad       id=14   [slave  pointer  (2)]

So, I could use for identification of TouchPad two parameters, only one in time should be used:
- name

 "SynPS/2 Synaptics TouchPad" 

- id

 14 

To list parameters I could use those two equal commands:
- using name

 xinput list-props "SynPS/2 Synaptics TouchPad" 

- using id

 xinput list-props 14 

output is same

...
Device Accel Profile (277):     1
Device Accel Constant Deceleration (278):       2.500000
Device Accel Adaptive Deceleration (279):       1.000000
Device Accel Velocity Scaling (280):    12.500000
...

For changing parameter "Velocity Scaling" I could use two equal identifier:
- name of parameter

 "Device Accel Velocity Scaling" 

- code of parameter in a parenthesis

 280 

Now I need just run one of these commands, all do the same job:

 
xinput set-prop 14 280 1
xinput set-prop 14 "Device Accel Velocity Scaling" 1
xinput set-prop "SynPS/2 Synaptics TouchPad" 280 1
xinput set-prop "SynPS/2 Synaptics TouchPad" "Device Accel Velocity Scaling" 1

So I hope that this is clear for you now.
S-

PS: Configuration file is probably something like xorg.conf, but I have never used it.

Offline

#9 2011-07-21 16:20:00

Camus
Member
Registered: 2011-07-03
Posts: 71

Re: Gnome 3 or just X - increased mouse speed with dual monitor

I have plugged in my external USB mouse and it has no issues with external monitor. I've configured touchpad the way my USB mouse is configured (same Device Accel values, these are the only identical fields) and the speed is still increased on one axis. I've also tried setting all Device Accel values to minimum (which is 1.0), but the issue is still there.

One other thing I noticed about my external monitor is that the image is shifted to the left a bit. I had to shift the image a bit to the right via monitor's own settings.

Offline

Board footer

Powered by FluxBB