Introduction
What OpenLogi is, what it does today, and how the documentation is organised.
OpenLogi documentation
OpenLogi configures Logitech mice and keyboards natively on Linux. It speaks
Logitech's own HID++ protocol directly over the kernel's hidraw interface, so
it talks to your hardware the same way the official Windows and macOS software
does — without a proprietary binary, a cloud account, or sudo.
What it does
Button remapping. Any reprogrammable control on the device can be bound to a keystroke, a media key, a mouse button, a shell command, a URL, or a workspace action.
Sensitivity. DPI is written into the device's own flash, so it persists across reboots and keeps working when OpenLogi is closed.
Battery and device information. Charge level, charging state, model, firmware version and serial number, read directly from the device.
Where to start
| Guide | What it covers |
|---|---|
| Installation | Packages, building from source, permission setup |
| Permissions | The privilege model, and why it looks the way it does |
| Architecture | How the protocol layer and input engine fit together |
| Troubleshooting | Device not detected, buttons not responding, permissions |
A note on scope
OpenLogi covers device configuration. Features of Logitech Options+ that depend on Logitech's cloud services — account sync and Flow cross-device control among them — are deliberately out of scope, because implementing them would mean building exactly the account-and-telemetry layer this project exists to avoid.
Project status
The HID++ protocol layer, the hardware probe and the desktop application are working. Profile persistence and per-application profile switching are designed but not yet implemented; see Architecture for how they fit in.
Source and issue tracker: github.com/mohin7/openlogi