Getting middle button of 3M ergonomic mouse to work

Yes that is a mouse. I use this at work.

3M-Ergonomic-Mouse_1

But the default configurations did not let me use the middle button. I wanted to use it for scrolling. So I had to add some custom settings to X.

Before we begin, we need to know the device name:

# hal-find-by-capability --capability "input.mouse"

/org/freedesktop/Hal/devices/usb_device_4b4_60_noserial_if0_logicaldev_input

Then get the product name by

hal-get-property --udi "/org/freedesktop/Hal/devices/usb_device_4b4_60_noserial_if0_logicaldev_input" --key "info.product"

Areson USB Device

On an ubuntu system you need to create a file at /usr/share/X11/xorg.conf.d/42-middle-mouse-scrolling.conf with the following contents:

Section "InputClass"
    Identifier "Middle Mouse Button Scrolling"
    MatchProduct "Areson USB Device"
    MatchDevicePath "/dev/input/event*"
    Option "EmulateWheel" "true"
    Option "EmulateWheelButton" "2"
    Option "XAxisMapping" "6 7"
    Option "YAxisMapping" "4 5"
EndSection

Then restart X or reboot.

Original Source: http://www.conrad.id.au/2011/08/middle-mouse-button-scrolling-on-linux.html