0x1b00 · reprogControls
Early-generation control enumeration and diversion — query the device's programmable button table and redirect individual controls to HID++ events.
reprogControls is an earlier-generation HID++ 2.0 feature for enumerating and
diverting the physical controls (buttons, function keys, hotkeys) on Logitech
mice and keyboards. It defines the foundational control-table model — each entry
carries a control ID, a default task ID, and a set of capability flags — with
functions to query that table and to switch individual controls between their
default HID report behaviour and HID++ event diversion. The feature was
later superseded by 0x1b04 (specialKeysMSEButtons / reprogControlsV4), which
adds persistent diversion, raw-XY and raw-wheel event streams, analytics key
events, group masking, and the v6 capability query.
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 0x1b04 reprogControls4/specialKeysMSEButtons where applicable.
What it does
- Control enumeration — one function reports how many programmable controls the device has; another fetches each descriptor by index, with its default task ID and capability flags (reprogrammable, divertable).
- Control diversion — read and write the diversion state per control ID; a diverted control stops sending its usual HID report and emits HID++ events instead.
- Button events — broadcasts the set of currently pressed diverted controls as HID++ events, so host software can respond to them without tying up HID report bandwidth.
- Earlier protocol revision — compared with
0x1b04, this version has a narrower flag set and does not include persistent diversion, raw pointer deltas, raw wheel deltas, or analytics reporting. Devices that advertise only0x1b00predate those capabilities.
Status: Not implemented · Feature ID:
0x1b00· See also: 0x1b04 reprogControls4/specialKeysMSEButtons