cancel
Showing results for 
Search instead for 
Did you mean: 

Inexplicable offset on internal temperature sensor of STM32F446

Andreas Fischer
Associate II
Posted on January 04, 2017 at 13:19

I have a Nucleo-F446RE Eval Board with a STM32F446 RET6U. The internal temperature sensor shows valid values of about 34°C with constant cpu load.

With the same program code on a STM32F446 RET6 soldered on the target hardware the internal temperature sensor shows a value of about -200 °C.

Both µCs have a factory-calibrated temperature value in the corresponding register, which is used for the temperature calculation. At the Eval board and the target hardware all supply voltages are basically the same. Why is there an difference? At several identical hardware versions, the temperature sensor shows always this behavior.

13 REPLIES 13
Posted on December 11, 2017 at 17:01

3.24V

Posted on December 11, 2017 at 17:02

and the chip that I am using is also STM32F446RET6

Posted on December 11, 2017 at 17:38

0x490 is then equivalent of some 98°C. Not entirely unreasonable.

Depending on supply current (i.e. working frequency, active modules, load on pins etc.), my experience is that under relatively normal workload and at around maximum clock frequency the chip's temperature may be higher from ambient by some 30°C, i.e. at 20°C ambient the chip runs up to some 50°C. You can calculate this difference from the thermal resistance of package and consumed power.

98°C sounds quite a bit high though and I'd expect the package is then hot, maybe 60-70°C. Can you measure or at least estimate the package temperature?

If it's definitively colder, then check the actual voltage on VDDA, check the sampling times, take internal reference reading (on channel 17).

JW

Posted on December 11, 2017 at 18:20

The temperature that measuring from the surface of the chip is around 30C however the program shows sth above 100C so it is definetely colder.

Thank you very much for your help. I will definetely check the nodes that you mentioned.