[Bug]: MX Master 3 keeps disconnecting
- Dominant language
- Rust
- Stars
- 21k
- Forks
- 675
- Avg merge
- 1d 6h
- Merged PRs (30d)
- 180
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.6.16
### Operating system
macOS
### OS version & architecture
macOS 26.5.1
### Device model
MX Master 3
### How is the device connected?
Other / not sure
### Affected area(s)
- [x] Device discovery / detection
- [ ] Button remapping
- [ ] DPI control
- [ ] SmartShift
- [ ] Per-application profiles
- [ ] Battery status
- [ ] Settings / configuration (TOML)
- [ ] Auto-update
- [ ] Menu bar / tray
- [ ] Other
### What happened?
My mouse keeps disconnecting, so when my machine eventually goes to sleep my scrolling doesn't work as expected anymore.
Also, the openlogi CLI wasn't installed with Homebrew when I installed the cask. I thought it was supposed to install alongside eachother.
I have tried going back multiple versions, but to no avail. I have tried both installing using Homebrew and directly from GitHub releases.
My device is using the Unify receiver.
My first initial connection was excellent, but when I came back to my machine, it didn't connect. And when I "force" it to connect by readding it, it disconnects after a few seconds.
https://github.com/user-attachments/assets/59225c5a-8745-4b81-a0c7-d2f6b28cda3b
### Steps to reproduce
1. Leave machine unattended (wait for sleep)
2. Try to use mouse with config
3. Doesn't work…
4. "Force" reconnecting by readding
5. Disconnects after a few seconds.
### Diagnostics report
```markdown
### OpenLogi Diagnostics
**App**
- OpenLogi (GUI): v0.6.16 (release)
- Agent: v0.6.16 (connected)
- IPC protocol: GUI 8 / agent 8
- Inventory: ready
- OS: macOS 26.5.1 (arm64)
- Locale: nb-NO (UI: en)
- Accessibility: granted · Input hook: installed
- Launch at login: yes · Menu bar: yes · Update check: off
- Running from: source build (dev)
- Config: schema 3 · 1 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 (1)**
- MX Master 3 — mouse
- Connection: unknown · Online: no · Battery: n/a
- Capabilities: buttons=yes, pointer=yes, lighting=no
- Model: receiver:c198da01:slot:3
- Render: mx_master_3 · Slot 0
**Receivers (1)**
- Unifying Receiver (VID 046d / PID c52b)
```
### `openlogi list` output
```text
```
### Logs
```shell
```
### macOS permissions (if applicable)
- [x] OpenLogi has **Accessibility** permission (needed to remap buttons via the event tap).
- [x] OpenLogi has **Input Monitoring** permission (needed for Bluetooth-direct devices and capture).
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with OpenLogi's device discovery and connection handling for macOS Unifying receivers, using the diagnostics report for the MX Master 3 as the reproduction context. Reproduce sleep, reconnect, and re-add behavior with the receiver, then verify the device remains online and usable after wake without forced re-adding.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- macos, rust
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100