AprilNEA / AprilNEA/OpenLogi

[Bug]: OpenLogi overrides DPI settings after every reboot

Open
#1,205 0 comments 0 reactions 0 assignees View on GitHub
needs: triage type: bug
Dominant language
Rust
Stars
21k
Forks
675
Avg merge
2d 5h
Merged PRs (30d)
172

Description

### Pre-flight checklist

- [x] I searched [existing issues](https://github.com/AprilNEA/OpenLogi/issues?q=is%3Aissue) and this is not a duplicate.
- [x] I am on the [latest release](https://github.com/AprilNEA/OpenLogi/releases/latest) or a recent `master` build.
- [x] I quit **Logi Options+** before running OpenLogi (the two apps fight over HID++ access and only one can own a receiver at a time).

### Which part of OpenLogi?

GUI (desktop app)

### OpenLogi version

0.8.3

### Operating system

Linux

### OS version & architecture

Arch x86_64

### Device model

MX Master 3

### How is the device connected?

Bluetooth (direct, no receiver)

### Affected area(s)

- [ ] Device discovery / detection
- [ ] Button remapping
- [x] DPI control
- [ ] SmartShift
- [ ] Per-application profiles
- [ ] Battery status
- [x] Settings / configuration (TOML)
- [ ] Auto-update
- [ ] Menu bar / tray
- [ ] Other

### What happened?

Every time I log into my Linux install (after password prompt), my mouse settings are different than the one I set in the OS itself.

I only use OpenLogi for the ratchet function, because I hate freewheel. I have not touched any settings in OpenLogi except the "permanent ratchet" function. Very annoying that my perfected OS mouse settings are overwritten every time with annoying new settings I can't finetune enough (also the reason I have "autostart" turned off). There is no option in OpenLogi to also disable mouse acceleration, which I have always turned off.

PS:
There is no Options+ for Linux as stated above. As far as I know there is no Linux version of Options+, but I couldn´t make this bugreport without ticking that box. The only OS on this hardware, is the current installation of Arch. No Windows to be seen here.

### Steps to reproduce

1. Install OpenLogi
2. Reboot

### Diagnostics report

```markdown
### OpenLogi Diagnostics

**App**
- OpenLogi (GUI): v0.8.3 (release)
- Agent: v0.8.3 (connected)
- IPC protocol: GUI 29 / agent 29
- Inventory: ready
- OS: Linux (x86_64)
- Locale: en-GB (UI: follow system)
- Accessibility: granted · Input hook: not installed
- Launch at login: no · Menu bar: yes · Update check: off
- Running from: source build (dev)
- Config: schema 7 · 2 configured device(s) · thumbwheel 14

**Assets**
- Source: user cache · Index: loaded (210 models) · User cache: present
- Cache path: ~/.local/share/openlogi/assets · Bundle assets: absent

**Devices (2)**
- MX Master 3 — mouse (codename: Wireless Mouse MX Master 3)
- Connection: Bluetooth (direct) · Online: yes · Battery: 100% (discharging, full)
- Capabilities: buttons=yes, pointer=yes, lighting=no
- DPI: 1000 dpi (range 200–4000, 77 steps)
- Model: 0b023 (model-ids: b023/4082/0000, ext-model: 00)
- Transports: eQuad, BTLE
- Render: mx_master_3 · direct
- G513 — keyboard (codename: G512 RGB MECHANICAL GAMING KEYBOARD)
- Connection: Wired (USB) · Online: yes · Battery: n/a
- Capabilities: buttons=yes, pointer=no, lighting=yes
- DPI: unsupported
- Model: 6c33c (model-ids: c33c/0000/0000, ext-model: 06)
- Transports: USB
- Render: g513 · direct
```

### `openlogi list` output

```text
(inventory read from the running agent)
Logitech G512 RGB MECHANICAL GAMING KEYBOARD (—, vid=046d pid=c33c)
└─ slot 255 ● G512 RGB MECHANICAL GAMING KEYBOARD (keyboard, wpid=?, battery=—)
model_ids=[c33c,0000,0000] ext=06 serial=— unit_id=32394703 transports=usb

Logitech Wireless Mouse MX Master 3 (—, vid=046d pid=b023)
└─ slot 255 ● Wireless Mouse MX Master 3 (mouse, wpid=?, battery=100% full (discharging))
model_ids=[b023,4082,0000] ext=00 serial=— unit_id=fedefbad transports=equad+btle
```

### Logs

```shell
The commands above give an error on Bash. No logical (without being a programmer) way to open verbose logging from CLI.
```

### macOS permissions (if applicable)

- [ ] OpenLogi has **Accessibility** permission (needed to remap buttons via the event tap).
- [ ] OpenLogi has **Input Monitoring** permission (needed for Bluetooth-direct devices and capture).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the reboot and login sequence with OpenLogi 0.8.3, then inspect the TOML configuration used by the GUI and agent before and after login. Run `openlogi list` to confirm the MX Master 3 connection and reported DPI. The issue is done when enabling permanent ratchet no longer overwrites the user's existing DPI or pointer settings.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.