1.. SPDX-License-Identifier: GPL-2.0-or-later
2
3Kernel driver nzxt-kraken3
4==========================
5
6Supported devices:
7
8* NZXT Kraken X53
9* NZXT Kraken X63
10* NZXT Kraken X73
11* NZXT Kraken Z53
12* NZXT Kraken Z63
13* NZXT Kraken Z73
14* NZXT Kraken 2023
15* NZXT Kraken 2023 Elite
16
17Author: Jonas Malaco, Aleksa Savic
18
19Description
20-----------
21
22This driver enables hardware monitoring support for NZXT Kraken X53/X63/X73,
23Z53/Z63/Z73 and Kraken 2023 (standard and Elite) all-in-one CPU liquid coolers.
24All models expose liquid temperature and pump speed (in RPM), as well as PWM
25control (either as a fixed value or through a temp-PWM curve). The Z-series and
26Kraken 2023 models additionally expose the speed and duty of an optionally connected
27fan, with the same PWM control capabilities.
28
29Pump and fan duty control mode can be set through pwm[1-2]_enable, where 1 is
30for the manual control mode and 2 is for the liquid temp to PWM curve mode.
31Writing a 0 disables control of the channel through the driver after setting its
32duty to 100%.
33
34The temperature of the curves relates to the fixed [20-59] range, correlating to
35the detected liquid temperature. Only PWM values (ranging from 0-255) can be set.
36If in curve mode, setting point values should be done in moderation - the devices
37require complete curves to be sent for each change; they can lock up or discard
38the changes if they are too numerous at once. Suggestion is to set them while
39in an another mode, and then apply them by switching to curve.
40
41The devices can report if they are faulty. The driver supports that situation
42and will issue a warning. This can also happen when the USB cable is connected,
43but SATA power is not.
44
45The addressable RGB LEDs and LCD screen (only on Z-series and Kraken 2023 models)
46are not supported in this driver, but can be controlled through existing userspace
47tools, such as `liquidctl`_.
48
49.. _liquidctl: https://github.com/liquidctl/liquidctl
50
51Usage Notes
52-----------
53
54As these are USB HIDs, the driver can be loaded automatically by the kernel and
55supports hot swapping.
56
57Possible pwm_enable values are:
58
59====== ==========================================================================
600      Set fan to 100%
611      Direct PWM mode (applies value in corresponding PWM entry)
622      Curve control mode (applies the temp-PWM duty curve based on coolant temp)
63====== ==========================================================================
64
65Sysfs entries
66-------------
67
68============================== ================================================================
69fan1_input                     Pump speed (in rpm)
70fan2_input                     Fan speed (in rpm)
71temp1_input                    Coolant temperature (in millidegrees Celsius)
72pwm1                           Pump duty (value between 0-255)
73pwm1_enable                    Pump duty control mode (0: disabled, 1: manual, 2: curve)
74pwm2                           Fan duty (value between 0-255)
75pwm2_enable                    Fan duty control mode (0: disabled, 1: manual, 2: curve)
76temp[1-2]_auto_point[1-40]_pwm Temp-PWM duty curves (for pump and fan), related to coolant temp
77============================== ================================================================
78