How do software programs determine the HDD temperature?

Some software programs can etermine the temperature of the hard drive. E.g. HWMonitor:

enter image description here

I say that there must be a thermometer inside the HDD and the data (via SMART) is passed as regular info to the soft which wants that info .

My colleague say that no, there's no thermometer inside the HDD. (i.e. the software guesses the heat based on the drive's RPM.)

How do programs determine the temperature of the HDD?


The hard drive has a temperature sensor (or multiple temperature sensors - they might be used for internal control, self-test etc...) inside, and this data is passed through SMART (in fact, this is a standardized SMART parameter).


No, the temperature monitor is embedded into the HDD. It's a more recent addition and you will only see it with some of the newer SCSI disks. Anything older than a few years won't have the sensors.

It's actually a part of the S.M.A.R.T. suite that reports around 30 attributes. (http://www.hdsentinel.com/smart/index.php)

The software just pulls it from the hardware. You won the argument.


all the software uses statistics about heat from the RPM info"

Hard disk drives spin at a constant rate (usually 5400 RPM, 7200 RPM, 10000 RPM, or 15000 RPM). So the statistics on RPM info will probably be of little value for determining temperature.