OpenLogi

0x8080 · perKeyLighting

Legacy per-key RGB lighting control — query populated zone IDs, stage per-zone colours, and commit a frame to the display with optional non-volatile persistence.

An earlier HID++ 2.0 per-key (per-zone) RGB lighting control feature targeting RGB keyboards and other Logitech peripherals with individually addressable LED zones. It defines a staged commit model — zone colours are written in one or more requests and then committed to the device display in a single frame-end call — and a mechanism for querying which zone IDs are physically present on the device. 0x8081 perKeyLighting2 is the revised successor to this feature and is what OpenLogi's vendored hidpp crate implements.

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. OpenLogi instead relies on 0x8081 perKeyLighting2 where applicable.

What it does

It is the protocol 0x8081 was derived from:

  • Zone presence — ask which zone IDs are populated, so only valid targets are addressed.
  • Colour staging — write RGB values to single zones or groups without immediately changing the display.
  • Frame commit — a dedicated call flushes the staged colours to the hardware and controls frame-timing parameters, with an option to persist the result to non-volatile storage.
  • Setter variants — like its successor, it likely has setters trading zones-per-request against selection flexibility (individual, consecutive, range-based).

Because 0x8081 is the deployed successor, devices that report 0x8080 are older models; the two features share the same conceptual model but differ in the precise function table and payload layout. Do not rely on this page for wire-format details; consult the official Logitech HID++ specification for 0x8080 directly.

Status: Not implemented · Feature ID: 0x8080 · See also: 0x8081 perKeyLighting2

On this page