Jump to content
Sign in to follow this  
eac

Scroll wheel too sensitive in Linux

Recommended Posts

In linux, the mouse wheel is SUPER sensitive -- a single button press on the mousewheel will do a page-up / page-down vs. scrolling line by line. Does anyone else have this issue and/or found a workaround? I can't find any settings in xinput that seem to adjust the sensitivity of the scrollwheel.

Share this post


Link to post
Share on other sites

Change the scroll wheel to scroll just one click instead of one page? Can you post your mouse's current configuration?

Share this post


Link to post
Share on other sites
3 hours ago, Damir said:

Change the scroll wheel to scroll just one click instead of one page? Can you post your mouse's current configuration?

It is set to 1 line in the windows driver, and the scrolling works as expected in windows. In linux, other mice scroll properly, just the Z mouse that scrolls page by page.

As far as configuration goes, this is what is exposed:

Device 'Swiftpoint Limited Swiftpoint Z':
	Device Enabled (152):	1
	Coordinate Transformation Matrix (154):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Natural Scrolling Enabled (286):	0
	libinput Natural Scrolling Enabled Default (287):	0
	libinput Scroll Methods Available (288):	0, 0, 1
	libinput Scroll Method Enabled (289):	0, 0, 0
	libinput Scroll Method Enabled Default (290):	0, 0, 0
	libinput Button Scrolling Button (291):	2
	libinput Button Scrolling Button Default (292):	2
	libinput Middle Emulation Enabled (293):	0
	libinput Middle Emulation Enabled Default (294):	0
	libinput Accel Speed (295):	0.000000
	libinput Accel Speed Default (296):	0.000000
	libinput Accel Profiles Available (297):	1, 1
	libinput Accel Profile Enabled (298):	1, 0
	libinput Accel Profile Enabled Default (299):	1, 0
	libinput Left Handed Enabled (300):	0
	libinput Left Handed Enabled Default (301):	0
	libinput Send Events Modes Available (271):	1, 0
	libinput Send Events Mode Enabled (272):	0, 0
	libinput Send Events Mode Enabled Default (273):	0, 0
	Device Node (274):	"/dev/input/event16"
	Device Product ID (275):	8526, 5
	libinput Drag Lock Buttons (302):	<no items>
	libinput Horizontal Scroll Enabled (303):	1

      
Device 'Swiftpoint Limited Swiftpoint Z Consumer Control':
	Device Enabled (152):	1
	Coordinate Transformation Matrix (154):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Natural Scrolling Enabled (286):	0
	libinput Natural Scrolling Enabled Default (287):	0
	libinput Send Events Modes Available (271):	1, 0
	libinput Send Events Mode Enabled (272):	0, 0
	libinput Send Events Mode Enabled Default (273):	0, 0
	Device Node (274):	"/dev/input/event18"
	Device Product ID (275):	8526, 5
	libinput Drag Lock Buttons (302):	<no items>
	libinput Horizontal Scroll Enabled (303):	1

I've tried tweaking some of the settings but I can't find any that make a difference.

Share this post


Link to post
Share on other sites

Have you used "save mappings to permanent memory on mouse", if you haven't  then the mouse is using the default settings that are on the permanent memory as just changing settings in the driver doesn't save them on the mouse so those could be used without the driver present.

Share this post


Link to post
Share on other sites

Dug in a bit more. Turns out the axis values for the swiftpoint Z are far too high in linux:

 event16  POINTER_AXIS      +4.93s	vert 1800.00* horiz 0.00 (wheel)
 event16  POINTER_AXIS      +4.96s	vert 1800.00* horiz 0.00 (wheel)

Note the 1800, vs:

 event26  POINTER_AXIS      +4.12s	vert 15.00* horiz 0.00 (wheel)
 event26  POINTER_AXIS      +4.18s	vert 15.00* horiz 0.00 (wheel)

for a "normal" mouse. Haven't figured out if I can adjust a multiplier or something on this yet.

Share this post


Link to post
Share on other sites
Posted (edited)

Fixed it!

Added the following to /etc/udev/hwdb.d/71-mouse-local.hwdb (the path may change depending on your distro):

mouse:usb:v214Ep0005:name:Swiftpoint Z
  MOUSE_WHEEL_CLICK_ANGLE=30
  MOUSE_WHEEL_CLICK_COUNT=12

Not 100% sure about the values, but they seem to work just fine. Then I ran "udevadm hwdb --update" and replugged the mouse to pick up the config changes (there's probably a way to do that live but I didn't bother looking).

edit: I spoke too soon. Seems like the fix is replugging it in linux; when it comes up on boot it comes up with the too fast scrolls.

Edited by eac

Share this post


Link to post
Share on other sites
Posted (edited)

Sorry for the two-month necro, but this is the first hit on several Google queries relating to the matter, so I'm posting here for maximal visibility into the subject (and eventual solution, ideally).

This issue is shared specifically (and perhaps almost exclusively?) with several Microsoft mice as well, and only when dual booting between Windows and Linux.

We (the Linux community) have been fighting this fight for literally years, and there's ultimately no good, permanent solution outside of a few scripts that work for most such devices, but none (that I've found) for our Z unfortunately. Otherwise, as you concluded, the only solution here is to unplug and replug the mouse in physically.

If you're interested, the most popular scripted solution (for essentially every applicable mouse except ours) is the open source utility, 'resetmsmice':
https://github.com/paulrichards321/resetmsmice

Of course, it won't detect your mouse (and thus won't know to restart it) if you try for yourself, instead error'ing out with:

Checking for X.org compatibility mode on all Microsoft usb mice plugged into the system...
No known X.org problematic mice attached to system.

But in theory we should still be able to apply the same internal fix for own device... we just need someone slightly more savvy than me to take the wheel, lol...

To that end, in the event such a user happens upon this post, somewhere below is the pertinent information you'll need to diagnose (and hopefully resolve) our issue I believe.

Device 'Swiftpoint Limited Swiftpoint Z':
	Device Enabled (153):	1
	Coordinate Transformation Matrix (155):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Natural Scrolling Enabled (287):	0
	libinput Natural Scrolling Enabled Default (288):	0
	libinput Scroll Methods Available (289):	0, 0, 1
	libinput Scroll Method Enabled (290):	0, 0, 0
	libinput Scroll Method Enabled Default (291):	0, 0, 0
	libinput Button Scrolling Button (292):	2
	libinput Button Scrolling Button Default (293):	2
	libinput Middle Emulation Enabled (294):	0
	libinput Middle Emulation Enabled Default (295):	0
	libinput Accel Speed (296):	0.000000
	libinput Accel Speed Default (297):	0.000000
	libinput Accel Profiles Available (298):	1, 1
	libinput Accel Profile Enabled (299):	1, 0
	libinput Accel Profile Enabled Default (300):	1, 0
	libinput Left Handed Enabled (301):	0
	libinput Left Handed Enabled Default (302):	0
	libinput Send Events Modes Available (272):	1, 0
	libinput Send Events Mode Enabled (273):	0, 0
	libinput Send Events Mode Enabled Default (274):	0, 0
	Device Node (275):	"/dev/input/event4"
	Device Product ID (276):	8526, 5
	libinput Drag Lock Buttons (303):	<no items>
	libinput Horizontal Scroll Enabled (304):	1
Device 'Swiftpoint Limited Swiftpoint Z':
	Device Enabled (153):	1
	Coordinate Transformation Matrix (155):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Natural Scrolling Enabled (287):	0
	libinput Natural Scrolling Enabled Default (288):	0
	libinput Send Events Modes Available (272):	1, 0
	libinput Send Events Mode Enabled (273):	0, 0
	libinput Send Events Mode Enabled Default (274):	0, 0
	Device Node (275):	"/dev/input/event5"
	Device Product ID (276):	8526, 5
	libinput Drag Lock Buttons (303):	<no items>
	libinput Horizontal Scroll Enabled (304):	1


Alternatively, could we maybe get a means of mapping a 'mouse restart' command to our Z? For we desktop users, that'd at least be a tiny bit more convenient than walking/crawling to the back of our towers just to unplug and replug the mouse after every single Linux restart.

Either way, I hope this helps! Good luck and Godspeed, Linux users!
 

Edited by Skip
Corrected links.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...