feature: add support for Corsair Commander Duo (ARGB)#896
Open
ndizazzo wants to merge 1 commit into
liquidctl:mainliquidctl/liquidctl:mainfrom
ndizazzo:feature/corsair-commander-duo-supportndizazzo/liquidctl:feature/corsair-commander-duo-supportCopy head branch name to clipboard
Open
feature: add support for Corsair Commander Duo (ARGB)#896ndizazzo wants to merge 1 commit intoliquidctl:mainliquidctl/liquidctl:mainfrom ndizazzo:feature/corsair-commander-duo-supportndizazzo/liquidctl:feature/corsair-commander-duo-supportCopy head branch name to clipboard
ndizazzo wants to merge 1 commit into
liquidctl:mainliquidctl/liquidctl:mainfrom
ndizazzo:feature/corsair-commander-duo-supportndizazzo/liquidctl:feature/corsair-commander-duo-supportCopy head branch name to clipboard
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add Corsair Commander DUO support
Add a new Corsair Commander DUO driver with fan status/control, ARGB lighting,
and capture-backed Device Memory lighting support.
The driver supports the DUO's two PWM fan channels and two standard 5 V ARGB
ports. Software lighting supports
offandfixed, while Device Memorylighting supports
off,fixed, andrainbowthrough--non-volatile.Device Memory lighting is intentionally limited to the observed global hardware
lighting endpoint (
65 6d): fixed/off use the captured7e 20payload format,and rainbow uses the captured
02 a4payload. The implementation deliberatelydoes not write the nearby
61/62/63 6dendpoints because the captures andCommander Core protocol parallels indicate those are cooling/profile data.
The user guide and protocol notes document the remaining limitations: DUO
hardware lighting is global rather than per-port, iCUE LINK devices are not
supported by this driver, and advanced Device Memory effects such as speed,
direction, palettes, readback APIs, and broader hardware profile management are
out of scope for this change.
Hardware verification was performed on a Commander DUO. Persistent rainbow and
persistent fixed
3200ff(50R 0G 255B) were written with--non-volatileandvisually confirmed to persist.
Related: Commander DUO USB captures used for protocol reverse engineering.
Checklist:
docs/*guide.mddevice guides, with "new/changed in" notesliquidctl.8Linux/Unix/Mac OS man pagedocs/developer/protocolNew CLI flag?
extra/completions/New device?
extra/linux/71-liquidctl.rules(instructions in the file header)gitMRLVNew driver?
docs/developer/protocol/Verification performed:
lsp_diagnosticsclean forliquidctl/driver/__init__.py,liquidctl/driver/commander_duo.py, andtests/test_commander_duo.py.venv/bin/python -m py_compile liquidctl/driver/__init__.pyliquidctl/driver/commander_duo.py tests/test_commander_duo.py.venv/bin/python -m pytest tests/test_commander_duo.py(22 passed)commander_duoregistrationgit diff --checkfor tracked PR files