Solaar/lib/logitech_receiver
Ken Sanislo b4d6025b29 HeadsetSignatureEffects: add 0x0622 firmware signature-effect slots
RGB headsets (e.g. G522) expose HEADSET_RGB_SIGNATURE_EFFECTS (0x0622)
— three firmware-played lighting slots: startup, shutdown, passive.
Each carries an on/off enable, a primary and secondary color, and a
speed.

Add a per-slot setting modeled on the keyboard boot-animation settings
(_RgbBootEffectSetting): a HETERO setting with the enable byte as a
Gtk.Switch plus two color pickers and a speed slider. The rw_class
bridges the firmware's split functions — get/setSignatureEffectParams
(colors + speed) and get/setSignatureEffectState (enable).

Slots are discovered by probing getSignatureEffectState per candidate
(0/1/2), so a device exposing only some slots gets only those
settings. getSignatureEffectsInfo (fn 0) is logged once at debug for a
later move to info-based discovery once its byte layout is confirmed.

Like the boot animations these run autonomously on the device
firmware, so they are not gated on host LED control.
2026-05-15 16:40:04 -07:00
..
__init__.py
advanced_para_eq.py G522 LIGHTSPEED headphones support 2026-05-15 14:29:03 -07:00
base.py G522 LIGHTSPEED headphones support 2026-05-15 14:29:03 -07:00
base_usb.py device: Support per-slot unpair on Lightspeed receivers (CLI + GUI) (#3183) 2026-04-17 09:34:58 -04:00
centurion.py G522 LIGHTSPEED headphones support 2026-05-15 14:29:03 -07:00
centurion_constants.py
common.py ui: Show offline status for receiver-paired device batteries (#3217) 2026-05-13 17:32:03 -04:00
descriptors.py G522 LIGHTSPEED headphones support 2026-05-15 14:29:03 -07:00
desktop_notifications.py
device.py G522 LIGHTSPEED headphones support 2026-05-15 14:29:03 -07:00
device_quirks.py Add RGB lighting persistence and software LED power management for G515 2026-05-13 19:03:44 -04:00
diversion.py
exceptions.py
headset_rgb.py G522 LIGHTSPEED headphones support 2026-05-15 14:29:03 -07:00
hidpp10.py
hidpp10_constants.py device: Handle composite IntFlag.name on Python < 3.11 (#3187) 2026-04-16 11:38:25 -04:00
hidpp20.py G522 LIGHTSPEED headphones support 2026-05-15 14:29:03 -07:00
hidpp20_constants.py Drop 0x0623 probe — feature is unmapped and not in G HUB 2026-05-15 14:29:03 -07:00
i18n.py
listener.py G522 LIGHTSPEED headphones support 2026-05-15 14:29:03 -07:00
logivoice.py G522 LIGHTSPEED headphones support 2026-05-15 14:29:03 -07:00
notifications.py G522 LIGHTSPEED headphones support 2026-05-15 14:29:03 -07:00
onboard_eq.py G522 LIGHTSPEED headphones support 2026-05-15 14:29:03 -07:00
receiver.py device: Support per-slot unpair on Lightspeed receivers (CLI + GUI) (#3183) 2026-04-17 09:34:58 -04:00
rgb_effects_probe.py Drop 0x0623 probe — feature is unmapped and not in G HUB 2026-05-15 14:29:03 -07:00
rgb_power.py rgb_control: honor the off state — don't auto-claim, init, or shutdown LEDs 2026-05-15 10:45:27 -04:00
settings.py G522 LIGHTSPEED headphones support 2026-05-15 14:29:03 -07:00
settings_new.py
settings_templates.py HeadsetSignatureEffects: add 0x0622 firmware signature-effect slots 2026-05-15 16:40:04 -07:00
settings_validator.py Add RGB lighting persistence and software LED power management for G515 2026-05-13 19:03:44 -04:00
special_keys.py