Skip to content
On this page

๐Ÿงฐ Hardware Support โ€‹

Overview โ€‹

CoolerControl automatically detects the hardware drivers present on your system and connects to devices that have applicable sensor outputs. Please read further if you believe that either not all of your hardware has been detected, or there are issues controlling your hardware.

To access and control your hardware, CoolerControl relies on two sources for drivers:

  • Hardware Monitoring kernel drivers. This is the main source for hardware drivers in Linux, made possible by open source contributors around the world. They are updated along with each new Kernel release.
  • liquidctl is an excellent source of drivers for AIO liquid coolers, USB fan hubs, and a few other devices.

If your hardware does not yet have a driver, or is poorly/partially supported, then CoolerControl will likely **not ** be able to control it and may show an error in the logs when attempting to apply changes. CoolerControl depends on these upstream drivers to properly read and write to devices at regular polling intervals.

If you notice that CoolerControl has not detected all your available hardware, here some steps you can take to maximize hardware coverage:

Load All Applicable Kernel Modules โ€‹

  • Install lm-sensors and run sudo sensors-detect. For more details see the Arch Wiki. Additionally, you can check out the official lm-sensors repository for tips on manually loading unofficial kernel modules for hardware that isn't supported out-of-the-box yet.
  • Install the latest kernel available for your distro.

Motherboard Fans โ€‹

  • For newer motherboards it's best to install the latest available kernel for your distribution which includes the latest HWMon drivers.
  • Make sure to follow the instructions above to load all available kernel modules.

USB AIOs, Liquid coolers, and Fan Hubs โ€‹

  • Many of these devices have HWMon drivers in addition to liquidctl drivers. Please see the instructions above to load all applicable kernel modules.
  • Make sure you have the coolercontrol-liqctld package installed. This installs a service daemon that enables liquidctl integration for CoolerControl.
  • Check the liquidctl hardware support list for the state of liquidctl support for your device. Many devices are considered to be only experimentally supported.
  • Verify that the liquidctl package version available on your distro supports your hardware. For example, some hardware may require a version newer than what your distro offers. In these cases, you may need to upgrade liquidctl manually to support your hardware, see the liquidctl hardware support list.

Nvidia GPU โ€‹

  • Make sure you have installed the Nvidia proprietary drivers for you card. Your distro should have documentation on how best to do this, and there is also NVidia's Driver Installation Guide for Linux.
  • Fan control has been tested working on most cards using the NVidia proprietary drivers. CoolerControl automatically uses NVML and the CLI tools nvidia-settings and nvidia-smi as a fallback.
  • Specific controls and sensors depends on NVML support from Nvidia.

AMD GPU โ€‹

  • Older cards, i.e. <=6000 Radeon series, and integrated graphics chips should work out of the box.
  • Newer cards, i.e. the 7000, 9000 series and above, have different firmwares that require an extra step to enable fan control:
    • A Linux kernel >=6.12 is required for fan control on these newer cards.
    • โš ๏ธ Depending on your installed kernel version and specific model of your card, be aware that sometimes there is a minimum temperature limit at which the fans will spin up.
    • To enable all features including fan control, setting the following kernel boot option: amdgpu.ppfeaturemask=0xffffffff.
    • Here are some simple guides at how to set boot parameters for specific distros:

Laptops โ€‹

  • ThinkPads, some ASUS, and some HP Laptops are known to have supported Linux drivers, but support is spotty and not all models are supported. If your laptop has a HWMon kernel driver, then CoolerControl will use it automatically. Otherwise, fan control for your laptop is most likely not supported.

HDDs โ€‹

  • Newer NVME and SSD drives already come with supporting HWMon drivers enabled by default. For older HDDs however, there exists a kernel module called drivetemp that one can use to enable reading temperatures for these drives.
bash
sudo modprobe drivetemp
sudo systemctl restart coolercontrold

Note: consult your distribution's documentation about how to enable modules by default

Released under the GPLv3+ License.