Linux device manager for Logitech devices
Go to file
Ken Sanislo ad3d761118 Add basic headset RGB support (HeadsetRGBHostMode + HeadsetRGBColor)
First pass at controlling the G522's RGB LEDs via feature 0x0620
HEADSET_RGB_HOSTMODE. Exposes two settings:

1. headset-rgb-hostmode — boolean toggle for SetHostModeState
   (function 8). Turning this on claims LED control; off returns
   control to firmware effects.

2. headset-rgb-color — preset color chooser (Off, Red, Green, Blue,
   White, Yellow, Cyan, Magenta, Orange, Purple). On write it enables
   host mode, queries zone IDs via GetRGBZoneInfo (function 1), calls
   SetRgbZonesSingleValue (function 5) with the chosen RGB, then
   commits via FrameEnd (function 6). "Off" issues SetHostModeState(0)
   only.

Protocol reference: ~/ghub/LOGITECH_HIDPP2_PROTOCOL.md functions on
0x0620. We skip the SetSWControl on 0x0600 step because the G522
doesn't expose 0x0600. If the device rejects host-mode writes without
that prerequisite we'll add it back.

Falls back to zones 0x01/0x02 (typical left/right earcup) if
GetRGBZoneInfo returns an unexpected format.
2026-05-10 15:39:17 -07:00
.github
bin
docs docs: document haptic capability 2026-04-18 16:31:17 -04:00
lib Add basic headset RGB support (HeadsetRGBHostMode + HeadsetRGBColor) 2026-05-10 15:39:17 -07:00
po Update sv.po 2026-04-22 00:45:08 -04:00
rules.d
rules.d-uinput
share
tests Use per-index queries for Centurion sub-device feature enumeration 2026-05-10 15:39:17 -07:00
tools Add installation guide for Solaar on RHEL 10 (#3158) 2026-03-08 20:54:31 -04:00
.coveragerc
.git-blame-ignore-revs
.gitignore
.pre-commit-config.yaml
.python-version
CHANGELOG.md
COPYRIGHT
LICENSE.txt
MANIFEST.in
Makefile
README.md
RELEASE.md
RHEL.md
Release_Notes.md
mkdocs.yml
pyproject.toml
release.sh
setup.py Add per-key RGB color painter and replace MAP_CHOICE color validator 2026-05-10 17:52:55 -04:00

README.md

Solaar

Solaar is a Linux manager for many Logitech keyboards, mice, and other devices that connect wirelessly to a Unifying, Bolt, Lightspeed or Nano receiver as well as many Logitech devices that connect via a USB cable or Bluetooth. Solaar is not a device driver and responds only to special messages from devices that are otherwise ignored by the Linux input system.

More Information - Usage - Capabilities - Rules - Manual Installation - Known Issues

codecov License: GPL v2

 

 

Solaar supports:

  • pairing/unpairing of devices with receivers
  • configuring device settings
  • custom button configuration
  • running rules in response to special messages from devices

For more information see the main Solaar documentation page. -

Installation Packages

Up-to-date prebuilt packages are available for some Linux distros (e.g., Fedora) in their standard repositories. If a recent version of Solaar is not available from the standard repositories for your distribution, you can try one of these packages:

Solaar is available from some other repositories but may be several versions behind the current version: