OpenLogi
Features

0x8020 · gamingMKeys

Control the M-key macro-bank buttons on a Logitech gaming keyboard — query or set the active profile bank and receive bank-change events from the device.

The gamingMKeys feature exposes control over the M-key (mode) buttons found on Logitech gaming keyboards. M-keys allow the user to switch the active macro profile bank — typically labelled M1, M2, and M3 — so that the G-keys and other programmable bindings can carry different assignments per bank without requiring host software intervention on every switch. This feature is relevant exclusively to gaming keyboards that physically include M-key buttons and works in close coordination with 0x8010 gamingGKeys, which governs the per-bank G-key assignments themselves.

Not implemented in OpenLogi

OpenLogi's vendored hidpp crate does not provide a typed wrapper for this feature yet. The notes below summarise the HID++ feature in general terms, not OpenLogi behaviour.

What it does

  • Bank discovery — provides a function to query the number of M-key banks supported by the device and which bank is currently active.
  • Bank selection — allows the host to set the active profile bank programmatically, mirroring the effect of the user pressing a physical M-key.
  • LED / indicator control — M-key state is typically reflected by a row of indicator LEDs; the feature may provide functions to read or override the illuminated indicator independently of the hardware-driven default.
  • Event reporting — when the user presses an M-key the device can emit HID++ events so the host is notified of the bank change and can update its own state (such as refreshing a displayed profile name) without polling.
  • Coordination with G-keys — M-key bank changes directly affect which G-key assignments (managed by 0x8010 gamingGKeys) are active; the two features are designed to be used together on the same device.

Status: Not implemented · Feature ID: 0x8020 · See also: 0x8010 gamingGKeys

On this page