Xiaomi draing battery

Good evening.

My Xiaomi devices are draining a lot of battery, 20% in a couple of days!
Is it a polling issue or something else i can fix?

Anyone else with the sam issue?
Best regards /

Are you polling them manually in HE?

No idea, I paired them and found a driver here on the forum. Have not changed anything else.

How do I poll them manually?
Do they update every time I open a Dashboard?

No, they won't refresh the device unless you command them to do it. Which driver are you referring to specficially? Are these brand new devices or ones you've had for a while? It's possible that the battery was not reporting correctly until it dropped enough to detect it. I have some Iris sensors that read at 100% then all of a sudden dropped to like 85%. But they've stayed there for quite a while, dropping only a couple of % since. So, unless they drain another 20% on day 3, I wouldn't worry about it.

They are brand new, had them for a couple of days, got my HE last thursday.
I use these drivers:

The drivers I support for Xiaomi / Aqara devices do not affect battery usage. Also, the drivers do not offer a way refresh the device to get the current battery level, because all Xiaomi / Aqara devices except the Xiaomi smoke detector send a "check-in" message every 50-60 minutes which includes the battery voltage.

When that battery voltage information is received, all the drivers do is calculate a percentage based on the voltage value. It's a very basic method and only gives a very approximate idea of the battery life.

The simple equation is this:

(Current Voltage value - Minimum Voltage value setting) ÷ (Maximum Voltage value setting - Minimum Voltage value setting)

The default Maximum and Minimum Voltage settings for most of the drivers is 3.05 V and 2.9 V respectively. This method to calculate battery life is VERY different from what you see on cell phones. That uses Amp hours data and much more complex calculations. Xiaomi / Aqara devices do not provide Amp hours data, so there is no accurate way to calculate expected remaining battery life.

If you haven't changed the default Max / Min Voltage values in the devices' preference settings, then a 20% change is equal to 0.03 V. So that means if your device came with a new battery at 3.05 V, it only has to go down to 3.02 V for a change from 100% to 80%!!!

What you should really look at is the voltage value. It can be seen in the Description Text column of the events list of the device, or you could enable log message output and in your hub's log page see the voltage values every 50-60 minutes.

I have done a lot of research on Xiaomi / Aqara devices, and actually 2.9 V for the minimum is high. According to Aqara documentation, their devices' battery should be replaced when the voltage goes down to 2.8 V.

So when you see the Voltage going down close to 2.8 V then it's probably time to replace the battery.

I plan on updating all of the Xiaomi / Aqara drivers to make the Minimum Voltage = 2.8 V, but you could change your preference settings to match this, and then watch for a battery percentage of 20% or lower as an indication that the battery should be replaced soon.


Fantastic response, thanks for the clarification!

HEY- welcome to Hubitat ! You're gonna love it here :smile:
I have a bunch of Aqara & Mi devices. Some of them were reporting lower battery than others. I think it's the fact that Xiaomi ships them with the battery activated, no battery protector tab. Also the age of the product that you received can affect batteries(ie; when was product made-last month or 2017?).

In any event once the devices stabilize the battery life is very good , especially for the tiny cells they use. A tiny 1632 in the door sensor easily lasts a year, depending of course on how many 1000's of times the door opens/closes.

1 Like

Download the Hubitat app