Skip to content

Instantly share code, notes, and snippets.

@ruionwriting
Last active June 19, 2024 17:59
Show Gist options
  • Save ruionwriting/6e715b22c3e69d879854f298eeab3ed7 to your computer and use it in GitHub Desktop.
Save ruionwriting/6e715b22c3e69d879854f298eeab3ed7 to your computer and use it in GitHub Desktop.
LogiOps configuration for MX Master 3S

LogiOps configuration for MX Master 3S

LogiOps is an amazing projet - please donate.

TL;DR;

I've moved from MacOS (I also use Windows with this mouse) and I wanted to keep most of the behaviors I'm used too. Thinks that didn't work for me:

  • Gestures button dragging left/right switch desktops
  • Hold/release gestures buttom shows all apps in active desktop
  • Toggle high resolution buttom just works

Here I share my configuration file. My system: Kubuntu 22.04.

Setup

  1. Install:

    sudo apt install logiops
  2. Copy the configuration file or the bits you fancy (you need to edit /etc/logid.cfg using sudo)

  3. Restart logid service:

    sudo systemctl restart logid
  4. Check service status:

    sudo systemctl status logid

    Note Any configuration errors can be seen here.

Alternatives

A friend of mine made me aware of sonaar project. I dind't tried it yet but good to have options.

References

devices: (
{
name: "MX Master 3S";
# smartshift:
# {
# on: true;
# threshold: 30;
# };
hiresscroll:
{
hires: false;
invert: true;
target: false;
};
dpi: 1000;
buttons: (
{
cid: 0xc3;
action =
{
type: "Gestures";
gestures: (
{
direction: "Up";
mode: "OnRelease";
action =
{
type: "Keypress";
keys: ["KEY_UP"];
};
},
{
direction: "Down";
mode: "OnRelease";
action =
{
type: "Keypress";
keys: ["KEY_DOWN"];
};
},
{
direction: "Left";
mode: "OnRelease";
action =
{
type: "KeyPress";
keys: ["KEY_LEFTCTRL", "KEY_F2"];
};
},
{
direction: "Right";
mode: "OnRelease";
action =
{
type: "KeyPress";
keys: ["KEY_LEFTCTRL", "KEY_F1"]
};
},
{
direction: "None";
mode: "OneRelease";
action =
{
type: "Keypress";
keys: ["KEY_LEFTMETA", "KEY_W"]
};
}
);
};
},
{
cid: 0xc4;
action =
{
type = "ToggleSmartshift";
};
}
);
}
);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment