Configure your Logitech mouse locally: battery percentage and charging status, DPI, SmartShift, button remapping, and application profiles.
OpenOptions+ is an independent, experimental desktop application inspired by Logi Options+. It combines an Italian-language Electron interface with a native Windows HID++ backend. Development was assisted by artificial intelligence, including Codex and REA for local application research, implementation, and testing.
Download for Windows x64 → · Italiano · Report an issue
| Feature | Current implementation |
|---|---|
| Battery monitor | Real battery percentage and charging indication when reported by the mouse |
| Logitech device discovery | Compatible HID++ 2 devices over Logi Bolt, supported USB receivers, or direct HID interfaces |
| Mouse DPI | Reads the sensor's supported values, writes only supported DPI, and checks the readback |
| SmartShift | Reads and changes automatic wheel shifting on compatible devices |
| Button remapping | Back, Forward, and middle-click: copy/paste, undo/redo, desktop, Task View, screenshot, media controls, and browser tabs |
| Per-application profiles | Automatically chooses a profile by the foreground executable's filename |
| Scrolling and pointer | Natural-scroll inversion and Windows pointer speed |
| Local settings | JSON import/export, local persistence, tray operation, and diagnostics |
No cloud account is required. No Logitech driver, application bundle, extracted code, or original artwork is distributed with this project.
- Open Releases.
- Download
OpenOptionsPlus-0.1.0-windows-x64.zipfrom Assets. The automatic “Source code” archives are for developers. - Extract the entire ZIP to a writable folder.
- Open
OpenOptions+.exeinside the extractedOpenOptions+folder.
The portable ZIP includes the Electron runtime. Node.js and npm are not needed to use the downloaded app. Keep the accompanying files next to the executable. The build targets Windows x64 and uses the system's .NET Framework 4.8; hardware testing has been performed on the development machine, not every Windows version.
The first release is experimental and unsigned. Publisher verification and automatic updates are not provided. Download from this repository's Releases page and follow your computer's software policy. SHA256SUMS.txt is provided beside the ZIP; PowerShell can calculate the downloaded file's hash with:
Get-FileHash .\OpenOptionsPlus-0.1.0-windows-x64.zip -Algorithm SHA256- Wake your mouse and click Aggiorna (Refresh). Battery readings refresh automatically every 30 seconds.
- Select the device to configure supported hardware settings.
- Open Impostazioni (Settings) to enable button remapping. It starts disabled.
- The X hides the window to the tray. Right-click the tray icon and choose Esci e disattiva le rimappature to exit completely.
Scope of input settings: button mappings and natural scrolling use a global Windows mouse hook and apply to all mice, including non-Logitech mice. Windows pointer speed is also global. DPI and SmartShift are device settings. Hardware and Windows pointer-speed changes can remain after closing the app; hook-based actions stop when the app exits. Imported profiles do not silently enable the hook.
Hardware verified: Logitech MX Master 3S through a Logi Bolt receiver. Real battery percentage, charging state, DPI values, and SmartShift state were read. Writing the existing DPI value and reading it back was verified. This is not a claim of compatibility with every Logitech mouse.
Other HID++ 2 devices may expose different features. Unsupported or unreadable controls are disabled. A sleeping device may require physical movement and Refresh. Logi Options+ running at the same time can compete for settings; avoid configuring the same mouse in both apps simultaneously.
Not implemented in this version:
- Logitech Flow / multi-computer control
- Smart Actions or custom macros
- Receiver pairing and firmware updates
- Keyboard key remapping or backlight configuration
- Proprietary gesture-button diversion
- Cloud backups and automatic updates
Keyboards can be discovered and may report a battery level, but this version configures mouse controls. Windows can block injected shortcuts into applications running with higher privileges. The UI is currently in Italian; translation contributions are welcome.
Requirements: Windows x64, Node.js 24 LTS (24.11+) with npm, and the .NET Framework C# compiler installed with Windows/.NET Framework 4.8.
git clone https://github.com/Kibra2025/OpenOptionsPlus.git
cd OpenOptionsPlus
npm ci
npm run install:runtime
npm run build:native
npm startBuild the same portable layout and ZIP used for Releases:
npm run package
npm run archiveOutput: dist/OpenOptions+/ and release/OpenOptionsPlus-0.1.0-windows-x64.zip. A release archive is refused if the portable output contains user data.
npm run test:syntax
npm test
npm run test:native
npm run test:desktopThe first three commands do not change device settings. The desktop smoke test uses isolated profiles and briefly enables a pass-through mouse hook; it also writes back the current Windows pointer speed. See verification notes and contributing.
Electron renderer → isolated preload API → main process → C# helper
├─ Windows HID / HID++
└─ Windows mouse hooks
renderer/— local UI and original SVG device illustrationsapp/— Electron lifecycle, validated IPC, and JSON persistencenative/LogiBridge.cs— HID discovery, HID++ feature requests, and input handlingscripts/— build and release packaging
The renderer runs with context isolation and sandboxing. It cannot access Node.js directly. The app uses feature discovery and device replies rather than fabricated demonstration devices. Local profiles and Chromium data are created in data/ next to a portable executable; they are excluded from this repository and release assets.
This project was created with substantial AI assistance. REA was used for static research on a locally installed application; that research had incomplete coverage. OpenOptions+ is an independent implementation, not a full reconstruction of Logi Options+ or its native driver. Public protocol references, including Solaar's HID++ documentation in source, informed the wire-format implementation.
AI-generated code and successful smoke tests do not establish correctness on all devices. Reproducible bug reports, hardware compatibility reports, code review, and tests are welcome. See third-party notices.
MIT — copyright 2026 Brayan Kidarame (Kibra2025) and contributors. Third-party components keep their own licenses.
OpenOptions+ is not affiliated with or endorsed by Logitech. Logi Options+, Logitech, Logi Bolt, MX Master, and SmartShift are trademarks of their respective owners.
Search terms describing this project: Logitech mouse configuration, Logi Options Plus alternative, MX Master 3S, Logi Bolt, HID++, mouse button remapping, DPI control, SmartShift, battery percentage, charging detection, Windows desktop utility, open source, AI-assisted software.

