This is a quick guide for setting up your new mouse with Ubuntu. I’m a big fan of the Evoluent Mouse range, and I’ve agreed to publish this Linux guide in return for a review sample.
The only way to configure this mouse is via the command-line. This may look a bit daunting, but I promise you it’s simple. Just copy and paste the highlighted code.
Open up a Terminal. You’ll usually find this in your main menu. Or, you can open it by pressing ctrl+alt+t.
Connect the mouse
- Make sure your computer is switched on.
- Plug the mouse’s USB cable into your computer.
If you wiggle the mouse, you should see the cursor on your screen move.
Detecting the mouse
In the terminal, type
You should see a list of input devices – keyboards, mice, laptop buttons – this is what mine looks like
⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ SynPS/2 Synaptics TouchPad id=11 [slave pointer (2)] ⎜ ↳ Kingsis Peripherals Evoluent VerticalMouse 5 id=14 [slave pointer (2)]
Detect the buttons
This command will detect all the buttons on the mouse:
xinput query-state "Kingsis Peripherals Evoluent VerticalMouse 5"
This is what the output should look like:
2 classes : ButtonClass button=up button=up button=up button=up button=up button=up button=up button=up button=up button=up
Each button has a number. Note – some of these are virtual buttons. They do not have a physical button.
Here’s a picture of the physical buttons:
Here is how they are mapped onto to actions.
|1||Left Click||Index finger|
|2||Middle Click||Ring finger|
|3||Right Click||Little finger|
|4||Scroll Up||Wheel up|
|5||Scroll Down||Wheel down|
So, you can set physical button 9 (the bottom thumb) to scroll down. Or change the wheel up action to be right click. Any combination is possible – and you can choose what works best for you.
Change the buttons (temporary)
We can remap the buttons so they do something else. This is only temporary and will revert back to normal when you reboot. I’ll show you a permanent way to re-order the buttons further down the page.
Suppose you want to swap button 1 and button 3 so that your left and right click are reversed. Here’s the command you run:
xinput set-button-map "Kingsis Peripherals Evoluent VerticalMouse 5" 3 2 1 4 5 6 7 8 9 10
(Notice that the position of button 1 and 3?)
If you want to make the bottom-thumb button be left click, and leave all the other buttons the same, you run:
$ xinput set-button-map "Kingsis Peripherals Evoluent VerticalMouse 5" 1 2 3 4 5 6 7 8 1 10
If you want reverse the direction of the scroll wheel – sometimes called “natural” scrolling:
xinput set-button-map "Kingsis Peripherals Evoluent VerticalMouse 5" 1 2 3 5 4 6 7 8 9 10
Experiment with an order that feels right for you.
Permanently change the buttons
You need to find the USB Identifier of the mouse. In the terminal run:
You’ll see all of your USB devices. Find the one that refers to your mouse. For me, it is
We now need to add this information into a configuration guide.
sudo nano /usr/share/X11/xorg.conf.d/90-evoluent.conf
This will ask you for your password. Once you’ve entered it, you’ll be using the “nano” text editor.
Copy and paste the following text into the terminal:
Section "InputClass" Identifier "Evoluent" MatchUSBID "1a7c:0195" Option "ButtonMapping" "0 2 3 4 5 6 7 8 1 10" EndSection
You may need to change the “MatchUSBID” if yours is different to mine. You will need to change the “ButtonMapping” to the order you prefer.
Once you’re done, press ctrl+x to exit nano. It will ask you if you want to save the file. Type y, then press ⏎. You will need to press ⏎ again to confirm the filename.
You may need to reboot your computer for the new settings to take effect.
That’s it, you’ve now configured your mouse. If you need any more help, please leave a comment in the box below and I’ll try to help.