Trying to make my Chromebook Fan Quieter

Recently purchased an HP c640 G2 chromebook. I noticed that the fan was rather noisy, especially when plugged in. I was able to address the problem using ectool.
(Warning, adjusting these settings may cause damage to your chromebook, shorten its lifespan, or void the warranty, you are fully responsible for anything that happens as a result of you following this guide)

To get information about the thermal sensors I ran

catloaf@paloma:~$ sudo ectool temps all
--sensor name -------- temperature -------- ratio (fan_off and fan_max) --
Charger               330 K (= 57 C)          56% (313 K and 343 K)
PP3300 Regulator      315 K (= 42 C)          13% (313 K and 328 K)
DDR and SOC           319 K (= 46 C)          30% (313 K and 333 K)
Fan                   312 K (= 39 C)           0% (313 K and 333 K)

Under load:

catloaf@paloma:~$ sudo ectool temps all
--sensor name -------- temperature -------- ratio (fan_off and fan_max) --
Charger               332 K (= 59 C)          63% (313 K and 343 K)
PP3300 Regulator      314 K (= 41 C)           6% (313 K and 328 K)
DDR and SOC           321 K (= 48 C)          40% (313 K and 333 K)
Fan                   311 K (= 38 C)           0% (313 K and 333 K)

As you can see, the temperature of the charger chip is causing the fan speed to ramp up even when the cpu isnt hot.

To address this I first get the default fan values for the various sensors:

catloaf@paloma:~$ sudo ectool thermalget
sensor  warn  high  halt   fan_off fan_max   name
  0        0   351    353    313     343     Charger
  1        0   341    343    313     328     PP3300 Regulator
  2        0   341    343    313     333     DDR and SOC
  3        0   341    343    313     333     Fan
(all temps in degrees Kelvin)

And then I adjust the charger sensor fan_off and fan_on values to be 10 degrees hotter

catloaf@paloma:~$ sudo ectool thermalset 0        0   351    353    323     353

Now the charger chip being slightly hotter than the rest of the system is not causing the fan to ramp up, the system is now much quieter when idle.

catloaf@paloma:~$ sudo ectool temps all
--sensor name -------- temperature -------- ratio (fan_off and fan_max) --
Charger               327 K (= 54 C)          13% (323 K and 353 K)
PP3300 Regulator      313 K (= 40 C)           0% (313 K and 328 K)
DDR and SOC           317 K (= 44 C)          20% (313 K and 333 K)
Fan                   311 K (= 38 C)           0% (313 K and 333 K)

Even under load the charger sensor does not get much hotter than it did before and the system is much quieter:

catloaf@paloma:~$ sudo ectool temps all
--sensor name -------- temperature -------- ratio (fan_off and fan_max) --
Charger               334 K (= 61 C)          36% (323 K and 353 K)
PP3300 Regulator      315 K (= 42 C)          13% (313 K and 328 K)
DDR and SOC           322 K (= 49 C)          45% (313 K and 333 K)
Fan                   311 K (= 38 C)           0% (313 K and 333 K)
1 Like

I was able to get the fans to shut down at idle with the following configuration:

catloaf@paloma:~$ sudo ectool thermalget
sensor  warn  high  halt   fan_off fan_max   name
  0        0   351    353    333     353     Charger
  1        0   351    353    323     328     PP3300 Regulator
  2        0   341    343    323     333     DDR and SOC
  3        0   341    343    323     333     Fan
(all temps in degrees Kelvin)

I have found the application GitHub - death7654/Chrultrabook-Tools: User-friendly configuration utility for Chromebooks running an alternate OS. However I still prefer this method as the fan control in that app doesn’t take into account the other thermal sensors and just uses the “DDR and SOC” for the cpu temperature instead of the die temperature (reported by btop).