Skip to content

Add EVGA CLC liquid cooler controller (Asetek 690LC)#81

Open
UltronOfSpace wants to merge 1 commit intoCalcProgrammer1:masterfrom
UltronOfSpace:evga-clc-controller
Open

Add EVGA CLC liquid cooler controller (Asetek 690LC)#81
UltronOfSpace wants to merge 1 commit intoCalcProgrammer1:masterfrom
UltronOfSpace:evga-clc-controller

Conversation

@UltronOfSpace
Copy link
Copy Markdown

Summary

  • Adds USB controller for EVGA CLC 120/240/280/360 liquid coolers (Asetek 690LC platform, VID 0x2433, PID 0xB200)
  • Supports Direct, Fading, Blinking, and Rainbow (EVGA-specific) modes
  • Includes per-device color calibration stored in OpenRGB.json (R_Scale, G_Scale, B_Scale values 0-100)
  • Protocol implementation based on liquidctl's Asetek 690LC documentation

Files added

Controllers/EVGACLCController/
  EVGACLCController.h              — USB protocol driver
  EVGACLCController.cpp            — Asetek 690LC command implementation
  EVGACLCControllerDetect.cpp      — Device detection (libusb)
  RGBController_EVGACLC.h          — OpenRGB RGBController wrapper
  RGBController_EVGACLC.cpp        — Mode/zone/LED definitions + calibration

Device details

  • USB: VID 0x2433 (Asetek), PID 0xB200
  • Protocol: USBXpress bulk transfers (same init sequence as CorsairHydroController)
  • Commands: 0x10 (runtime config), 0x14 (firmware/status), 0x23 (rainbow speed)
  • Endpoints: Write 0x02, Read 0x82

Color calibration

The EVGA CLC pump LED has a warm phosphor bias. Default calibration (R:20%, G:20%, B:100%) compensates so white matches typical GPU LEDs. Users can adjust in OpenRGB.json:

"EVGA CLC": {
    "Calibration": {
        "R_Scale": 20,
        "G_Scale": 20,
        "B_Scale": 100
    }
}

Test plan

  • Tested on EVGA CLC 280 with Windows 11
  • Verified fixed color, fading, blinking, and rainbow modes
  • Confirmed device detection alongside ASUS TUF RTX 3070 Ti GPU
  • Calibration settings persist across restarts
  • Linux testing (should work — uses standard libusb)
  • macOS testing

Windows note

Requires WinUSB driver installed via Zadig to replace the default Asetek CCVI driver. The device appears as "690LC" in Zadig.

References

Add support for EVGA CLC 120/240/280/360 liquid coolers using the
Asetek 690LC platform (USB VID 0x2433, PID 0xB200).

Features:
- Fixed color (Direct mode)
- Fading between two colors
- Blinking with configurable speed
- Rainbow mode (EVGA-specific, 6 speed levels)
- Per-device color calibration via OpenRGB.json

The EVGA CLC pump head LED uses a warm phosphor that skews yellow
on white. Default calibration (R:20%, G:20%, B:100%) compensates
for this. Users can adjust via OpenRGB.json under "EVGA CLC" >
"Calibration" > R_Scale/G_Scale/B_Scale (0-100).

Protocol based on liquidctl's Asetek 690LC documentation:
https://github.com/liquidctl/liquidctl

Tested on EVGA CLC 280 with Windows 11. Requires WinUSB driver
(installable via Zadig) to replace the default Asetek CCVI driver.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant