ThinkPad Fan

I suppose I am one, but recently I had trouble with the other kind of a ThinkPad fan. An elderly ThinkPad 43p with a 2.13 GHz CPU (Dothan Pentium M with 2MB L2 cache) and a rather nice 1600×1200 IPS screen (hello, 2005!) was effectively unusable due to a near-dead fan. At startup, the laptop almost always complained about a fan error and turned itself off. Pressing Esc made it possible to get past the error, but as one would expect, the laptop got very uncomfortably hot.

Upon closer examination, it turned out the fan was beyond repair. It was so worn out that as soon as it started spinning at higher revs, it began vibrating so badly that it stopped again. Not really fixable. But finding a new (that is, old but unused) fan assembly wasn’t hard, so I thought I’d just swap it out.

This is in theory not overly difficult, as only the ThinkPad keyboard and top bezel need to be popped off the laptop, which involves removing about 15 screws from the bottom of the unit. The screws are well labeled and the process is well documented in the HMM (Hardware Maintenance Manual).

Copper fan/heatsink assembly in a T43p

Trouble hit when I tried to remove the old fan assembly, held in place by three screws. The screws weren’t difficult to remove, but the fan was stuck fast. It was apparent that the heatsink effectively glued itself to the GPU (ATI Mobility FireGL V3200 aka Mobility Radeon X600, a PCI Express chip with 128MB video memory). For whatever reason, IBM used thermal paste for the CPU but a thermal pad for the GPU, possibly because the GPU comes with a heat spreader and the CPU doesn’t. The thermal pad turned into surprisingly good glue.

The heatsink was stuck really, really hard. I could not pull it off or pry it off, because it looked like the whole GPU might be ripped off the board. And unfortunately I wasn’t able to twist the heatsink off either, because the other end of the fan assembly was stuck under the chassis.

What to do? In desperation, I decided to try heat. Using a micro torch, I simply heated up the fan assembly. That took a while because—not surprisingly—the heatsink is quite good at conducting heat. But after some time, the heatsink finally came off without requiring much physical force. It looked oddly different from the replacement part but I proceeded to install the new fan assembly. While at it, I swapped out the CPU for a 2.26 GHz model that I happened to have lying around.

T43p with heatsink removed

Once the T43p was reassembled, it booted up without trouble, and the fan worked very well. But… using a temperature monitor, I soon realized that the GPU was much hotter than it should be. When the system was idle, the CPU temperature was around 45C, but the GPU was closer to 80C. Under stress, the GPU temperature quickly shot over 100C. Not good.

After locating photos of a T43p board, I realized what the problem was. The old fan assembly had come off with the heat spreader that was supposed to be glued to the GPU! Here’s what the naked GPU looked like:

T43p CPU, chipset, and GPU (black)

The heat spreader is just a thin sheet of aluminum, but it’s not flat. It is thicker in the center because the actual GPU chip sits a touch lower than the DRAM chips surrounding it, and the thicker center ensures that there’s no gap between the GPU and the heat spreader. No wonder the GPU was getting so hot.

Armed with this new information, I set out to loosen the GPU heat spreader from the old fan assembly. It still couldn’t be pried off (certainly not without bending it out of shape), and I didn’t want to try the micro torch again.

So I carefully put the heat spreader in a vise (it’s fortunately a little larger than the heatsink which sits on top of it) and used the fan assembly itself as a lever in order to twist it off. After applying moderate amount of force, the heat spreader finally separated from the fan assembly’s thermal pad. As anyone who tried removing a stuck-on heatsink knows, applying torque works very well, but it’s not always an option because there may not be enough space for twisting the heatsink.

I removed the thermal pad residue and other than slightly jagged edges, the heat spreader seemed to be in good shape, i.e. flat and smooth. So I took the laptop apart again, and put the heat spreader back on the GPU, with a little bit of fresh thermal paste (the original was completely dried and crumbly). It wasn’t glued like before, but its shape and the heatsink pressing it down won’t let the heat spreader move.

T43p with GPU heat spreader back on

After the laptop was put back together again, I was pleased to see that the intervention had the desired effect. The laptop now shows CPU temperature in the 40-50C range and GPU temperature around 60C when idle. That is with the fan running at its lowest speed or entirely off.

When under stress, the CPU temperature goes toward 70C and GPU a bit over 80C, but nowhere near 100C. In other words, the CPU temperature changed little but the GPU is 20-30C cooler, with the fan working much less hard.

Let’s see how long the replacement fan lasts…

This entry was posted in Hardware Hacks, IBM, ThinkPad. Bookmark the permalink.

4 Responses to ThinkPad Fan

  1. stecdose says:

    Haha, if you post about some practical stuff, that has to do with real-life-work, no one comments.

    If you post some theoretical about programming philosophies, people will blow up your reply-counter.


    (I am still in progess preparing all the MSDN cds, have ripped em all, have fixed jewel cases for all the CDs, but still need some scans of some CDs, this is all that is missing).

  2. Michal Necasek says:

    Well, not everyone has a T4x series ThinkPad, but everyone has an opinion 🙂

  3. Pingback: Didn’t Expect That to Work | OS/2 Museum

  4. KJ says:

    I had to do similar surgery on my StinkPad (kidding) T42 when the fan died. Tough to work in such a small space. I tried a solvent, but that didn’t work. Heat eventually worked. It’s back to journeyman service now (with 1.5G ram and a probably too expensive PATA SSD upgrade). It’s mostly running XP and DOS, with the occasional boot into 32-bit OpenBSD. With a real parallel port and cardbus slots I can put all sorts of stuff in, it’s the lab PC. Runs all the old software that got obsoleted when it got dumped by Win7, 64-bit and USB as a replacement for every port.

    Remarkable how useful old kit can be.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.