RE of lghub_agent.arm64 (see HEADSET_RGB_HOSTMODE_WIRE_PROTOCOL.md) corrected the canonical protocol doc: FrameEnd byte 0 is a frame_type tag where 0x01 = transient commit and 0x02 = persistent/final flush. The firmware silently discards frames sent with byte 0 = 0x00 — the HID++ ACK succeeds but the staged color writes are never committed. This is why SetRgbZonesSingleValue appeared to succeed but LEDs never changed color on the tester's G522. The canonical doc's "For basic usage, all parameter bytes can be set to 0x00" is wrong. Change FrameEnd payload from `\x00\x00\x00\x00` to `\x01\x00\x00\x00`. Also worth noting (not fixed here): firmware auto-releases the host-mode claim if no Set+FrameEnd traffic arrives within a few seconds. HeadsetRGBColor already re-issues SetHostModeState(1) on every color change (the LGHUB "on-demand" model), so that covers the common case. HeadsetRGBHostMode toggle alone will still appear to "not stick" in GetHostModeState after the firmware release window — that's the firmware's behavior, not a bug. |
||
|---|---|---|
| .github | ||
| bin | ||
| docs | ||
| lib | ||
| po | ||
| rules.d | ||
| rules.d-uinput | ||
| share | ||
| tests | ||
| tools | ||
| .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 | ||
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
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:
- Arch solaar package in the extra repository
- Ubuntu/Kubuntu package in Solaar stable ppa
- NixOS Flake package in Svenum/Solaar-Flake
Solaar is available from some other repositories but may be several versions behind the current version:
- a Debian package, courtesy of Stephen Kitt
- a Ubuntu package is available from universe repository
- a Gentoo package, courtesy of Carlos Silva and Tim Harder
- a Mageia package, courtesy of David Geiger