Xiaomi Robot Vacuum Binding

Yes!

1 Like

Is it possible to remote control the robot with it (like the joytick in FloleVac App) ?

My use case: move the vac 2meters straight out of the charging station (vac sleeps under the bed :slight_smile: ) by pughing a button for easy dust bin removal and send it back afterwards

yes, that is possible if you control send the right commands to the command channel. Best done via a rule. (search in this topic as someone posted an example some time ago)

1 Like

I think it is easier to send a coordinate to the vac to go there (rather then pressing the ‘forward’ button for a specified time). Someone did the same before, you can just send it anywhere without turning on the vacuum.

1 Like

Hi there,

I am completely new to openhab. I have installed openhab 2.3.0 on my raspberry b3+.
Also I have installed the eclipse market place misc-market - 2.3.0 and set Maturity Level to alpha. Some apps seems to be from the market, for example
Alarm Controller
market:binding-4230109 - 1.0
But Xiaomi Mi IO is not available. I want to add my vacuum and a yeelight ceiling.

Some hints for me to get this?
Thanks Micha

Hi,

It looks like I have the same problem.
I have Openhab 2.3.0 ( installed on Linux Mint and Eclipse Market maturity level set to “Alpha” ) some of the bindings from Market are available but I can not find Xiaomi Mi IO.
Is there any way to fix this? Or I’m missing something?

Thanks,
Marcin

I somewhat prematurely removed the binding from the market assuming it would be available in all versions :worried:
To enable it now, either upgrade to the snapshot release or execute in the shell
bundle:install https://openhab.jfrog.io/openhab/online-repo-snapshot/2.4/org/openhab/binding/org.openhab.binding.miio/2.4.0-SNAPSHOT/org.openhab.binding.miio-2.4.0-SNAPSHOT.jar
Than bundle:list to find the bundle nr.
Than bundle:start nr where Mr is the number of the bundle… Probably the last/highest number

Sorry for the inconvenience

Thank you :slight_smile:
I was able to install the binding and it works perfectly.

Thanks again for your help.

Tried the new one, still get some exceptions on start up immediately.
Let me know, if you need additional information.

Greets Udo

2018-12-09 20:06:48.765 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception

java.lang.NullPointerException: null

	at org.openhab.binding.miio.handler.MiIoAbstractHandler.skipUpdate(MiIoAbstractHandler.java:214) ~[?:?]

	at org.openhab.binding.miio.handler.MiIoUnsupportedHandler.updateData(MiIoUnsupportedHandler.java:104) ~[?:?]

	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]

	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]

	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]

	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]

	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]

	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]

	at java.lang.Thread.run(Thread.java:748) [?:?]

2018-12-09 20:06:49.403 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception

java.lang.NullPointerException: null

	at org.openhab.binding.miio.internal.Utils.hexStringToByteArray(Utils.java:40) ~[?:?]

	at org.openhab.binding.miio.handler.MiIoBasicHandler.initializeData(MiIoBasicHandler.java:237) ~[?:?]

	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]

	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]

	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]

	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]

	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]

	at java.lang.Thread.run(Thread.java:748) [?:?]

2018-12-09 20:06:49.430 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception

java.lang.NullPointerException: null

	at org.openhab.binding.miio.internal.Utils.hexStringToByteArray(Utils.java:40) ~[?:?]

	at org.openhab.binding.miio.handler.MiIoBasicHandler.initializeData(MiIoBasicHandler.java:237) ~[?:?]

	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]

	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]

	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]

	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]

	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]

	at java.lang.Thread.run(Thread.java:748) [?:?]

So will it be a ‘non market binding’ anytime soon?
It works like charm!
Just telling alexa which room to clean and relax :wink:

Yes… actually the market binding is already removed (somewhat prematurely…)
image

2 Likes

First of all, let me say that I love this binding: I use it with my s50, and I think it is the part of my home automation with the highest WAF.

I noticed that whenever the vacuum is offline for some hours (for any reason: a problem in the router, or it was turned off) the entire OH becomes unstable.
It happened two times:

  • The first time, I could not even log into the raspberry instance, and had to shut it down.
  • The second time, I was able to kill and restart OH. In this case, I noticed that something was strange because other bindings (to WiFi devices) stopped working with no reason.

Unfortunately, I do not have any “interesting” log from those two events, but it looks like some issue with memory because in the second case, OH was using quite a lot of memory before the restart, and the log contained few OOM exceptions.

Are you able to put the market version back till it’s in a milestone?

My vacuum (gen 1) is not able to save the maps. But I want to go ahead with zone cleaning, because it works perfect.
Our small boy sometimes plays with the vac. He pulls it away and the vac drives back to the station. When that happens, it creates a new map and my coordinates are no longer valid.
Is there a possibility to power off the vac?

I had the same issue.
Just perform a normal full cleaning cycle manually and your map is back …

Thanks. I never know that.

However, is there a possibility to switch it completely off?

Could you update to the very latest version.
I made some updates last week which may fix the sort of issue you are describing.
Log would be great too if this happens again.

It is in the latest milestone release. M8 :grinning:

It takes couple of days to get approved again, so I am bit hesitant to create new entry,

i could not find a way.

If it really needs to switch off, rooting and sending shutdown via SSH will shutdown the vacuum