Microsoft Optical Trackball 1.0 USB/PS2 Compatible not registering side button clicks
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Microsoft Optical Trackball 1.0 USB/PS2 Compatible not registering side button clicks
Alright, let me begin by saying that I'm relatively sure that this is NOT a problem with modmapping or anything of that nature. I mean, I could be wrong, but I do understand how to set up a mouse to work with KDE... I've done that before. In fact, I've done that with this particular mouse before on other distros.
The problem I'm having is that the mouse clicks of my side buttons (the usual forward/back defaults for firefox) are not registering at all. I've opened imwheel and get no input response from clicking either button. I've done the same thing with xev. It doesn't register any input at all.
I loaded a live ubuntu CD for comparison and the only major difference I saw was in how the kernel loaded the mouse. My current kernel (the one I'm having the problem on) loads my mouse like so:
Obviously it probably needs to be mapped, but like I said, the clicks aren't registering at all, so there'd be no way to tell if I'd mapped it correctly.
Do I need to make the kernel load the ImExPS/2 module at boot? If so, how do I do that? I can't find it anywhere on my box and I don't see a whole lot of specific mention of it while googling. If not, can anyone see a major problem that would cause this that I might be missing?
1. Kill the Macintosh emulation, you don't need it. I have no idea if it could be interfering, but it's always better to remove stuff you know you don't need. (FYI, it's to emulate 2 buttons on a single button old-fashioned Mac mouse. No PC should ever need it.)
2. Change the "Protocol" option in xorg.conf to "auto" and see what happens. I especially like this because you can switch devices (in my laptop, for instance, between the built-in Alps touchpad and my USB trackballs) with no trouble at all. It may solve your problem.
3. One more idea, you may want to mess with the "Buttons" setting, but I'm not sure about that.
Well I've tried changing the Buttons setting around a bit. It's a 7 button mouse, but I've read that some mice have to have a setting quite a bit higher (I think the highest I saw while googling was 32!). I've tried 7, 8, 9, 11, 13, 15 and 17, IIRC. But I do know that the most success I've had in the past has been on 9 and the buttons in question register as buttons 8 and 9.
I've also tried a few different Protocol settings: Auto, ExplorerPS/2, and ImPS/2 were the only ones that gave me any wheel function. PS/2 works, but only for 3 buttons. The other settings only gave me either no mouse or a mouse that ran wildly and erratically across the screen, randomly clicking things if I tried to move it. Fun fun.
Now, as far as killing the Mac button emulation, I'm willing to try it but have no idea how to do it. My Kernel is autodetecting it and then loading it. Can I blacklist it? I only see the device itself, not a module or anything.
Since I'm on a M$ box at work, I can't look it up right now, but I think the Mac button emulation may be a compiled-in-only option. I do remember it's in its own menu for some reason.
On buttons: I've found that button mapping is generally (in X, anyway) as follows: buttons 1, 2, and 3 are just that. Buttons 4 and 5 are vertical scrolling while buttons 6 and 7 are horizontal scrolling. Buttons 8 and 9 are your device's 4th and 5th buttons, although some devices such as my Logitech Marble Mouse (really a trackball) have only 4 buttons with no button 2 functionality--on it, the 2 big buttons are 1 and 3 and the 2 little buttons are mapped as 8 and 9; to get button 2 I need to set "Emulate3Buttons" to "Yes" in X, and I have yet to see an option like that in winblows (Logitech's own driver no longer supports it!). My new trackball (a CST aka MicroSpeed PC-Trac/UNI-Trac) has 3 buttons with an extra 2 jacks on the back for foot switches, so I have a device that can do true 5 buttons! I've seen another that has 6 buttons, but one may be for dragging or something. I don't know exactly what the Buttons entry does in X other than setting a high limit, though.
Here's one thing I didn't notice from last time: mess with the "ZAxisMapping". I don't know whether you should set it to "4 5 6 7" or there's another option like "XAxisMapping" and "YAxisMapping" off hand since, as I said, I don't have access to any of my machine at the moment.
Has this issue been resolved.
I am having the same issue.
I have run "xev" to check and see if I am getting button events and I do not seem to be getting a response at all from the right buttons.
Buttons 1 2 3 and scroll (4 5) seem to be working just fine.
I had solved this issue before but I just upgraded to slack 12.1.
I have looked everywhere and found a lot of examples and docs but none have been able to get a response.
Actually, I found that the reason the button clicks were not registering was the connection--I was connecting the usb mouse through a usb to ps/2 connector. When I removed the adapter and connected directly into a usb port, the button clicks began registering, and then I was able to map all the buttons with .Xmodmap. Hope that works for you, too.
Thank you for the reply.
but after a little more looking I was about to resolve this issue. I was using the usb/ps2 convertor but I needed it to connect to the kvm that I was using. It turns out that the psmouse module was using a diff protocol in this new update. I switched the module load
from:
options psmouse proto=imps
to:
options psmouse proto=exps
located in modprobe.d dir config files. Depending on you distro it might be located elsewhere but I have not looked.
this seemed to fix the issue.
Some machines have also had issues with this and have had to add
resync_time=<X> but this as not my case.
This looks like a useful tidbit of knowledge so maybe I'll do a little write up on it.
That's odd, because I never had any success switching between imps and exps protocols. Like I said in the original post, the only time it worked correctly through the adapter was on a different distro, loading it with an imexps protocol, and Slack 12 doesn't appear to support that. I tried looking for a module on that ubuntu live cd I mentioned, but I couldn't find it, so I guess it's compressed somewhere on the cd or something. And I couldn't find it online anywhere, either. But then I accidentally discovered that I could go straight in without the adapter and everything worked fine, so I sort of gave up.
For the record, I never tried the resync_time thing, so exps has a possibility of working on my machine.
to my psmouse file in /etc/modprobe.d worked like a charm. I'm currently connected through the usb/ps2 adapter and side buttons are now registering fine. Also, my dmesg is now showing
input: ImExPS/2 Generic Explorer Mouse as /devices/platform/i8042/serio1/input/input2
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.