Better Mouse Drivers For X11?
OvenMitt asks: "I've asked many people the same question and have yet to get an answer. I've RTFM over and over with no luck whatsoever. So I ask you guys: how can I get smooth mouse acceleration in XFree86 4.x?
I used to remedy the situation in XFree86 3.3.x by setting the SampleRate and Resolution modifiers in the XF86Config file to some ridiculous number, but this doesn't work at all in XFree86 4.x. I'd go back to XFree86 3.3.6, but I just got a Geforce2 and my thirst for Unreal Tournament forces me to bite the bullet. I use a Kensington Expert Mouse,which is actually a very large trackball, and sometimes I feel like I'm playing marble madness when trying to get my pointer from one side of the screen to the other. Are there any alternative mouse drivers for X in development? I'd give up my Kensington Expert Mouse, but it is the absolute greatest trackball I've ever used in my life and well worth the cash IMHO."
It's worth trying out a whole bunch of pointing devies before you buy. What might look like a real funky pointing solution might be a pile of pants in actual day to day use.
If the vendor doesn't want to let you try before you buy then go elsewhere. A dodgy mouse can cause you immense amounts of pain and distress.
Your solution is based entirely upon your own phisiology and medical history and not on what looks funky at the time.
As they say on Hill Street Blues... Let's be careful out there...
Ian
This does it fine for me with Xfree86 4.0.1 --
Section "InputDevice"
Identifier "Mouse1"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/mouse"
Option "Resolution" "1200"
Option "Buttons" "5"
Option "ZAxisMapping" "4 5"
EndSection
I've got one of those Microsoft Optical mice (the cheap one.) Very nice mouse at a good price ($20-$30.)
The keys are the correct protocol (not just PS/2), and adding the appropriate Buttons and ZAxisMapping lines.
Do be aware that the PS/2 extensions often don't work through KVM switchs (in mine, it works only if the KVM is switched to each computer as it boots up. If I do that, it works fine. If not, it only sees my mice as standard three button mice. It's not too hard to understand why.)
The mouse speed controls in XFree86 are very crude; but if all you want is to make the pointer move quickly, just look at xset(1). Note that the acceleration is interpreted very differently depending on whether you have a (non-zero) threshhold: with a threshhold, it is a simple multiplier; without, an exponent. Very different feels, so try both ways. Also note that the acceleration can be a fraction (not a decimal!).
The evaluation of an action as 'practical' . . . depends on what it is that one wishes to practice.
Wheel support is application specific. Mozilla uses it natively, but other applications often require some ~/.Xdefault changes, or mapping the wheel events to other events.
For a good bit of background on all of these changes, check out -
I tried to make that a link, but /. didn't like it. How do I do that anyways? /. also seems to be introducing a space that I can't remove. You'll have to remove it manually.
Download 4.0.2, a major bug was fixed and the mouse is now smooth.
See http://www.linuxgames.com/news/index.php3/3072
wolruf@gmail.com
It has 4 buttons, but under X the top two act exactly like the bottom 2. Setting buttons=4 in my XF86Config didn't help. Has anyone had luck making these buttons do something useful?
I've been waiting for this for years, as well. However, I just tried the ThinkingMouse protocol, and (unsurprisingly) got no love in XFree 4.0.2, on FreeBSD 4.2-stable. I tried the following:
Section "InputDevice"
Identifier "ExpertMouse"
Driver "mouse"
Option "Protocol" "ThinkingMouse"
Option "Device" "/dev/psm0"
Option "Buttons" "4"
EndSection
But the pointer didn't move properly, and none of the buttons worked. The system doesn't even recoginize ThinkingMousePS/2 as a protocol, and forget trying it with moused. More X lameness.
Anybody gotten this to work in XFree 4.x?
(jfb)
To spur "enterprise Linux," Big Bang, the distributed two-phase commit.
Penny & Giles are the folks who make the "black box" recorders for jet aircraft and the space shuttle. Needless to say their pointing devices are robust howerver you are likely to pay upwards of GBP 200 for an example of their fine engineering skill.
Hope this helps
Ian
Does anyone have the mouse wheel working for scrolling under X? Please post any pointers to get this working
I have a Kensington TurboMouse working under Debian's XFree4 (not sure if that's the same as the ExpertMouse or not -- the TurboMouse is a Mac trackball).
Caveats: My system is a Mac clone, using ADB for the keyboard and trackball/mouse.
I have (only) three mouse buttons working, and I run xmodmap when I start X to swap two of them around -- my ~/.Xmodmap file contains pointer = 1 3 2; the equivalent command line would be xmodmap -e 'pointer = 1 3 2'.
ie.
Section "InputDevice"
Identifier "ExpertMouse"
Driver "mouse"
Option "Protocol" "ThinkingMousePS/2"
Option "Device" "/dev/psm0"
Option "Buttons" "4"
EndSection
More details at XFree86
Cheers,
Toby Haynes
Anything I post is strictly my own thoughts and doesn't necessarily have anything to do with the opinions of IBM.
I got expert mouse to work properly with XFree86 3.3.6 on Debian potato, just this weekend. From my past setups, I completely understand the "Marble Madness" thing. I use vitual desktops and edge flipping. Try going 3 or 4 screens with one massive swipe of the mouse hand! :-D
/etc/X11/XF86Config:
But then, I used the debian server config program, and SHOCK!!!! I got the upper left button to be mouse button 2, AND high resolution movement. YEARS I worked on that. YEARS, do you hear me? YEARS!!!
Here is my working mouse config from
Section "Pointer"
Protocol "ThinkingMousePS/2"
Device "/dev/mouse"
Emulate3Timeout 50
Resolution 200
Buttons 3
Emulate3Buttons
EndSection
Apparently the ThinkingMousePS/2 thing works on my box. I'm sure I must have tried that in the past. But maybe not? I ran XFree86 4 for awhile but I didn't ever try this exact config with it. Maybe it will work.
Under this configuration the the lower mouse buttons are left and right, and the upper left is mouse button 2. I'm not sure about the upper right mouse button. Configured as a four button mouse, that button may or may not work as button 4. YMMV.
I left in Emulate3Buttons becuase I already have "chording" habits. No need to torture myself.
Also, FWIW, I'm using the "old" S3 Virge server. Yeah, I'm a real miser.
Try this, I have a Cordless MouseMan Wheel and this works....
Identifier "Mouse1"
Driver "mouse"
Option "Protocol" "imps/2"
Option "Device" "/dev/psaux"
Option "Buttons" "6"
Option "ZAxisMapping" "4 5"
Your Momma's so fat she makes emacs look like nano!
Using a mouse driver set called 'JAM' and IMWheel, you can bind your 4th and 5th (6/7 if you count the wheel) normal buttons to the Thumb button, which IMWheel can then use to emulate a keypress...
Basically.. over with my howto of LHL I was able to play CS with: Mouse 1, 2, 3. Mousewheel up/down and the two thumb buttons - only constraints: the thumb buttons pressently act as one button, because of IMwheel, the guy that wrote IMWheel and JAM is also going to write XWheel which will support much more buttons. Also, its kinda hard to get working, still some bugs.. but if people start using it, then maybe he can get some help from other developers!
stuff
Unfortunaly, there is no smooth acceleration in X. By smooth I mean that the actual cursor speed moves by some function of the actual mouse speed, which is NOT linear. E.g. cursorspeed = mousespeed ^ 1.25. This gives polynomial speed, which MS OS has had since I do not know when.
In DOS, the mouse drivers provided by Logitech and other had this feature, also known as "ballistic" acceleration (if you did not know, Ballistic is a polynomial movement). The is also used in Windows today.
When I first used X11, I too had problem using the mouse, because of the lack of ballistic movement, but you get used to it! I can see the problems with trackballs though, where you have a harder time moving the longer distances.
Fortunately Quake3Arena for Linux has its own Mouse acceleration/ballistics which makes the controls right. But if you try running windows q3a through Wine, you can experience this problem. Q3A for Window depends on windows to do the ballistics, but they are not provided in Wine, so the controls are very bad. You can turn, but you cannot turn fast because the acceleration is linear (even when accelerated).
Beg the XFree86 project for ballistic mouse acceleration! It's not really a driver problem.
-larsch