Thursday, March 26, 2009

TPFand - cool down

I had experienced this under Windows too: my T60p got very, very hot at times (CPU > 85°C) . Sometimes it would even exceed 100°C causing the lot to just switch off with an emergency halt. Boom; black screen and take a break for 30 minutes to let things cool down.

I found out that the BIOS (or other hw controlling software) didn't manage the fan properly. It would just sit there, humming peacefully and slowly while internals must have resembled hell in TP by then. The I found the Notebook Hardware Control (NHC) software suite. Execellent piece of work in which you could set tresholds for various part temperatures (CPU, GPU, etc.). It would spin up the fan, keeping temperatures inside agreeable or manageable at least.

Hardware issue, you say? Yes, that was what the helpdesk thought as well. My motherboard, cpu fan and gpu unit all have been replaced at least two times each. Never got any better. And I did truthfully install each and every BIOS/firmware upgrade Lenovo brought out; so that couldn't be it either.

Okay, so I had it working on Windows, now Linux. I found out the other day that CPU temperatures could easily reach 85°C or higher with the fan back in its lazy mode humming peacefully again. Something had to be done again.

So I found Thinkpad Fan Control and it does exactly what NHC did as well: you can set custom tresholds from where the fan will spin up or down. Vey easy and very well working, for me. Temperature never goes beyond 80°C anymore!

But, you got to know one thing about tpfand: if any of the settings are left to hw_ctrld (Hardware Controlled), then it seems that it will always hw_ctrl your fan, regardless of your settings. So I recommend you remove all hw_ctrld settings and replace them with a real value (=percentage).

There are two sensor you will want to watch:
Sensor 0 is your CPU which gets hot if you don't look out ;-)
Set tresholds to: < 50°C off, 50 < 30% < 58, 58 < 45% < 65, 65 < 60% < 70, 70 < 75% < 75, 75 < 90% 80, 80 < 100% < 85, 85> full
Sensor 3 is your GPU (ATI FireGL5200), which can get even hotter...
Set tresholds too: <50°C off, 50<15%<55, 55<30%<65, 65<45%<75, 75<60%<78, 78<75%<80, 80<90%<82, 82<100%<85, 85> full
Set all other thresholds too: <50°C off, 50°C> full
Under advanced set 'Hysteric' to 4 and minimum delay to 2.5 seconds.
(all temperatures in °C; please pay attention as tpfand can also show them in °F)

And then you'll have a quiet machine that won't get too hot but doesn't spin up at every temp spike either. Good for your ears and lifespan of your TP!


  1. Hello, I too own a T60p and am just upgraded to ubuntu karmic 9.10. I am at a loss how to set the thresholds. Is there a file that we edit? Or did you create a custom profile?

    Can you please share your /etc/tpfand.conf file?


  2. Also did you add "options thinkpad_acpi fan_control=1" to /etc/modprobe.d/options ?