AprilNEA / AprilNEA/OpenLogi

[Feature]: Channel button on keyboard to switch a channel on mouse as well

Open
#883 0 comments 0 reactions 0 assignees View on GitHub
needs: triage type: feature
Dominant language
Rust
Stars
21k
Forks
675
Avg merge
1d 6h
Merged PRs (30d)
180

Description

### Pre-flight checklist

- [x] I searched existing issues and the [Roadmap](https://github.com/AprilNEA/OpenLogi#roadmap), and this isn't already tracked.

### Problem / motivation

Just came across this great piece of software. Currently, I'm using https://github.com/marcelhoffs/input-switcher with MX Keys S and MX Master 3S. I had to find out about devices' IDs, and once done, .bat and .vbs files are edited, so when a button is pressed it sends a signal to change a channel to 1, 2, or 3 on both the keyboard and a mouse.

### Proposed solution

I saw there's an option to change channel buttons (F13, F14, F15) and run shell command. I'm not sure is it possible to run a command like this
`.\hidapitester.exe --vidpid 046D/B378 --usage 0x0202 --usagePage 0xff43 --open --length 11 --send-output 0x11,0x00,0x0A,0x1E,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00`

but is it possible to add an option, so once vidpid of a device is provided, it automatically switch channel on that device? For example, pressing channel 1 button on a keyboard, to switch a channel to 1 on a mouse as well.

### Alternatives considered

_No response_

### Related area(s)

- [x] GUI
- [ ] CLI
- [x] Button actions / remapping
- [ ] DPI
- [ ] SmartShift
- [ ] Per-application profiles
- [ ] Configuration (TOML)
- [ ] Auto-update
- [ ] Other

### Additional context

_No response_

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the GUI channel-button handling and the existing shell-command action, then trace how HID++ devices are identified and commands are sent. Confirm how a keyboard channel action can target a second device by VID/PID and define behavior for channels 1, 2, and 3. Done means pressing a channel button switches the configured mouse channel as well.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
desktop
Issue type
Feature
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.