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