Skip to content

Navigation Menu

Sign in
Sign up
Mina Maher edited this page Apr 1, 2026 · 10 revisions

🏠 Logitune

Logitune icon

Native Linux configurator for Logitech HID++ peripherals

CI License Qt C++


Logitune is a native Linux configurator for Logitech HID++ peripherals, starting with the MX Master 3S. It communicates directly with the device over hidraw using the HID++ 2.0 protocol β€” no Solaar, no logiops, no daemon. Just a Qt 6 / QML desktop application with a system tray icon.

Logitune Settings page
Settings page β€” debug logging, bug report, about info

✨ What It Does

Feature Description
🎯 Per-application profiles DPI, SmartShift, scroll, button assignments, and gestures switch automatically when you change window focus
πŸ”€ Button remapping Assign keystrokes, app launches, gesture triggers, or SmartShift toggle to any configurable button
πŸ–οΈ Gesture system Hold the gesture button and swipe up/down/left/right or click for five independent actions
πŸ”„ Thumb wheel modes Horizontal scroll, zoom (Ctrl+scroll), or volume control
βš™οΈ SmartShift control Toggle ratchet/freespin mode and adjust the auto-disengage threshold
πŸ“œ Hi-res scroll Toggle high-resolution scrolling and natural (inverted) direction
🎚️ DPI slider 200 to 8000 DPI in 50-step increments
πŸ”‹ Battery monitoring Real-time level and charging status in the system tray
πŸ”Œ Easy-Switch View paired hosts and active slot
πŸ”ƒ Transport failover Seamlessly switch between Bolt receiver and Bluetooth connections
πŸ› Crash reporting Built-in crash handler with one-click GitHub issue filing

Tip

The UI is modeled after Logitech's Options+ application β€” a sidebar navigation with pages for Point & Scroll, Buttons, Easy-Switch, and Settings, plus a profile bar at the bottom.

πŸ—ΊοΈ Quick Links

Page Description
πŸ“š Getting Started Installation, first run, permissions, UI overview
πŸ”¨ Building Build from source, Flatpak, devcontainer, CI
πŸ—οΈ Architecture System design, signal flow, MVVM, HID++ protocol layer
πŸ–±οΈ Adding a Device Step-by-step guide to adding support for a new Logitech device
πŸ–₯️ Adding a Desktop Environment How to add GNOME, Hyprland, or other DE support
πŸ§ͺ Testing Test philosophy, tiers, infrastructure, how to write tests
🀝 Contributing Fork workflow, code style, commit format, PR checklist
πŸ”Œ HID++ Protocol Deep dive into HID++ 2.0, feature discovery, report format

πŸ“Š Project Status

Note

Logitune is in early development. The MX Master 3S is the first and currently only supported device. The architecture is designed to make adding new devices straightforward β€” see Adding a Device.

πŸ–±οΈ Supported Devices

Device PID Connection Status
βœ… MX Master 3S 0xb034 Bolt / Bluetooth Fully supported

πŸ–₯️ Supported Desktop Environments

DE Compositor Focus Tracking Status
βœ… KDE Plasma 6 KWin KWin script via D-Bus Fully supported
⚠️ Generic (X11) Any Polling fallback Basic support

Important

Want to add support for your device or desktop environment? Check out Adding a Device and Adding a Desktop Environment for step-by-step guides.


Logitune Wiki


🏠 Home

πŸ“š User Guide

πŸ—οΈ Architecture

πŸ”§ Extending

πŸ§ͺ Quality

Clone this wiki locally

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /