When reading the datasheet of the LSM6DSO32 IMU I noticed on p. 29 the characteristics of the integrated temperature sensor (see screenshot below): The sensor gives a digital reading of 0 for a temperature of 25°C, but the parameter Temperature offset is specified as \$\pm\$15°C!

Am I interpreting this value correct, that I get a digital reading of 0 for a temperature somewhere between 10°C and 40°C? This would be kind of insane and when this interpretation is correct I can not really follow why they even bother putting a temperature sensor on board. Sure, this offset will be pretty static and can be calibrated against, but every cheap temperature sensor for a few cents has way better specs.

So to formulate real questions:

  • Does this datasheet parameter actually mean what I think it means?
  • And if so, why would this sensor be so much worse than any jelly bean DS18B20?

enter image description here

  • \$\begingroup\$ It's not totally clear whether it is referring to the range of temperature error at 25C or over the entire measurement range. Sometimes basic temperature sensors like this are included because they are used for internal calibrations of other parameters, where absolute temperature accuracy doesn't matter, just repeatability. If they're this bad they are often not speced or advertised at all though. \$\endgroup\$
    – Justin
    May 11, 2020 at 14:41
  • \$\begingroup\$ The picture says the temperature can be more or less than the real value. But at 25 degrees, you should read 0. \$\endgroup\$
    – CFCBazar
    May 11, 2020 at 14:43
  • 1
    \$\begingroup\$ It appears you may be correct; I would ask ST (or look at the forums to see if the question has already been asked). \$\endgroup\$ May 11, 2020 at 14:43

1 Answer 1


The offset (zero error) at 25°C is maximum +/-15°C. There is no stated error for the sensitivity (span error). So at 25°C die temperature it will likely read between +/-4000 counts or so.

So if you do a single-point calibration at room temperature there's no guarantee about errors at other temperatures.

It's not guaranteed as good as a dedicated temperature sensor because they've not spent the money in design and probably test fixture test time to make it good. It's a freebie, probably with some kind of digital calibration that takes place almost instantly. It may, in fact be much better than guaranteed, but they're definitely not promising anything of the kind.

As a general rule, if you read a datasheet and something seems ambiguous or suspiciously unstated, assume the worst and you'll very seldom be wrong.

If you assume the main purpose of the die temperature sensor is to compensate for temperature drift in the other sensors by calibration, the absolute accuracy is not very important, only stability (and resolution). Even linearity is not that critical.

  • 1
    \$\begingroup\$ Today I finally got an answer to my request from the ST Support, but they basically just confirm what's already said here: "The embedded temperature sensor can be used to perform an external temperature compensation (when it’s not necessary to have a very accurate absolute temperature value but only regarding the relative accuracy). About your question, yes, you are right. In case you need to measure environmental temperature more accurately, I can recommend using one of our temperature sensors". \$\endgroup\$
    – jusaca
    May 25, 2020 at 11:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.