Skip to content

feat(hid): recognise Nano receiver 046d:c534 (MK270, MK295) - #1456

Open
4ni1ak wants to merge 2 commits into
AprilNEA:masterfrom
4ni1ak:feat/mk295-nano-receiver-c534
Open

4ni1ak wants to merge 2 commits into
AprilNEA:masterfrom
4ni1ak:feat/mk295-nano-receiver-c534

Conversation

@4ni1ak

@4ni1ak 4ni1ak commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

Summary

  • crates/openlogi-device-registry/src/receiver.rs's RECEIVERS table had no entry for USB product ID 0xc534 — the Nano receiver bundled with budget wireless combos such as the MK270 and MK295 — so OpenLogi never enumerated the receiver or the paired keyboard/mouse at all.
  • Added the entry, cross-checked against Solaar's NANO_RECEIVER_C534 as an established reference implementation (same nano-receiver family already covered here by the neighboring 0xc537 entry from feat(hid): support G602 nano receiver #684).
  • openlogi-device-registry::receiver::RECEIVERS is the single source of truth other lookups (find_receiver, crates/openlogi-core/src/hid/route.rs) already consume, so this one-line addition is sufficient — no other list needed updating.

Changes

  • crates/openlogi-device-registry: register 046d:c534 as a Nano-brand, Unifying-protocol receiver.

Testing

  • cargo fmt --all -- --check
  • cargo clippy --workspace --all-targets -- -D warnings
  • cargo test --workspace
  • RUSTDOCFLAGS="-D warnings" cargo doc --workspace --no-deps --document-private-items --exclude openlogi-ui --exclude openlogi-desktop --exclude openlogi-overlay --exclude openlogi-agent
  • Not runtime-tested against real MK270/MK295 hardware — that verification is the maintainer's call; the reporter's openlogi list/Device Manager output (hardware ID VID_046D&PID_C534) is what this fix targets.

Fixes #866

The receiver-identity registry had no entry for USB product ID 0xc534,
the Nano receiver bundled with budget wireless combos such as the
MK270 and MK295, so OpenLogi never enumerated it or the paired
keyboard/mouse. Cross-checked against Solaar's NANO_RECEIVER_C534 as
the established reference implementation, alongside the neighboring
0xc537 Nano receiver already registered here.

Fixes AprilNEA#866
@4ni1ak
4ni1ak requested a review from AprilNEA as a code owner September 17, 2026 04:07
@greptile-apps

greptile-apps Bot commented Sep 17, 2026

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

The PR appears safe to merge; the receiver registration is now protected by focused lookup coverage.

Summary

The PR registers Logitech Nano receiver 046d:c534 as using the Unifying protocol and adds focused regression coverage for its lookup mapping.

  • Adds the Nano receiver descriptor to the central receiver registry.
  • Verifies lookup by vendor/product ID, receiver brand, and protocol.
  • Fully addresses the previously reported lack of direct regression coverage.

Reviews (2) · Last reviewed commit: "test(hid): pin the new c534 receiver's e..."

Comment thread crates/openlogi-device-registry/src/receiver.rs
receiver_identities_are_unique only proves no duplicate identity was
introduced; it says nothing about whether 0xc534 resolves to the right
brand and protocol. Adds a focused regression test alongside the existing
one for the c54d receiver.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Device]: Logitech MK295 (Nano Receiver, PID_C534) not detected

1 participant