This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

nRF51822 TEMP internal temperature sensor characteristic

I'm trying to use the internal temperature sensor of the nRF51 to know the die temperature. Its accuracy is specced as +/- 4 degC, even +/- 8 degC at the extremes. Does anyone know more properties of this uncertainty? Is it a fixed thing, that I can improve by calibrating an offset? Or is it noisy, something that I might filter out using multiple measurements?

Edit: See my own answer, the offset I measure is unusually large. Any thoughts where this might come from?

  • Hi,

    The TEMP sensor is calibrated during production and there is nothing much that can be done to change its behaviour thereafter.

    /Aryan

  • Hi Aryan, thanks for the feedback. I understand that I cannot change the sensor or its behaviour. But I am wondering if you have more details on the accuracy of the sensor. Can I process the data afterwards to get more precise results?

  • From this question, it seems that it is a pure offset:

    The error read on the TEMP peripheral should be pure offset error. You can calibrate the temperature value in software, i.e. if you know the temperature in your room, just add or subtract from the measured value to get the correct value.

    However, be aware that the die temperature is in general not equal to the ambient temperature.

    I did some measurements comparing the internal temperature sensor value with temperature measured by a dedicated temperature sensor (TMP112) on the same PCB, in a controlled environment. Because the application makes very little use of the CPU, I do not expect that it is significantly hotter than the environment. Plot of temperature and temperature error.

    This confirms previously made statements that the noise is low, and the accuracy is mainly distorted by an offset. To my surprise however, this offset is around 13 degrees! When corrected for the average, the accuracy is nicely within the specced +/-4 degrees. Could this large offset have something to do with having to set the temperature offset register to 0?

  • Hello Bouk,

    We use the TEMP sensor and we set an offset. You don't have any another way, I guess.

    Al

  • reading multiple readings and taking an average might result in less noisy reading but the average will not deviate too much (like +/-4 C) from single reading. Also note that the noise in result is more as the die is getting closer to one end of its operating temperatures, otherwise you will only see negligle noise (about +/-0.25 C deviation if die is operating at 10-60 C). Hope this helps

1 2 3 4