Trying to change the "Temperature Offset" of the Xiaomi Temperature and Humidity Sensor

I have been trying for awhile now to change the Temperature Offset of the Xiaomi Mijia Temperature and Humidity Sensor, but it never does change. Is there a trick to get it to change? The temperature is off by "1.4°".


After you change the offset and save preferences, it will change with the next time it reports, not immediately.

1 Like

Yes. And it does work, as I've calibrated all of mine against a reference temperature meter - and confirmed they changed on next report.


@bjcowles After I entered my Offset Number, I did click on "Save Preferences".

It now been 8hrs from the last time that I entered my Offset Number, and Save Preferences, but it still has not saved my Offset, and it's still off by 1.4 (1.3)?

I measured the temperature were the Xiaomi sensor is mounted.

All images were taken about the same time.

Interesting. I just changed the offset on one of mine to test. I'll see in about 15-20 minutes if the change sticks.

So, I changed the offset to 5, saved preferences, and saved device just for good measure. My offset did work.

21.9C = 71.42F then add 5 and It displays 76.42F

Re-reading your posts, I realized I have the Aqara model which is different from your's. Maybe @veeceeoh is aware of of possible differences in behavior between the two models and can give you a suggestion? I'm sorry I can't be of more help.

@JasonJoel Do you have the Originals or the Aqaras?

1 Like

All 15 of mine are aqara


It's the Xiaomi Mijia Smart Temperature and Humidity Sensor.

Thanks, I really appreciate the both of you all trying to help me!

The square Aqara versions work properly.

1 Like

I have always wondered if these sensor devices (the common ones we use with HE) have a constant "incorrectness" throughout their range. Have you checked a low and high on the same device.

I haven't. That's a good idea though.

1 Like

He's something that may bake your noodle. The fun I've found is that they change their readings at different times relative to each other. You can have 2 of the same sensors and they will each register 75.5 somewhere between 30 seconds and 10 minutes of each other. That makes for a heap load of fun trying to calibrate them.

First off, I just want to state that for a end-user cost of somewhere between $8-15 per unit, I'd never expect Xiaomi / Aqara Temperature / Humidity sensors to be as accurate as dedicated precision temperature sensors with significantly higher-cost components. I don't even believe in their claim of +/- 0.3 degrees Celsius accuracy.

There's no trick, other than clicking "Save Preferences" and waiting until the next temperature report event for the changed offset value to take effect.

To troubleshoot your issue, I would recommend looking at the driver's log output rather than comparing the reported temperature to an external device. To check whether the offset is working, I compare the Raw Reported Temperature, given in Celsius, to the final Reported Temperature, given in the unit determined by your hub's settings.

There's no difference in the way the "original" round Xiaomi Temp-Humidity Sensor model RTCGQ01LM and the Square(ish) Aqara Temp-Humidity Sensor model WSDCGQ11LM report temperature and humidity.

But just to be sure, I did a test with two of my round Xiaomi sensors using the same Temperature Offset as in your attempts. Here's my log output of the first temperature report after changing the setting:

The first sensor reported a Raw Temperature of 26.02°C, equal to 78.84°F, and the final reported temperature was 80.24°F, so the +1.4°F offset was added.

The second sensor reported a Raw Temperature of 24.81°C, equal to 76.66°F, and the final reported temperature was 78.06°F, so again the +1.4°F offset is clearly working as expected.

If there's any chance you could provide log output, that would be instrumental (pun intended!) in helping to solve the issue.

However, in absence of log output, there are still a couple of things I noticed from your screenshots which are unexpected:

  1. A tempOffset State Variable is listed in the device details page. There shouldn't be one, because tempOffset is a preference input variable, not a state variable. Across my 8 Xiaomi & Aqara Temp-Humidity sensors, none of them list tempOffset as a State Variable.

  2. The model name listed in the Data section of the device details page is lumi.sens, and if paired correctly the Xiaomi model should appear as lumi.sensor_HT. A Google search shows me it's possible that the lumi.sens model may be picked up if the reset button was being short-pressed during the pairing process. Still, I have to wonder if something went awry during the pairing process.

Based on my two observations above, I would suggest removing the sensor and re-pairing it, and then after saving the Preferences with the desired offset and both info / debug message logging enabled, leaving a log window open to catch the messages that happen on the following temperature report to have a look at the raw versus final reported temperatures.


@veeceeoh Thanks for that info.
I will try later on today to remove and pair the sensor back to HE, and post my finding.

Thanks again!

What device do you use for calibration? I would really like to start having faith in reported temperatures.

I just bought one of the bazillion temp/humidity meters off of amazon. Not a fully calibrated instrument, but seems to work the way I need.

I got this one, but there are a lot more, of various price ranges.

Many thanks. For home use it doesn't really matter if the temperature readings are laboratory accurate just that they are all close to some standard measurement. This looks to be a great solution.

I thought I would add something here. I have Samsung Multi-sensors in the garage, outside the back door, and several outbuildings. When I first paired them, I had them beside me and paired them all at once. The readings sitting beside me all matched. Once mounted in their proper locations, the temperature readings vary greatly and I was always somewhat doubtful that the reported values were anywhere near reality.
I had forgotten I had a non-contact laser IR temperature gun that I use with the grill. I don't have any idea how absolutely accurate it actually is but it has an enormous range and I have tested with freezing and boiling and it seems accurate at those 2 readings. I went around to all my Samsung multi-sensors and they were all within a couple of tenths when I checked using the gun. Similar guns can be quite inexpensive and very quick (half a second or so) and easy to use.


Wanted to add a question here.
I just git a great deal on ebay on 4 iris gen 1 contact sensors ( to go with the other 4 i have....just bragging on the great price i got them at:)
On the 1st set up i noted that they had about a 2 to 2.5 degree temp spread from my go control wave i used that as the reference.
One the 1st setup - i adjusted each accordingly ( -2.6, -2.2, -2.2) and numbers 2 & 3 took the offset immediately, After 10 mins of trying to input the offset, savings preferences it didn't adjust sensor 1 at all, so i removed the offsets form all, rebooted my HE Hub.
Set up 2. Input all of the offsets again - this time, 1 & 2 took the offset - 3 didn't.
So here is the question,,,,,,can you force a reset somewhere of the device so it reports the measurement with the offset? I tried resetting the hub - no love.
i mean....this isn't a big deal....just trying to see if there is some procedure to follow that makes it work each time.