I received my new unibody MacBook Pro 13-ich few days ago and I wondered if new machine from Apple will be able to live just by its own – without any of my additional tweaks. This seemed true until I installed Windows 7 (64-bit) for some performance tests ( read as “play some games” )…

I was able to install Windows 7 without any problems via BootCamp Assistant. I’ve chosen Left 4 Dead for my test – pretty good game, especially in multi-player. Set video to max and resolution to minimum and you got >30 FPS which was good. I started the game and finished first two levels. But then I stopped because I noticed that keyboard was like on fire. “It is overheating!” – I screamed and immediately started my research for some temperature monitor program.

I found very minimalistic application called Core Temp (my latest is v0.99.5) and tried its readings. CPU temp jumped to 95°C!!! I just couldn’t believe that my new MacBook is near its melting point. My old PC with AMD 64 3000+ was never able to go over 50°C even under heavy load conditions. I know – it’s not desktop but only a small notebook but still I care about its CPU temperature.

I searched some about this “overheating” stuff via Google but wasn’t able to find out if it is normal or not. Some users say that they don’t have such a high temperatures but some of them say complete opposite. Nothing against Apple overconfidence but I laughed after reading some of comments like these:

user eXan said:

The term “overheat” means the computer gets so hot it shuts down – then and only then you need to worry about temp. Its an Apple, after all – not some home-built computer where you need to monitor temps every second to make sure it works right.

user UltraNEO* said:

52°C is nothing to worry about. For a MBP this is perfectly normal unlike a PC user seems to worry about every single freakin degree, the Mac systems will work flawlessly right up to 100°C, and then some!!

I not familiar with MacBook’s normal temperatures but I just cant believe it’s OK to fry your hardware (be it CPU, GPU or other parts)… Now I stop with ranting and let’s move to see my other discoveries and observations.

SpeedFan (my latest is v4.40 Final) has been my long term program for monitoring temperatures and adjusting fan speed ever since I remember. However I experienced problems when using with MacBook because it was not able to fully control my fan. No readings and no speed control. But at least it monitors CPU, GPU and HDD temperature. Strange thing is that its values are slightly different (2-5°C lower) that those shown by CoreTemp. On my PC and AMD CPU, there is no difference between those two programs.

So with SpeedFan not usable for changing fan speed I searched again and found very nice discussion about this problem on Macrumors forum. There was a smart guy named Liu Zhong who posted source codes for his simple fan control program, which was then modified by Lubbos who created nice GUI app Lubbo’s MacBook Pro Fan Control (my latest is v0.1.5). You may use it as replacement for SpeedFan because it can automatically adjust fan speeds according to current temperature. There are some restrictions and catches – I think it is only 32-bit and BootCamp has to be terminated because of resource sharing problems. Another program that was mentioned is Mac/SMC Fan Control for Windows (my latest is v0.65) by race2. It is simple command line tool which is able to detect range for fan speed and then set the speed as you desire. It still has to terminate BootCamp but after setting the new value it restarts it again. You cant use it as automatic fan speed control but you have nice and simple tool to set the speed before you start playing games to max and after that change it back to normal. My values are now 72°C during game play – higher than I would like to have but I think I can live with that…for now.

Lubbos Fan Control Settings

Lubbos Fan Control Settings

Now back to MacOSX, Snow Leopard to be precise. My first choice for temperature monitoring program was iStat Menus (my latest is v2.0) which is shown nicely in menubar. It can monitor several values (not just temp. and fan speed) – CPU, MEM and HDD usage, LAN activity or voltages and power. However it can’t do any fan regulations at all. I still don’t know if fan speed is automatic as default under MacOSX and it really spins faster under heavy load because during my observations I found no changes of fan speed even when CPU utilization was hitting maximum and temperatures jumped sky high. Very strange indeed.

Logical move was to find a SpeedFan alternative for Snow Leopard and I first chose smcFanControl (my latest is v2.2.2) which is like MacFan in Windows and only lets you set the fan speed. You can create custom user profiles for different situations (heavy load, charging, batery only… ) Next step was to find something for fan auto control. I found FanControl (my latest is v1.2) but soon replaced with MacBook/Pro Extended Fan Control (my latest is v1.2) which is like it says – just modified version of latter. With that I have now like 35°C/2800 RPM when idle, around 54°C/4500 RPM when playing Full HD movie in VLC and 65°C/6000 RPM when 100% CPU utilization.

FanControl settings

FanControl settings

Last but not least you may be interested in this: If you plan to uninstall FanControl permanently please follow these instructions (provided by its developer):

  • Remove the following files and folders (both on your start disk):

    /Library/StartupItems/FanControlDaemon
    /Library/PreferencePanes/Fan Control.prefPane
    (You will be prompted for the Administrator’s password when deleting these items.)

  • Reboot
  • Reset the System Management Controller (SMC). Please follow offcial link for instructions
  • This should be sufficient for purging FanControl and reseting SCM but user durruti posted updated advanced instructions for replacing FanControl with smcFanControl:

  • Delete smcFanControl (if you already have this installed).
  • Delete FanControl as described, deleting the daemon + pref. pane in the library folder.
  • Restart. now empty the trash can (that couldn’t be deleted because files were being used). restart again.
  • After a clean restart. once at the desktop, do a SMC reset. you’ll hear a long beep that’ll confirm.
  • Do a PRAM reset as you boot up. do this at least twice. For a total of 3 startup beeps.
  • Confirm with iStat widget that fans follows factory setting RPMs.
  • Download and install smcFanControl
  • Confirm with iStat
  • So what conclusion do I provide? It is simple: Use Extended FanControl (iStatMenus for nice monitor) while in Snow Leopard and Lubbo’s Fan Control while in Windows 7. You will have nice and clean SpeedFan like solution for cool and quiet Macbook Pro. And that’s what I always wanted!

    Now if you have any questions regarding this topic, please leave a comment. I hope that my post here will be somehow helpful and make your switch to Mac a bit easier 😉 I have one question for you: “What are your temperatures and fan speeds under MacOSX and/or Windows via Boot Camp?” Thank you in advance for your answers.