I put together this quick guide on controlling the fan speed on affected Mac models where the HDD fan spins at full speed once the HDD temperature sensor is disconnected.
If anyone call help me identify all the models that are affected by this, I would be appreciative. I know that my 2010 iMac is one of them.
- Download the app “smcFanControl“
- Install smcFanControl into your Applications folder
- Open Automator
- Create “New Application”
- Go to Utilities > “Run Shell Script” and delete the word “Cat”
- Copy the following code into the Shell Script:
- /applications/smcfancontrol.app/Contents/resources/smc -k F1Mx -w 1770
- Test the Shell Script by clicking on “Run” and your fan should stop running at full speed
- Save the application to your SSD as “maxfanadjustment”
- Open System Preferences, go to Users & Groups, the tab for Login Items
- Click the “+” to add a new application and navigate to the Automator file you just created and add it.
What the above process will do is correct the out-of-control fan after the installation of the SSD and removal of the HDD. Apple uses a HDD temperature sensor which connects to the HDD’s jumper block. Since SSD’s don’t have a jumper block, the computer think’s there is a problem with the HDD and runs the fan at max speed.
You can run the Automator application any time the fan is out-of-control and by placing it in the Login Items it will automatically run it when you start the computer. If it’s not in Login Items, you will have to manually run it because this isn’t a persistent fix.
Now, if you’re like me, you rarely shutdown your Mac and instead only put it to sleep. I’ve found that upon wakeup of the Mac, this Automator script needs to be run again because the computer “forgets” about it.
I found a neat little app in the Mac App Store called “Scenario“, which costs $4.99 US. It can set up actions to be performed upon events, such as “Computer wakes from sleep”.
Upon installation, it creates a Script folder where you can put Automator scripts for it to run. Copy the script you made earlier and put it in the “Wake scripts” folder.
Now when your computer is awakened it will run this script for you and you won’t need to run it manually.
*There is one event that will cause the fan to spin out-of-control that so far requires you to run the script manually. That is “Wake for network access” which is found in System Preferences > Energy Saver.
I have found that when I put the Mac to sleep and then later use the Apple TV to access my iTunes library, which uses the Wake for network access protocol, the fan spins up to max. I haven’t figured out a way to get the script to run upon this event yet, so what I’ve done is set my Mac to never sleep, but to put the display to sleep after 15 minutes.