Control GPU/CPU Fan Speed with CoolerControl in Ubuntu 24.04

Last updated: October 24, 2024 — Leave a comment

This tutorial shows how to install and use CoolerControl to control your CPU or graphics card fan speed in Ubuntu desktop computer or laptop.

I’ve written about how to control fan speed for Thinkpad laptops. But for those who are looking for how to do the job for NVIDIA/AMD GPUs and other laptops, then try CoolerControl.

CoolerControl is a free open-source feature-rich cooling device control application written in Python programming language.

It depends on Hwmon kernel drivers and liquidctl to access and control supported hardware, including Thinkpads, some ASUS and HP laptops, as well as most NVIDIA and AMD GPUs.

CoolerControl user interface

With CoolerControl, you can monitor the temperatures of your CPU, GPU, hard disk, etc devices in graphs, and set fan to either fixed or dynamic speed.

As the tool depends on open-source drivers and contributors, not all hardware is guaranteed to be supported. It will detect supported devices and available capabilities automatically.

NOTE: This tutorial is tested in my case in following machines and systems. It MAY or MAY NOT work in your case depends on your hardware.

  • Thinkpad T480s with Ubuntu 24.04.
  • ASUS K501L with Linux Mint 22.
  • Desktop PC (Intel i3-10100f + NVIDIA GT1030) with Ubuntu 24.10.

Step 1: Install lm-sensors

This step is optional but recommended for installing all available kernel modules.

lm-sensors is a popular command line utility to detect and monitor hardware temperature, voltage, and fan speed. It’s available in all current Ubuntu and most other Linux system repositories.

To install lm-sensors, open terminal (Ctrl+Alt+T) and run command:

sudo apt install lm-sensors

After installed the package, run command to detect your hardware:

sudo sensors-detect

In the terminal output, you need to answer some questions, though it’s OK to hit Enter for all to choose default. When done, you may run sensors command at anytime to check your hardware temperature and fan speed.

Step 2: Install CoolerControl

The software provides an official apt repository that contains the .deb packages for Debian, Ubuntu, Linux Mint and their based system. So far, it supports Debian >= 12 Bookwarm, Ubuntu >= 22.04 Jammy.

1. First, open terminal (Ctrl+Alt+T) and run command to install the required packages: curl downloader and apt extension for https support:

sudo apt install curl apt-transport-https

Try running sudo apt update to refresh cache if the command above failed.

2. Next, run command to download the official script, then run it via single command below:

curl -1sLf \
  'https://dl.cloudsmith.io/public/coolercontrol/coolercontrol/setup.deb.sh' \
  | sudo -E bash

This is a single command separated in 3 lines. And, the script will automatically check your system version, dependency libraries, and add the apt repository into your system.

3. Finally, refresh system package cache by running command:

sudo apt update

And, install the tool via command:

sudo apt install coolercontrol

NOTE for Ubuntu 24.10: The repository does NOT support 24.10 at the moment of writing. If you got unable to locate package ‘coolercontrol’, then run the command below to edit the source file:

sudo gnome-text-editor /etc/apt/sources.list.d/coolercontrol-coolercontrol.list

Depends on your desktop environment, replace gnome-text-editor with mousepad for XFCE, pluma for MATE, or nano command line text editor that works in all desktops.

When file opens, replace oracular with noble in files, then save (for nano, press Ctrl+S, then Ctrl+X). Finally, re-run the last 2 apt commands to refresh cache and install the tool.

NOTE for Ubuntu 22.04: the ‘liquidctl’ package in the 22.04 repository is outdated, which may cause some devices now show. You may upgrade the package by running the commands below one by one, though this is OPTIONAL.

  • First, run command to stop the coolercontrol service:
    sudo systemctl stop coolercontrold.service
  • Then upgrade the liquidctl package:
    sudo pip install liquidctl --upgrade
  • Finally, start the daemon service:
    sudo systemctl start coolercontrold.service

Step 3: Launch CoolerControl and configure your Fan speed

After installed the tool, run the command below to check if the background service is running:

systemctl status coolercontrold.service

If not enabled, use systemctl enable --now coolercontrold to enable and start it.

Then, either search for and launch “CoolerControl” from start menu (or GNOME Overview), or visit localhost:11987 in web browser to launch the graphical interface.

When the app opens, you can choose your devices in left side-bar, then see the real-time temperature, frequency, fan speed, etc information in both text and graph.

NOTE: For NVIDIA GPU, you need to install the proprietary driver via “Additional Drivers” utility, then restart computer.

For fan speed, just choose your device in left, then either navigate to “Manual” in right and set a fixed speed in percentage and click Apply.

Or, navigate to “Profiles”. Choose a profile and select “Edit Profile”. Next, you can either set a fixed fan speed, or dynamic speed according to hardware temperature.

When you choose to edit profile in Graph and select the temp source, it will show you the screen below to edit the dynamic fan speed.

There, either drag moving the dots or use the left input boxes, to configure the fan speed level according to hardware temperature.

After edited your profile, choose it from the drop-down box and click Apply to make it work.

Uninstall CoolerControl

For any reason, you can easily remove the software by running the command below in terminal (Ctrl+Alt+T):

sudo apt remove --autoremove coolercontrold

To remove the apt repository, use the command to delete the source file:

sudo rm /etc/apt/sources.list.d/coolercontrol*.list

As well, delete the gpg key file added for that repository via command:

sudo rm /usr/share/keyrings/coolercontrol*.gpg

Finally, run sudo apt update command to refresh your system package cache.

Twitter

I'm a freelance blogger who started using Ubuntu in 2007 and wishes to share my experiences and some useful tips with Ubuntu beginners and lovers. Please comment to let me know if the tutorial is outdated! And, notify me if you find any typo/grammar/language mistakes. English is not my native language. Contact me via ubuntuhandbook1@gmail.com Buy me a coffee: https://ko-fi.com/ubuntuhandbook1 |

No Comments

Be the first to start the conversation.

Leave a Reply

Text formatting is available via select HTML.

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> 

*