Back/Forward mouse buttons don't show up in evtest

My Mi Silent Mouse does not produce events when pressing the back/forward buttons. The mouse is connected via Bluetooth on Ubuntu 20.04.1.

photo of side buttons.

$ xinput query-state "Mi Silent Mouse" produces

2 classes :
ButtonClass button[1]=up button[2]=up button[3]=up button[4]=up button[5]=up button[6]=up button[7]=up
ValuatorClass Mode=Relative Proximity=In valuator[0]=1973 valuator[1]=741 valuator[2]=0 valuator[3]=11640

Buttons 1-5 are the three main buttons plus wheel up/down, so buttons 6-7 should be the back/forward buttons.

evtest doesn't show any events when pressing these two buttons though.

On the other hand, the mouse works perfectly on Windows on a secondary partition on the same machine.

I have not found much info on how to solve this problem, any help appreciated.

5

1 Answer

The mouse sends a bad HID report descriptor on Bluetooth (it sends the right one over USB). I wrote a kernel module to fix it:

Installation instructions:

sudo apt install git build-essential dkms
git clone
cd hid_mimouse
make

If make runs without errors you can

sudo make install
sudo dkms add .
sudo dkms install hid_mimouse/1.0

And reboot.

0

You Might Also Like