Linux device driver that supports controlling and monitoring NZXT Kraken water coolers
NZXT is NOT involved in this project, do NOT contact them if your device is damaged while using this software.
Also, while it doesn't seem like the hardware could be damaged by silly USB messages (apart from overheating), I do NOT take any responsibility for any damage done to your cooler.
- NZXT Kraken X61 (Vendor/Product ID:
2433:b200
) - NZXT Kraken X41 (Vendor/Product ID:
2433:b200
) - NZXT Kraken X31 (Vendor/Product ID:
2433:b200
) (Only for controlling the fan/pump speed, since there's no controllable LED on the device)
If you have an unsupported liquid cooler and want to help out, see CONTRIBUTING.md.
Make sure the headers for the kernel you are running are installed.
make
sudo insmod kraken.ko
The driver can be controlled with device files under /sys/bus/usb/drivers/kraken
.
Find the symbolic links that point to the connected compatible devices. In my case, there's only one Kraken connected.
/sys/bus/usb/drivers/kraken/2-1:1.0 -> ../../../../devices/pci0000:00/0000:00:06.0/usb2/2-1/2-1:1.0
The speed must be between 30 and 100.
echo SPEED > /sys/bus/usb/drivers/kraken/DEVICE/speed
The color must be in hexadecimal format (e.g., ff00ff
for magenta).
echo COLOR > /sys/bus/usb/drivers/kraken/DEVICE/color
The alternate color for the alternating mode can be set similarly.
echo COLOR > /sys/bus/usb/drivers/kraken/DEVICE/alternate_color
The interval is in seconds and must be between 1 and 255.
echo INTERVAL > /sys/bus/usb/drivers/kraken/DEVICE/interval
The mode must be one of normal, alternating, blinking and off.
echo MODE > /sys/bus/usb/drivers/kraken/DEVICE/mode
The liquid temperature is returned in °C.
cat /sys/bus/usb/drivers/kraken/DEVICE/temp
The pump speed is returned in RPM.
cat /sys/bus/usb/drivers/kraken/DEVICE/pump
The fan speed is returned in RPM.
cat /sys/bus/usb/drivers/kraken/DEVICE/fan