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 Buttons page with device render and callout hotspots
Buttons page β€” interactive device render with hotspot callouts for each button

✨ 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

πŸ–₯️ Desktop Environment Support

Feature KDE Plasma 6 GNOME XFCE / Cinnamon Hyprland / Sway Other
Button remapping βœ… βœ… βœ… βœ… βœ…
DPI / SmartShift / Scroll βœ… βœ… βœ… βœ… βœ…
Thumb wheel modes βœ… βœ… βœ… βœ… βœ…
Gesture actions βœ… βœ… βœ… βœ… βœ…
Per-app profiles βœ… πŸ”œ Planned ❌ ❌ ❌
Auto profile switching βœ… πŸ”œ Planned ❌ ❌ ❌
Block shortcuts during capture βœ… πŸ”œ Planned ❌ ❌ ❌
System tray βœ… βœ… βœ… βœ… βœ…

Note

All device configuration works on every DE β€” it's pure HID++ over hidraw. Per-app profile switching requires desktop-specific integration for window focus tracking.

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.

πŸ“Έ Screenshots

Buttons page with device render and hotspot callouts
Buttons page β€” interactive device render with labeled hotspots for each configurable button

Buttons page with Actions panel open
Buttons page β€” Actions panel showing the full list of assignable actions

Point & Scroll page with DPI, SmartShift, and scroll controls
Point & Scroll page β€” DPI slider, SmartShift toggle, hi-res scroll, and thumb wheel mode

Point & Scroll page with scroll wheel detail panel open
Point & Scroll β€” scroll wheel detail panel with per-setting controls

Settings page with device info, toggles, and buttons
Settings page β€” device info, debug logging toggle, and bug report button

Easy-Switch page with back view and channel list
Easy-Switch page β€” back view of device with paired host channel list


Logitune Wiki


🏠 Home

πŸ“š User Guide

πŸ—οΈ Architecture

πŸ”§ Extending

πŸ§ͺ Quality

Clone this wiki locally

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