This is an update to my other posting about the upgrade of my 2010 iMac to the Samsung 840 SSD. In that post I had an issue with controlling the HDD fan since the sensor was unable to be connected to the SSD. With the sensor disconnected the fan would run at full RPM continuously. I was able to control the speed with software on just about every event the computer would go through, such as startup, shutdown and wake from sleep. The only event I couldn't control was wake for network access. That event occurs when I access the iTunes library from the Apple TV at which point the fan would run at full RPM again. The only way I got around that was to never put the iMac to sleep, leaving it on all the time and only putting the display to sleep.
Samsung Electronics Samsung 840 Series Solid State Drive (SSD) 500 GB SATAIII 2.5-Inch MZ-7TD500BW
I got to thinking the other day that Apple probably didn't read the HDD temperature by sending data from the HDD itself, but rather measuring the temperature of the jumper pins on the HDD, where the sensor plugged in.
I had an old HDD which didn't work anymore and I removed the controller board from it because it had the IDE jumper pins on it. I took that and used some 3M 2-sided tape and stuck the controller board to the SSD and connected the temperature sensor cable to the jumper pins. I didn't connect any power or anything else.
I put the iMac back together and turned it on, removed all my software tricks and scripts and restarted again. I went though all the events of startup, shutdown, restart, wake from sleep and wake on network access and never once did the HDD fan spin uncontrollably. It worked!
The fan stays at a speed of around 1100 to 1200 RPM's and I figure the ambient temperature inside the iMac affects the pins a little and that's what gives the various speed readings of the HDD fan. The dummy load HDD controller board from a dead HDD did the trick. It's too bad for me that I didn't think of this sooner, like 2 or 3 months ago.
Download the pdf version with pictures here.