Skip to content

Instantly share code, notes, and snippets.

@willwm
Last active March 25, 2026 22:59
Show Gist options
  • Select an option

  • Save willwm/063e374dabf55202740579c702870a73 to your computer and use it in GitHub Desktop.

Select an option

Save willwm/063e374dabf55202740579c702870a73 to your computer and use it in GitHub Desktop.
LogiOps configuration for MX Master 3
devices: (
{
name: "Wireless Mouse MX Master 3";
smartshift:
{
on: true;
threshold: 10;
torque: 50;
};
hiresscroll:
{
hires: true;
invert: false;
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: "CycleDPI";
dpis: [400, 600, 800, 1000, 1200, 1400, 1600];
};
},
{
direction: "Right";
mode: "OnRelease";
action =
{
type = "ToggleSmartshift";
}
},
{
direction: "None";
mode: "OnRelease";
action = {
type: "Keypress";
keys: ["KEY_LEFTMETA", "KEY_TAB"]; # e.g. Super+Tab
}
}
);
};
},
{
# Forward button (CID 0x56) — mapped to Ctrl+W (close window/tab)
cid: 0x56;
action = {
type: "Keypress";
keys: ["KEY_LEFTCTRL", "KEY_W"];
};
},
{
# Back button (CID 0x53) - mapped to Ctrl+Shift+T (reopen tab)
cid: 0x53;
action = {
type: "Keypress";
keys: ["KEY_LEFTCTRL", "KEY_LEFTSHIFT", "KEY_T"];
};
},
{
# SmartShift button (CID 0xc4) - mapped to Print Screen
cid: 0xc4;
action = {
type: "Keypress";
keys: ["KEY_SYSRQ"];
};
}
);
}
);
@willwm

willwm commented Mar 25, 2026

Copy link
Copy Markdown
Author

Configuration

Logid uses a standard libconfig-style config file stored in /etc/logid.cfg by default (although you launch logid with the -c option to change it).

The config style may change in the future, however backwards-compatibility will be maintained.

For a sample config, see logid.example.cfg.

: and = are used for defining variables and are interchangeable. (e.g. name: "foo"; is the same as name = "foo";)

Ubuntu Manpage: logiops - configuration utility for Logitech input devices

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment