Difference between revisions of "Thermal Sensors"

From ThinkWiki
Jump to: navigation, search
(ThinkPad {{T43}}: - T43p too)
Line 3: Line 3:
 
==Accessing the sensors==
 
==Accessing the sensors==
 
The primary means of accessing the thermal sensors is through the [[ibm-acpi]] module, which provides up to 11 thermal sensors (some of which may be inactive) when loaded with the <tt>experimental=1</tt> option. Up to eight thermal sensors are exposed at {{path|/proc/acpi/ibm/thermal}}:
 
The primary means of accessing the thermal sensors is through the [[ibm-acpi]] module, which provides up to 11 thermal sensors (some of which may be inactive) when loaded with the <tt>experimental=1</tt> option. Up to eight thermal sensors are exposed at {{path|/proc/acpi/ibm/thermal}}:
 
+
:{{cmdroot|cat /proc/acpi/ibm/thermal}}
# cat /proc/acpi/ibm/thermal
+
:{{cmdresult|temperatures:  44 41 33 42 33 -128 30 -128}}
temperatures:  44 41 33 42 33 -128 30 -128
 
  
 
On some models there are three additional sensors at Embedded Controller offsets 0xC0 to 0xC2, which can be read by parsing {{path|/proc/acpi/ibm/ecdump}}:
 
On some models there are three additional sensors at Embedded Controller offsets 0xC0 to 0xC2, which can be read by parsing {{path|/proc/acpi/ibm/ecdump}}:
 
+
:{{cmdroot|perl -ne 'm/^EC 0xc0: .(..) .(..) .(..) / or next; print hex($1)." ".hex($2)." ".hex($3)."\n"' < /proc/acpi/ibm/ecdump}}
# perl -ne 'm/^EC 0xc0: .(..) .(..) .(..) / or next; print hex($1)." ".hex($2)." ".hex($3)."\n"' < /proc/acpi/ibm/ecdump
+
:{{cmdresult|40 48 43}}
40 48 43
 
  
 
The [[Active Protection System]] accelerometer also reports a temperature (but it is not certain that the sensor location is inside the HDAPS chip):
 
The [[Active Protection System]] accelerometer also reports a temperature (but it is not certain that the sensor location is inside the HDAPS chip):
 
+
:{{cmdroot|cat /sys/bus/platform/drivers/hdaps/hdaps/temp1}}
# cat /sys/bus/platform/drivers/hdaps/hdaps/temp1
+
:{{cmdresult|41}}
41
 
  
 
Finally, the hard disk temperature can be read through the SMART interface:
 
Finally, the hard disk temperature can be read through the SMART interface:
 
+
:{{cmdroot|smartctl -A /dev/hda | grep Temperature}}
# smartctl -A /dev/hda | grep Temperature
+
:{{cmdresult|194 Temperature_Celsius    0x0022  145  097  000    Old_age  Always      -      31}}
194 Temperature_Celsius    0x0022  145  097  000    Old_age  Always      -      31
 
 
 
  
 
==Sensor locations==
 
==Sensor locations==
 
 
This information is model specific.
 
This information is model specific.
  
 
===ThinkPad {{T43}}, {{T43p}}===
 
===ThinkPad {{T43}}, {{T43p}}===
 
 
The following image, prepared by Shmidoax, summarizes the results of his experiments using cooling spray to cool down components and observe the effect on the sensors.
 
The following image, prepared by Shmidoax, summarizes the results of his experiments using cooling spray to cool down components and observe the effect on the sensors.
 
+
{{gallery_start}}
[[Image:T43-thermal-sensors.jpg|ThinkPad T43 thermal sensors|600px]] (click to enlarge)
+
{{thumb|T43-thermal-sensors.jpg|ThinkPad T43 thermal sensors}}
+
{{thumb|T43-2668-thermal-sensors-zoom.jpg|ThinkPad T43 thermal sensors}}
[[Image:T43-2668-thermal-sensors-zoom.jpg|ThinkPad T43 thermal sensors - zoom|500px]] (click to enlarge)
+
{{gallery_end}}
 
 
 
Summary:
 
Summary:
 
 
  EC offset  Index in "thermal"  Location (estimated)
 
  EC offset  Index in "thermal"  Location (estimated)
 
  0x78        1                    CPU
 
  0x78        1                    CPU
Line 51: Line 42:
  
 
===ThinkPad {{T40}}===
 
===ThinkPad {{T40}}===
 
 
The location of one of the sensors is identified [http://forum.thinkpads.com/viewtopic.php?t=11574 here].
 
The location of one of the sensors is identified [http://forum.thinkpads.com/viewtopic.php?t=11574 here].
 
 
  EC offset  Index in "thermal"  Location (estimated)
 
  EC offset  Index in "thermal"  Location (estimated)
 
  0x78        1                    CPU
 
  0x78        1                    CPU
Line 68: Line 57:
  
 
===ThinkPad {{R51}}===
 
===ThinkPad {{R51}}===
 
 
The [[ibm-acpi]] documentation includes the report by Thomas Gruber:
 
The [[ibm-acpi]] documentation includes the report by Thomas Gruber:
 
 
  EC offset  Index in "thermal"  Location (estimated)
 
  EC offset  Index in "thermal"  Location (estimated)
 
  0x78        1                    CPU
 
  0x78        1                    CPU

Revision as of 20:20, 17 January 2006

This page aims to summarize known information about the locations and properties of thermal sensors on ThinkPad laptops.

Accessing the sensors

The primary means of accessing the thermal sensors is through the ibm-acpi module, which provides up to 11 thermal sensors (some of which may be inactive) when loaded with the experimental=1 option. Up to eight thermal sensors are exposed at /proc/acpi/ibm/thermal:

# cat /proc/acpi/ibm/thermal
temperatures: 44 41 33 42 33 -128 30 -128

On some models there are three additional sensors at Embedded Controller offsets 0xC0 to 0xC2, which can be read by parsing /proc/acpi/ibm/ecdump:

# perl -ne 'm/^EC 0xc0: .(..) .(..) .(..) / or next; print hex($1)." ".hex($2)." ".hex($3)."\n"' < /proc/acpi/ibm/ecdump
40 48 43

The Active Protection System accelerometer also reports a temperature (but it is not certain that the sensor location is inside the HDAPS chip):

# cat /sys/bus/platform/drivers/hdaps/hdaps/temp1
41

Finally, the hard disk temperature can be read through the SMART interface:

# smartctl -A /dev/hda
194 Temperature_Celsius 0x0022 145 097 000 Old_age Always - 31

Sensor locations

This information is model specific.

ThinkPad T43, T43p

The following image, prepared by Shmidoax, summarizes the results of his experiments using cooling spray to cool down components and observe the effect on the sensors.


Photos (click to see full size)
ThinkPad T43 thermal sensors
ThinkPad T43 thermal sensors

Summary:

EC offset   Index in "thermal"   Location (estimated)
0x78        1                    CPU
0x79        2                    Between PCMCIA slot and CPU (same as HDAPS module)
0x7A        3                    PCMCIA slot
0x7B        4                    GPU
0x7C        5                    Battery (front left)
0x7D        6                    n/a
0x7E        7                    Battery (rear right)
0x7F        8                    n/a
0xC0        none                 Bus between Northbridge and DRAM
0xC1        none                 Southbridge (under Mini-PCI card, under touchpad)
0xC2        none                 Power circuitry, on underside of system board under F2 key

ThinkPad T40

The location of one of the sensors is identified here.

EC offset   Index in "thermal"   Location (estimated)
0x78        1                    CPU
0x79        2                    System board under rear left corner of Mini-PCI module
0x7A        3                    ?
0x7B        4                    GPU
0x7C        5                    Battery
0x7D        6                    n/a
0x7E        7                    Battery
0x7F        8                    n/a
0xC0        none                 n/a
0xC1        none                 n/a
0xC2        none                 n/a

ThinkPad R51

The ibm-acpi documentation includes the report by Thomas Gruber:

EC offset   Index in "thermal"   Location (estimated)
0x78        1                    CPU
0x79        2                    Mini-PCI
0x7A        3                    HDD
0x7B        4                    GPU
0x7C        5                    Battery
0x7D        6                    n/a
0x7E        7                    Battery
0x7F        8                    n/a
0xC0        none                 ?
0xC1        none                 ?
0xC2        none                 ?