logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

liquidctl - monitor and control liquid coolers and other devices

Description

liquidctl  is a utility for overseeing and controlling some hardware monitoring devices not yet supported
       at the kernel level.  Because liquidctl directly accesses  the  hardware  devices,  root  privileges  are
       generally required, though this can be avoided with appropriate udev rules.

       liquidctllist  outputs  all  compatible  devices  found on the system.  In case more than one device is
       found, the desired one can be selected for later  invocations  with  --match=substring,  where  substring
       matches part of the desired device's description using a case insensitive comparison.

       liquidctllist--verbose  enables  the display of additional identifiers and addresses that can also be
       used to select specific devices.  These can be  better  suited  for  certain  use  cases,  such  as  non-
       interactive scripts.

       liquidctlinitialize  prepares  a  device for later commands, and most devices must be initialized after
       every boot or when resuming from a suspended state.  Unless finer control is required, all devices can be
       initialized at once with liquidctlinitializeall.  Some devices may  output  some  information  at  this
       stage.

       liquidctlstatus displays the status of all devices that match the provided filtering options.

       liquidctlsetchannelspeed allows the user to set fan and pump speeds.  These, depending on the device,
       can be set to fixed duty values, variable temperature\[u2013]duty curves, or both.

       liquidctlsetchannelcolor allows the user to configure and  set  lighting  modes.   Supported  lighting
       modes  and additional options vary by device and are listed in later sections of this manual.  Each color
       can be specified as:

       •      hexadecimal RGB with or without prefix '0x': ff7f3f;

       •      decimal RGB triple, R,G,B ∊ [0, 255]: rgb(255,127,63);

       •      hue-saturation-value HSV triple, H ∊ [0, 360], S,V ∊ [0, 100]: hsv(20,75,100);

       •      hue-saturation-lightness HSL triple, H ∊ [0, 360], S,L ∊ [0, 100]: hsl(20,100,62).

       liquidctlsetchannelscreen allows the user to configure the LCD screen integrated into some AIO models.

       liquidctl automatically detects when a kernel driver is bound to the device and, whenever possible,  uses
       it  instead  of  directly accessing the device.  Alternatively, direct access to the device can be forced
       with --direct-access.

Device Specifics

AquacomputerD5NextAquacomputerFarbwerk360AquacomputerOctoAquacomputerQuadro
       Cooling channels: (D5 Next): fan,  pump;  (Octo):  fan[1-8];  (Quadro:)  fan[1-4];  (Farbwerk  360:)  not
       applicable.

       Lighting channels: not yet supported.

   ASUSRyujinII360
       Cooling channels: pump, fans, pump-fan, external-fans.

       Screen: not yet supported.

   CorsairiCUEEliteCapellixH100i,H115i,H150iCorsairCommanderCoreCorsairCommanderCoreXTCorsairCommanderST
       Cooling channels: fans, fan[1-6]; (only non-XT/Elite Capellix:) pump.

       Lighting channels: not yet supported.

   CorsairCommanderProCorsairLightingNodeProCorsairLightingNodeCoreCorsairObsidian1000D
       Cooling channels (only Commander Pro and Obsidian 1000D): sync, fan[1-6].

       Where  the  fan  connection  types can be set with --fan-mode=channel:mode[,...], where the allowed modes
       are: off, dc, pwm.

       Lighting channels: (only Lighting Node Core:) led; (only Commander Pro  and  Lighting  Node  Pro:)  sync,
       led[1-2].
       Mode          #colors
       ──────────────────────────
       clear            0
       off              0
       fixed            1
       color_shift      2
       color_pulse      2
       color_wave       2
       visor            2
       blink            2
       marquee          1
       sequential       1
       rainbow          0
       rainbow2         0

       When  applicable  the  animation speed can be set with --speed=value, where the allowed values are: fast,
       medium, slow.

       The animation direction can be set with --direction=value, where  the  allowed  values  are:  forward  or
       backward.  --start-led=number, the first LED that the lighting effect should be for.  --start-led=number,
       the  first LED that the lighting effect should be for.  --maximum-led=number, the number of LEDs that the
       lighting effect should applied to.  --temperature-sensor=number, The temperature sensor  that  should  be
       used to control the fan curves, probe 1 by default.

   CorsairHydroH110iGT
       Cooling channels: fan1, fan2.

       Pump mode (initialize--pump-modemode): quiet (default), extreme.

       Lighting channels: not yet supported.

   CorsairHydroH80iGT,H100iGTX,H110iGTXCorsairHydroH80iv2,H100iv2,H115iEVGACLC120(CL12),240,280,360
       Cooling channels: pump, fan.

       Lighting channels: logo.
       Mode       #colors               notes
       ────────────────────────────────────────────────────
       rainbow       0      only available on EVGA coolers
       fading        2
       blinking      1
       fixed         1
       blackout      0        no high-temperature alerts

       The  rainbow  mode  speed  can be configured with --speed=[1–6].  The speed of the other modes is instead
       customized with --time-per-color (fading and blinking) and --time-off (blinking only).

       All modes except blackout support a visual high-temperature alert configured with  --alert-threshold  and
       --alert-color.

       All  current settings can be saved on non-volatile on-board memory by passing --non-volatile to any write
       command.  However, since write-cycles are limited, this option should be used sparingly.

   CorsairH100iPro,H115iPro,H150iPro
       Cooling channels: fan, fan[1–2]; (only H150i Pro:) fan3.

       Pump mode (initialize--pump-modemode): quiet, balanced (default), performance.

       Lighting channel: logo.
       Mode       #colors
       ───────────────────
       alert         3
       shift        2–4
       pulse        1–4
       blinking     1–4
       fixed         1

   CorsairHydroH100iPlatinum,H100iPlatinumSE,H115iPlatinumCorsairHydroH60iProXT,H100iProXT,H115iProXT,H150iProXTCorsairHydroH100i,H115i,H150iEliteRGB
       Cooling channels: fan, fan[1–2]; (only H150i Pro XT/Elite RGB:) fan3.

       Pump mode (initialize--pump-modemode): quiet, balanced (default), extreme.

       Lighting channels: sync, led.
       Channel   Mode          #colors (Platinum)   #colors (Pro XT/Elite RGB)   #colors (Platinum SE)
       ────────────────────────────────────────────────────────────────────────────────────────────────
       ledoff                   0                        0                          0
       ledfixed                 1                        1                          1
       ledsuper-fixed           24                       16                        48

   MSIMPGCoreliquidK360
       Cooling channels: fan1, fan2, fan3, fans, waterblock-fan, pump.

       Lighting channels: sync.

       LCD screens: lcd.
       Mode                         #colors
       ─────────────────────────────────────────────
       disable                         0
       steady                          1
       blink                           0
       breathing                       1
       clock                           2
       colorpulse                     0
       colorring                      0
       colorringdoubleflashing      0
       colorringflashing             0
       colorshift                     0
       colorwave                      2
       corsairique                    0
       disable2                        0
       doubleflashing                 1
       doublemeteor                   0
       energy                          0
       fancontrol                     0
       fire                            2
       flashing                        1
       jazz                            0
       jrainbow                        0
       lava                            0
       lightning                       1
       marquee                         1
       meteor                         1–2
       movie                           0
       msimarquee                     1
       msirainbow                     0
       planetary                       0
       play                            0
       pop                             0
       rainbow                         0
       rainbowdoubleflashing         0
       rainbowflashing                0
       rainbowwave                    0
       random                          0
       rap                             0
       stack                           1
       visor                           2
       waterdrop                      1

       When applicable the animation speed can be set with --speed=value, where the allowed values are: 0, 1 and
       2.  The LCD screen settings can be controlled  with  the  settings  flag,  that  requires  the  arguments
       "brightness;direction" where an allowed brightness is an integer in the range 0-100, and orientations 0-3
       correspond to the orientations up, right, down and left.

   NZXTKrakenX40,X60NZXTKrakenX31,X41,X61
       Supports  the same modes and options as a Corsair Hydro H80i GT (or similar), but requires --legacy-690lc
       to be passed on all invocations.

   NZXTKrakenM22NZXTKrakenX42,X52,X62,X72
       Cooling channels (only X42, X52, X62, X72): pump, fan.

       Lighting channels: logo, ring, sync.
       Mode              logo   ring   #colors
       ────────────────────────────────────────
       off               yes    yes       0
       fixed             yes    yes       1
       super-fixed       yes    yes      1–9
       fading            yes    yes      2–8
       alternating        no    yes       2
       breathing         yes    yes      1–8
       super-breathing   yes    yes      1–9
       pulse             yes    yes      1–8
       tai-chi            no    yes       2
       water-cooler       no    yes       0
       loading            no    yes       1
       wings              no    yes       1

       When applicable the animation speed can be set with --speed=value, where the allowed values are: slowest,
       slower, normal, faster, fastest.  The animation direction can be set with  --direction=value,  where  the
       allowed values are: forward or backward.

   NZXTKrakenX53,X63,X73
       Cooling channels: pump.

       Lighting channels: external, ring, logo, sync.

   NZXTKrakenZ53,Z63,Z73
       Cooling channels: pump, fan.

       Lighting channels: external.

       LCD screens: lcd.

   NZXTKraken2023Standard,EliteNZXTKraken2024EliteRGB
       Cooling channels: pump, fan.

       Lighting channels: none.

       LCD screens: lcd.
       Mode                #colors
       ────────────────────────────────────
       off                    0
       fixed                  1
       fading                2–8
       super-fixed          1–40
       alternating-[3-6]     1–2
       pulse                 1–8
       breathing             1–8
       super-breathing      1–40
       candle                 1
       starry-night           1
       loading                1
       tai-chi               1–2
       water-cooler           2
       wings                  1

       When applicable the animation speed can be set with --speed=value, where the allowed values are: slowest,
       slower,  normal,  faster,  fastest.  The animation direction can be set with --direction=value, where the
       allowed values are: forward or backward.

   CorsairHX750i,HX850i,HX1000i,HX1200i,HX1500iCorsairRM650i,RM750i,RM850i,RM1000i
       Cooling channels: fan.

       Lighting channels: none.

       Setting a fixed fan speed changes the fan mode to software control.  To revert back to hardware  control,
       run initialize again.

       (Experimental  feature)  The +12V rails normally function in multiple-rail mode.  Single-rail mode can be
       selected by passing --single-12v-ocp to initialize.  To revert back to multiple-rail mode, run initialize
       again without that flag.

   NZXTE500,E650,E850
       Cooling channels: none (feature not supported yet).

       Lighting channels: none.

   NZXTGrid+V3
       Cooling channels: fan[1–6], sync.

       Lighting channels: none.

   NZXTSmartDevice(V1)
       Cooling channels: fan[1–3], sync.

       Lighting channels: led.
       Mode              #colors
       ──────────────────────────────────
       off                  0
       fixed                1
       super-fixed        1–40
       fading              2–8
       alternating          2
       breathing           1–8
       super-breathing    1–40
       pulse               1–8
       candle               1
       wings                1

       When applicable the animation speed can be set with --speed=value, where the allowed values are: slowest,
       slower, normal, faster, fastest.  The animation direction can be set with  --direction=value,  where  the
       allowed values are: forward or backward.

   NZXTSmartDeviceV2NZXTRGB&FanControllerNZXTRGB&FanController(3+6channels)NZXTHUE2NZXTHUE2AmbientNZXTH1V2
       Cooling channels (only Smart Device V2, RGB & Fan Controller and H1 V2): fan[1–3].

       Lighting channels (all but H1 V2): led[1–2], sync.

       Additional lighting channels (HUE 2): led[3–4].

       Additional lighting channels (RGB & Fan Controller (3+6 channels)): led[3–6].
       Mode                #colors
       ────────────────────────────────────
       off                    0
       fixed                  1
       super-fixed          1–40
       fading                2–8
       alternating-[3-6]      2
       pulse                 1–8
       breathing             1–8
       super-breathing      1–40
       candle                 1
       starry-night           1
       wings                  1

       When applicable the animation speed can be set with --speed=value, where the allowed values are: slowest,
       slower,  normal,  faster,  fastest.  The animation direction can be set with --direction=value, where the
       allowed values are: forward or backward.

   ASUSStrixGTX1050OCASUSStrixGTX1050TiOCASUSStrixGTX10606GBASUSStrixGTX1060OC6GBASUSStrixGTX1070ASUSStrixGTX1070OCASUSStrixGTX1070TiASUSStrixGTX1070TiAdvancedASUSStrixGTX1080ASUSStrixGTX1080AdvancedASUSStrixGTX1080OCASUSStrixGTX1080TiASUSStrixGTX1080TiOCASUSStrixGTX1650SuperOCASUSStrixGTX1660SuperOCASUSStrixGTX1660TiOCASUSStrixRTX2060EvoASUSStrixRTX2060EvoOCASUSStrixRTX2060OCASUSStrixRTX2060SuperASUSStrixRTX2060SuperAdvancedASUSStrixRTX2060SuperEvoAdvancedASUSStrixRTX2060SuperOCASUSStrixRTX2070ASUSStrixRTX2070AdvancedASUSStrixRTX2070OCASUSStrixRTX2070SuperAdvancedASUSStrixRTX2070SuperOCASUSStrixRTX2080OCASUSStrixRTX2080SuperAdvancedASUSStrixRTX2080SuperOCASUSStrixRTX2080TiASUSStrixRTX2080TiOCASUSTUFRTX3060TiOC
       Cooling channels: none.

       Lighting channels: led.
       Mode        #colors
       ────────────────────────────
       off            0
       fixed          1
       flash          1
       breathing      1
       rainbow        0

   CorsairVengeanceRGB
       Cooling channels: none.

       Lighting channels: led.
       Mode        #colors
       ────────────────────────────
       off            0
       fixed          1
       breathing     1–7
       fading        2–7

       When applicable the animation speed can be set with --speed=value, where the allowed values are: slowest,
       slower, normal, faster, fastest.

   ASUSAuraLEDController
       Cooling channels: none.

       Lighting channels: led[1–4], sync.
       Mode                        #colors
       ────────────────────────────────────────────
       off                            0
       static                         1
       breathing                      1
       flashing                       1
       spectrum_cycle                 0
       rainbow                        0
       spectrum_cycle_breathing       0
       chase_fade                     1
       spectrum_cycle_chase_fade      0
       chase                          1
       spectrum_cycle_chase           0
       spectrum_cycle_wave            0
       chase_rainbow_pulse            0
       rainbow_flicker                0
       gentle_transition              0
       wave_propagation               0
       wave_propagation_pause         0
       red_pulse                      0

   GigabyteRGBFusion2.05702ControllerGigabyteRGBFusion2.08297Controller
       Cooling channels: none.

       Lighting channels: led[1–8], sync.
       Mode              #colors
       ──────────────────────────────────
       off                  0
       fixed                1
       pulse                1
       (double-)?flash      1
       color-cycle          0

       When applicable the animation speed can be set with --speed=value, where the allowed values are: slowest,
       slower, normal, faster, fastest, ludicrous.

   EVGAGTX1070FTWEVGAGTX1070FTWDTGamingEVGAGTX1070FTWHybridEVGAGTX1070TiFTW2EVGAGTX1080FTW
       Cooling channels: none.

       Lighting channels: led.
       Mode        #colors
       ────────────────────────────
       off            0
       fixed          1
       breathing      1
       rainbow        0

Environment

       If LANG is set to C, non-ASCII characters are escaped from the output of --json.

Example

liquidctllist--verboseliquidctlinitializeallliquidctl--matchkrakensetpumpspeed90liquidctl--product170esetledcolorfading350017ff2608liquidctlstatus

Exit Status

       1 if there was an error, 0 otherwise.

Files

$XDG_RUNTIME_DIR/liquidctl/*, /var/run/liquidctl/*, /tmp/liquidctl/*
              Internal data used by some drivers.

Name

       liquidctl - monitor and control liquid coolers and other devices

Options

Deviceselectionoptions
       Devices can be selected using one or more values taken from list--verbose.-msubstring, --match=substring
              Filter devices by case insensitive substring of device description.

       -nnumber, --pick=number
              Pick among many results for a given filter.

       --vendor=id
              Filter devices by hexadecimal vendor id.

       --product=id
              Filter devices by hexadecimal product id.

       --release=number
              Filter devices by hexadecimal release number.

       --serial=number
              Filter devices by serial number.

       --bus=bus
              Filter devices by bus.

       --address=address
              Filter devices by address in bus.

       --usb-port=port
              Filter devices by USB port in bus.

       -dindex, --device=index
              (Deprecated), select device by listing index.

   Animationoptions
       Some devices and animation modes support additional options.

       --speed=value
              Abstract animation speed (device/mode specific).

       --time-per-color=value
              Time to wait on each color (seconds).

       --time-off=value
              Time to wait with the LED turned off (seconds).

       --alert-threshold=number
              Threshold temperature for a visual alert (degrees Celsius).

       --alert-color=color
              Color used by the visual high temperature alert.

       --direction=string
              If the pattern should move forward or backward.

       --start-led=number
              The first led to start the effect at.

       --maximum-leds=number
              The number of LED's the effect should apply to.

   Otheroptions--fan-mode=channel:mode[,...]
              Set the fan modes.

       --single-12v-ocp
              Enable single rail +12V OCP.

       --pump-mode=mode
              Set the pump mode.

       --temperature-sensor=number
              The temperature sensor number for the Commander Pro.

       --legacy-690lc
              Use Asetek 690LC in legacy mode (old Krakens).

       --non-volatile
              Store on non-volatile controller memory.

       --direct-access
              Directly access the device despite kernel drivers.

       --unsafe=features
              Comman-separated bleeding-edge features to enable.

       -v, --verbose
              Output additional information.

       -g, --debug
              Show debug information on stderr.

       --json Output machine-readable JSON.  Only supported with list, initialize and status.

       --version
              Display the version number.

       --help Show the embedded help.

See Also

       The complete documentation is available in the project's sources and homepage.

liquidctl                                          2025-04-01                                       LIQUIDCTL(8)

Synopsis

liquidctl [options] listliquidctl [options] initialize [all]
       liquidctl [options] statusliquidctl [options] setchannelspeed (temperaturepercentage) ...
       liquidctl [options] setchannelspeedpercentageliquidctl [options] setchannelcolormode [color ...]
       liquidctl--versionliquidctl--help

See Also