# ALBodyTemperature ¶

NAOqi Sensors & LEDs - Overview | API

## What it does ¶

ALBodyTemperature is responsible for raising events when some part of the hardware, able to overheat, has reach a concerning level of temperature.

It could be:

• Joints or Actuators,
• CPU,
• Battery.

## How it works ¶

### CPU - Temperature ¶

ALBodyTemperature retrieves temperature information from the CPU hardware and publish it in ALMemory key : Device/SubDeviceList/Head/Temperature/Sensor/Value.

For further details, see: CPU .

### Joint, Actuator and Battery Temperature ¶

ALBodyTemperature retrieves temperature information from the Temperature status of the Joints, the Actuators, and the Battery. If at least one of item has a non null status, an  HotDeviceDetected()  event is raised.

For further details about the temperature automatic limitation, see: Temperature status .

If one Joint, one Actuator or the battery is hot (non null Temperature status ), a notification is sent.

For further details about the temperature notification, see: Diagnosis - NAO , or Diagnosis - Pepper .

The notification can be disabled using  ALBodyTemperatureProxy::setEnableNotifications 

### Temperature Diagnosis ¶

ALBodyTemperature generates a diagnosis based on the Temperature status but with a threshold as shown on the figure below:

Result

Based on this diagnosis, ALMemory error keys are updated for each joint or actuator, the key format is: Diagnosis/Temperature/ JointName /Error. For further details see Diagnosis keys in: Diagnosis key list or Diagnosis key list .

A summary of the temperature diagnosis is available using  ALBodyTemperatureProxy::getTemperatureDiagnosis 

Effect

This temperature diagnosis has the same behavior than the passive diagnosis (see ALDiagnosis ) and if the Level of failure severity requires it, ALMotion module reacts in order to protect the robot and the user.

For further details about the motion diagnosis reflexes, see: Diagnosis effect .

## Use Cases ¶

It allows you to be notified if the temperature of a joint reaches the limit triggering an automatic limitation of the Stiffness .