Using a logitech mx700 with scrollwheel _and_ thumb buttons

Seán C. Farley sean-freebsd at
Mon Jul 11 01:40:41 GMT 2005

On Wed, 6 Jul 2005, Julian Elischer wrote:

> Joe Schmoe wrote:


>> Nope.  I reproduced these same settings _exactly_, and
>> they produce the same results.
>> With your settings above, the scroll wheel works fine,
>> and the two thumb buttons each cause the web page to
>> scroll very slightly downward.  This is the same thing
>> they did with all the other different configurations I
>> tried.
>> Why is using mouse thumb buttons under FreeBSD _rocket
>> science_ ?  Why is this a _hard problem_ ?
> because no-one who has the interest in fixing it has the time
> to do so and visa versa.

I do not know how to fix it using the psm driver, but here is what I did
with the Logitech MX 1000 I bought over the weekend.

I tried using the psm driver, but it claimed a maximum of seven buttons
while this mouse has twelve according to one source[1].  I then tried
the ums driver, yet it also claimed only seven buttons.  Fortunately, I
found a NetBSD PR (kern/30248 [2]) concerning the button limit in the
ums driver.  Since sc_buttons is an int, I just bumped up MAX_BUTTONS to
31, and the driver found 16 buttons.

xorg.conf mouse section:
Section "InputDevice"
         Identifier  "Mouse0"
         Driver      "mouse"
         Option      "Protocol" "auto"
         Option      "Device" "/dev/ums0"
         Option      "Buttons" "12"
         Option      "Emulate3Buttons" "false"
         Option      "ZAxisMapping" "9 10"

Although I disabled the moused loading in /etc/usbd.conf to allow X to
capture the device, moused may still work.  I doubt it, but is there a
way to disable a particular check via rc.conf?

With the following xmodmap command, I have a fair amount of the mouse
xmodmap -e "pointer = 1 2 3 9 10 6 7 8 4 5 11 12"

1. psm has a limit to the number of buttons detected.  I noticed this
    when I used moused in debug mode to see what events were thrown from
    the mouse.
2. The wheel pushed to the left and right does not work.  It does not
    show up in xev.  I may need to play with xorg.conf some more.
3. I need to find a way to disable Logitech's "Cruise Control" since I
    want to use the scroll up button above the wheel as the paste button.
    Cruise Control send the button number I want (7) plus a continuous
    stream of the button number (4) related to the wheel.

    I hate pasting with a wheel; I am almost always screwing something
    up during the paste due to slipping on the wheel.  :)
4. I have no idea what the (magic number) button positions in xmodmap
    correspond with.  I.e., 2 means paste, but what does 4 and on mean?

Would anyone like to up the MAX_BUTTONS define in ums.c to a higher
number, please?

sean-freebsd at

More information about the freebsd-hackers mailing list