[APP][Pro] Xiaomi Mi Home App for WiFi devices

I’m trying to add the Xiaomi Air Purifier 3H to Homey using the Mi Home Homey app.I got the right token and ip address, but get the following error:

device.power is not a function

The token is right, since it’s working perfectly with the Xiaomi Air Purifier Homebridge plugin.

Maybe this can help… The specific model is as follows:


Same issue. Token and IP address is OK. @Maxmudjon

I got also problems with connecting my S5 Max to Homey. Got the IP and Token. When i press the “test connection” button i get the fault code “device.getState is not a function”

For now i connect te roborock S5 MAX to Node Red, and via MQTT i can controle the roborock.

For now i am happy :innocent:

1 Like

How did you manage this? I’m curious!

my english is not verry good but i try to explane it.

I already use Node Red on a rasberry for my dashboard. I have installed this on node red node-red-contrib-miio-roborock (node) - Node-RED

There u can controle the roborock with the IP adres and the token. U get 2 node’s, one for control and one to read the status of de roborock.

It’s verry easy to set it up (if u already have a raspberry and node red installed on it…

If u wanna no how to instal node red and mqtt u can look at this topic

I hope u understand my bad english :crazy_face:

Thanks, I understand, I have Domoticz running on a Pi, so i’ll look into it!

Same problem here and no response from dev.

Some thing must have happens last update with homey , before that i have all my fans in homey , but now i get “Could not connect to device, handshake timeout” tried 3 diffrent fan all “model”:“zhimi.fan.za3”, when i try and add them agan

So, I have found a solution to automate the Roborock S5 Max with Homey, although it’s sort of a weird workaround, but it works :slight_smile:

I took the following steps:

  1. connect the Roborock to the Roborock official app (instead of the Mi Home app)
  2. Connect the Roborock service with google assistant
  3. record your own voice saying: Hey google, Start Cleaning
  4. Upload your recording to Soundboard on Homey
  5. Create a flow to play the soundboard file on Sonos and voila!

Again, this is by far a solution, but it is possible to automate the start cleaning process of the Roborock S5 Max - I still have to create some flows for instance, if we are away for an hour, and there hasn’t been any cleaning the last two days, because I don’t want the robot to start cleaning when I just go to the store (60 minutes or less).


  • I have 2 Sonos speakers in the same room, one of them plays the recording, the other one “listens” to the Hey Google sound - offcourse also works with other Hey Google commands.
  • It didn’t work for me to use the above solution on one Sonos device, so you do need two in the same room (in my case, kitchen is the “player” with volume to 50% and the living room is the “listener”
  • Stopping or docking the robot is still a bit difficult, because when the robot is cleaning, the Sonos Beam finds it harder to hear the (recorded) voice…
  • only starting a (full) clean is possible by using google assistant, not zone or room cleaning (yet hopefully).

Hope this helps some people…

Problem connecting Aqara gateways.

Hi guys. troubles here. I disconnected my aqara gateways, and now I cannot add them anymore.

My homey is SWV 4.2.0
The aqara gateway is SWV 1.4.1_176.0220

Since all of my Xiaomi & Aqara zigbee nodes are connected to homey through my gateways, nothing is working at the moment :frowning:
Help needed, WAF is free falling…

The newer gateways, have a closed 9898-port.
to open the port:

1 Like

Will the roborock s5 max also work with this app?

For me, it works. You will have to download the old xiaomi app to easily have access to the token.
You can find the app here:

1 Like

Unfortunately it only works for android.

I’ve tried an other way to access the token (with iOS back-up etc.)

But when I wanna add the roborock in the Xiaomi mi home app as a mi robot (I don’t know or that is correct). I get the message: could not connect the device. What am I doing wrong?

Try the Mi Homey app. You will have to install using the CLI method. this one works just fine for me

In the top post it say
Quote: “ no need to delete the device from the mihome app”

For the xiaomi app, do I need to delete the vacuum in the app on my phone and reset the WiFi?
I like the roborock app more than I like the mihome app. Is there a way to use that app to make rooms and the map and than connect it to the homey.
Or am I thinking wrong

I will try this way as well.

I’ve install the Mi home app (CLI method) on my homey. But when I wanna add my roborock, there is now way to push connect and I get the message “not connected”

I tried it again with the Xiaomi app, but I see three messages. “handshake time-out” & “Device getState is not a function” & “network request failed”. I don’t see it on the same time.

Am I doing something wrong or do I forget something (like reset wifi or something else)?

Thanks for your help

Thanks for the great app. It really does a great job in controlling my Mi Robot Vaccum 1st Gen every single day.

I just got a 2S Fan (ZhiMi) and was able to add it easily after extracting the token.

This homey app only offers to switch the fan off and on, but I would love some more automation options for controlling with flows.

Is there any way (e.g. “Post” commands) to change for example the speed of the vent without using the Xiaomi app?

Thanks for any suggestions!