[OBSOLETE] Xiaomi Sensors and Button (beta)

The sensors connect directly to the smartthings v2 hub. No need for the Xiaomi hub.

I do not have a power socket but there is a device handler for them, so I would guess they work.

Hi @tommyincville just to let you know I am working on same functionality so I know when to ventilate my basement with outside fresh air.

However I do not find using relative humidity and temperature as a good comparison. I am converting the relative humidity to absolute humidity g/m3. Then I can do compare on outside air to inside air.

Please see this DH, with help from @johnconstantelo Help adding tile in DH

Does anyone know if Ikea Tradfri Bulbs (paired to the Smartthings Hub) will act as repeaters for the Xiaomi sensors?

From what I read at the start of this thread, the Smartthings outlets do not, but has anyone done any tests with the Tradfri bulbs?

There isn’t a capability for “Barometric Pressure”
I did add the pressure offset.

The units are in kPa from the xiaomi aqara temp sensor.

the temperature sensor seems to report temperature every 10 mins. is there any way to change this interval?

thank you.

For this device, you are not able to change the poling manually. However, I use community app Polster to force update the device at my prefered interval. Understand this; the current interval is set to save bettery on the device and if you update it frequantly, you will drain the battary faster.



thank you.

1 Like

I recently bought 4 of the motion sensors. All of them paired successfully initially. Two of them stopped reporting within a few hours, and the battery level was never reported for these two.

I unpaired one of them from the ST App. I was not able to pair it back afterwards. How long and how many times I need to press the Xiaomi reset button to ensure it has been unpaired?

Just hold it down for about 5 seconds.

I have one of the motion sensors, and it’s paired okay, but when I get motion, it starts, but never stops (until I press reset motion).

Also, the Configure button doesn’t seem to do anything.

What have I done wrong…?

I am using a temp/humidity sensor and am getting a mega battery drain. It has gone from 100 to 14 in 3 days and this is the second time in a row. Is it maybe a faulty device or is it possible just a problem with getting a correct reading?

Same thing happened to me. But I did not change the batteries the last time, just let it run. It kept working, and after a couple of days at around 1% it jumped up to 98% and have stayed above 90 for a couple of weeks


I always make a point of leaving the newly paired Xiaomi devices near the hub for at least 12 hours before moving them to the final destination. Works for me. In fact it’s the Samsung sensors which get knocked off, in particular the multi sensor which I have on my back door.

1 Like


I am using this device handler in WebCore.
I have created a piston that uses the date attributes which are returned as string. I convert these strings to dates, otherwise i can’t do a date comparison in WebCore.
This string -> date conversions seems to be a problem as this string is not in a correct format.
So i created my own version of the device handler and added two more attributes “lastOpenedDate” and “lastCheckinDate” both of these types are dates.
Now i can use these attributes properly in WebCore.

Basically i changed the following code (not 100% sure if this is correct, but it seems to work in WebCore)

   attribute "lastOpenedDate", "Date"
   attribute "lastCheckinDate", "Date"

In parse:

   def timeDate = new Date(now).getTime()
   sendEvent(name: "lastCheckinDate", value: timeDate)

   if (description?.startsWith('on/off: ')) {

      sendEvent(name: "lastOpenedDate", value: timeDate)

Is it an idea to put this in the standard handler (or something similar)?


I have to say that after 2-3 months with the Xiaomi motion sensors, I am very impressed. I have them set up in my closet and my wife’s to turn on and off the lights based on motion. Paired with a Lutron Caseta in-wall dimmer, the lights turn on in a second or less after we enter the room. I have them in the kids’ rooms to turn off the lights after 15 minutes of no motion. I put one in the shower to automatically turn on the exhaust fan and turn off after 30 min (will adjust in the winter for a longer run time). I’m now over my insecurities with this sensor so I will order more for use in conjunction with the security portion of my ST setup.


I have the button and while it sends a “checkin” every time the button is pressed, I cannot get it to register an actual button press. Any idea what might be wrong? I am using a4’s handler.

I have 14 open/close Xiaomi sensors, 2 don’t like to stay online.
I have 6 Xiaomi motion sensors, 1 doesn’t like to stay online.
I have 1 Xiaomi aqara temp which was having issues staying online, it might be working now.

I added 2 iris switches (zigbee gateways) a couple weeks ago to try and help with the sensors that drop but it has not helped so far.

I did add the device health monitoring to my DH and it is nice because I know when a sensor drops but it is harder to get them back online.

Anyone else having similar results?

1 Like

I had a lot of my sensors dropping out at the beginning but now they all seem to have settled in besides one that is quite far away on a outside shed so I’m planning on getting a repeater.
On that note you said you’ve added a repeater and it’s not helped.
Did you you know zigbee devices won’t automatically connect to a stronger signal if a new one is added…
So that means you add your new repeater but the device won’t latch onto it , it will keep the connection it has unlike z wave
So you need to power of the hub and then when it comes on it will connect.

I have to press them twice - guessing that the first press “wakes it up”. Not sure why I have to do this as others don’t.

The new Aquara buttons are slightly different to the old ones it seems. Looking at the code it looks like the old buttons sent a 1 when pressed and the new ones seem to send a 0. I’ve not had the time to properly debug the messages that the button is sending but I’ve managed to hack the existing code so that button presses are working. I haven’t tried/got holds to work yet.