Several years ago I wanted a new mouse.
I was assigned to multiple projects at work and bounced between three different labs and my office desk. The environment in some of the labs was less than pristine and the only ‘mice’ I seemed to be able to get from our IT guys were mechanical. Due to the working environment, the mouse would need cleaning several times a day and was driving me crazy. I got the idea that I could buy my own wireless digital mouse and carry it from lab to lab. So, for fathers day, Cathy and Christopher made me the proud new owner of a Logitech Cordless Click! Plus mouse.
Eventually, our labs were upgraded to digital mice and I brought my Cordless Click! Plus home to my linux system. Basic functionality worked fine out of the box. That is, cursor movement, left button, right button, middle button, and scrolling up and down. What didn’t work was the extra buttons. This wasn’t that big of a deal for me because I rarely used them.
Several years later Compiz appeared on the Linux scene and I was eager to try it out. While I was floored by all of the eye-candy, one feature particularly wowed me. It was what is now called the scale feature. My understanding is that this feature is known as Expose in OSX. In my Compiz setup, the Scale feature was activated by moving the mouse pointer to the upper right corner of the screen. When you did this, all of the windows on my computer would scale out to a thumbnail, the size depending on the number of windows open. Then, I could pick which window I wanted to work with. The sliding and scaling is all done in very organic movements (like all things in Compiz). While this feature is great, it was also annoying for each time I let my mouse pointer stray too close to the the dreaded corner, I could only watch helplessly as my windows scaled to thumbnails. Then I would have to figure out which window to select so that I could go back to work. As you can imagine, what had great potential to be a productivity enhancement became a productivity deterrent. I realized that if I could remap one of the unused buttons on my Cordless Click! Plus to this Scale feature, I would regain my productivity.
Of course, this was not as straightforward as I had hoped and so I want to document what I did here, so that, firstly I have a record that I can use again if necessary, and secondly, so that others with this mouse may benefit.
Ultimately, what proved to be the most help was a Gentoo HowTo titled: HOWTO Advanced Mouse.
First, the kernel has to be set-up properly.
Device Drivers --->
Input Device Support --->
<*> Event Interface
USB Support --->
<*> USB Human Interface Device (full HID) support
[*] HID input layer support
Next you have to install evdev support for Xorg
#emerge xf86-input-evdev
You’ll need some info about the hardware. To get it, you can type:
#cat /proc/bus/input/devices
Here is what the results look like on my system:
I: Bus=0003 Vendor=046d Product=c510 Version=0110
N: Name=”Logitech USB Receiver”
P: Phys=usb-0000:00:0a.0-4/input0
S: Sysfs=/class/input/input2
U: Uniq=
H: Handlers=mouse1 event2
B: EV=20017
B: KEY=ffff0000 0 0 0 0 0 0 0 0
B: REL=143
B: MSC=10
B: LED=ff00
Armed with this information, edit /etc/X11/xorg.conf as follows:
Section "InputDevice"
Identifier "Mouse0"
Driver "evdev"
Option "Device" "/dev/input/event2"
EndSection
And thats all of the changes. Don't forget to restart X, either by logging out and hitting ctrl-alt-backspace, or rebooting.
The HowTo I referenced above is really a better source for information.
I wanted to provided the important bits here just in case that HowTo one day becomes unavailable.
Tags: linux // 1 Comment »