"Phone charging" even on 100% battery level

I have a Xiaomi 10T, the app and a supervised instance, all working fine.
It seems that the Android “battery_state” is not working as intended, at least for me. When the phone is plugged in at a battery level lower than 100% it correctly begins with “charging”. As soon as the battery level reaches 100% “battery_state” always remains at “charging” instead of changing to “full” (still plugged in though).
That way, whenever the phone is plugged it shows as charging, even though it may be at 100% (and some time after that). So essentially the two sensors lose their difference (plugged in=charging) and I cannot create automations around the “full” state, when the phone is still plugged in.
Also it seems that the battery level is updated only when the app is opened. What is the official update interval/method for all these sensors? Or what triggers the update? I’ve read conflicting info regarding time, updates when device tracker changes etc.
I’ve tried clearing the app data, I’ve given it all permissions and disabled all Xiaomi and Android power-related optimizations for this app (background monitoring etc.).
Any ideas?

A device is still technically charging the moment it hits 100%. We update teh battery state sensor as soon as the system reports the state change from charging to full. You will notice about 10-15 minutes after charging it will chagne to full because that is how it works.


Ok, thanks for that. What about the battery level sensor? When is it updated? I’ve noticed that it is updated only when I open the app. When the phone is locked or the app closed, the sensor is not updated.

Probably because the app is not allowed to run in the background when phone is sleeping.
Look at the settings if it’s “battery optimized”

every 15 minutes or when another sensor has an update

probably missing proper permissions for the app to run in the background without battery optimizations