Xiaomi Robot Vacuum Binding

@Daniel_Linder delete your things and manually add it as a basic device.
Change the model in the config (as you did ) to the yeelink.light.ceiling4
that should give you all the channels.

If it works than we can add yeelink.light.ceiling10 to the file as well and it detect it automatically

@fishi0x01 that is indeed somewhat unuasual.
the only thing that comes to my mind:

  • ensure you don’t have 2 things defined for the same device (or maybe have other home automation apps connecting to the device)
  • lower the poll frequency

@marcel_verpaalen If I manually configure the thing as

Thing miio:basic:light "Yeelight Meteorite" [host="192.168.1.195",token="2a311f11e99d0f66c1669743ed3cec3e",deviceId="07606718" ]

I get an “online” thing, however without any items (the auto discovered thing has “on/off” and “command” items.) If I change the device model string (yeelink.light.ceiling10) in paper UI, I get the message “Error 409 conflict” and it automatically goes back to yeelink.light.ceiling10. I also get a duplicate thing autodiscovered in the inbox, even if I have manually set the thing.
I am out of ideas what to do… any suggestions?

add the modelId in the definition, somethink like this. (as I’m not sure if you can have a text definition and than do additional updates via paperUI. Alternative is to add the thing via paperUI without text config)

Thing miio:basic:light "Yeelight Meteorite" [host="192.168.1.195",token="2a311f11e99d0f66c1669743ed3cec3e",deviceId="07606718" , model="yeelink.light.ceiling4"]

Hi again,
Thanks for the hints. After some (a lot) trial and error, it was a sucess. However, the thing definition must look exactly like this for it to work for me.

Thing miio:basic:07606718 "Yeelight Meteorite" [ host="192.168.1.195", token="a190d29e81034b03bb0634194f1aa1fd", deviceId="07606718", model="yeelink.light.ceiling4"]

However, as mentioned - it works perfectly fine with the model “yeelink.light.ceiling4” model data. So if “.ceiling10” could be added to the database, it would be a good thing.

Many thanks /Daniel

Hi @marcel_verpaalen !
Established a binding in a test environment, connected six bulbs and a vacuum cleaner.
At first glance, everything is fine, only informational messages in the logs are worried.
My lamps in the process of operation are controlled (brightness, temperature, color) openHUB, and turning on and off through a physical switch.
Each time, when the switch is turned on, in the log I see the following entries:

2019-10-31 17:23:10.964 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'miio:basic:0332CD19' to inbox.
2019-10-31 17:23:10.969 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'miio:basic:0335C499' to inbox.
2019-10-31 17:23:10.974 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'miio:basic:0335E030' to inbox.
2019-10-31 17:23:10.982 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'miio:basic:03360ED4' to inbox.
2019-10-31 17:23:10.988 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'miio:basic:0335C161' to inbox.
2019-10-31 17:23:10.991 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'miio:basic:0335FA38' to inbox.

When I reboot the openHAB, I see the following entries in the log file:

2019-10-31 17:00:34.142 [INFO ] [internal.handler.MiIoAbstractHandler] - Mi Device model yeelink.light.color1 identified as: Yeelight Color Bulb (yeelink.light.color1). Matches thingtype miio:basic
2019-10-31 17:00:43.857 [INFO ] [internal.handler.MiIoAbstractHandler] - Mi Device model yeelink.light.mono1 identified as: Yeelight White Bulb (yeelink.light.mono1). Matches thingtype miio:basic
2019-10-31 17:00:44.032 [INFO ] [internal.handler.MiIoAbstractHandler] - Mi Device model roborock.vacuum.s5 identified as: Mi Robot Vacuum v2 (roborock.vacuum.s5). Matches thingtype miio:vacuum
2019-10-31 17:00:44.213 [INFO ] [internal.handler.MiIoAbstractHandler] - Mi Device model yeelink.light.mono1 identified as: Yeelight White Bulb (yeelink.light.mono1). Matches thingtype miio:basic
2019-10-31 17:00:44.250 [INFO ] [internal.handler.MiIoAbstractHandler] - Mi Device model yeelink.light.color1 identified as: Yeelight Color Bulb (yeelink.light.color1). Matches thingtype miio:basic
2019-10-31 17:00:44.254 [INFO ] [internal.handler.MiIoAbstractHandler] - Mi Device model yeelink.light.color1 identified as: Yeelight Color Bulb (yeelink.light.color1). Matches thingtype miio:basic
2019-10-31 17:00:44.287 [INFO ] [internal.handler.MiIoAbstractHandler] - Mi Device model yeelink.light.mono1 identified as: Yeelight White Bulb (yeelink.light.mono1). Matches thingtype miio:basic

This is in a test environment, with six lamps, and when there will be much more.

Thing miio:basic:white1 "White-01" @ "yee" [ host="192.168.215.51", token="60e7704d26b31a2a464f70dbdd7923c9", deviceId="03360ED4", model="yeelink.light.mono1" ]
Thing miio:basic:white2 "White-02" @ "yee" [ host="192.168.215.52", token="227a8ae518f2a31d15a6cb23bcacad0a", deviceId="0335FA38", model="yeelink.light.mono1" ]
Thing miio:basic:white3 "White-03" @ "yee" [ host="192.168.215.53", token="8e2fc37223bacafbba59888022733e13", deviceId="0332CD19", model="yeelink.light.mono1" ]
Thing miio:basic:color1 "Color-01" @ "yee" [ host="192.168.215.54", token="6670885c6ad5c4a4916623b3e1e4549c", deviceId="0335C499", model="yeelink.light.color1" ]
Thing miio:basic:color2 "Color-02" @ "yee" [ host="192.168.215.55", token="e1f60a1be0b9a28ae06e652021da342b", deviceId="0335C161", model="yeelink.light.color1" ]
Thing miio:basic:color3 "Color-03" @ "yee" [ host="192.168.215.56", token="9c803711bcf4f2e2f770e0993b209e32", deviceId="0335E030", model="yeelink.light.color1" ]

For me, this is a lot of redundant and unnecessary information that prevents me from analyzing log files.
Tell me, did I configure something incorrectly?
How to make sure that this information is not displayed in the info log, but is displayed, for example, in the debug log?

The binding is great! Thank you for your work, I watched the topic from the first day, you spent a lot of time, skill and patience and this is not the end :slight_smile:

Hi,
I have two Xiaomi Robots (MI Vaccum Cleaner s2 and roborock s5). I followed the manual above, but I don’t get it work. I get the following errors in the log-file:

2019-11-02 16:35:23.845 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item for widget org.eclipse.smarthome.model.sitemap.Group
2019-11-02 16:35:23.848 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item ‘gVac’ for widget org.eclipse.smarthome.model.sitemap.Group
2019-11-02 16:35:23.851 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item ‘gVac’ for widget org.eclipse.smarthome.model.sitemap.Group
2019-11-02 16:35:23.853 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item ‘gVac’ for widget org.eclipse.smarthome.model.sitemap.Group

… and so on for all items.

My items in Roboter.items

// Gruppe für alles
Group gVac     "Xiaomi Saugroboter"      <fan>

// Gruppe für die einzelnen Aspekte
Group gVacStats2 "Status"           <status> (gVac)
Group gVacConss2 "Zeitplanung"        <line-increase> (gVac)
Group gVacDNDs2  "Einstellungen 'Nicht-Stören'"  <moon> (gVac)
Group gVacHists2 "Verlauf"         <calendar> (gVac)
Group gVacNetworks2 "Netzwerk Details"       <network> (gVac)
Group gVacStats5 "Status"           <status> (gVac)
Group gVacConss5 "Zeitplanung"        <line-increase> (gVac)
Group gVacDNDs5  "Einstellungen 'Nicht-Stören'"  <moon> (gVac)
Group gVacHists5 "Verlauf"         <calendar> (gVac)
Group gVacNetworks5 "Netzwerk Details"       <network> (gVac)

// Mi Robot Vaccum
String actionControls2  "Steuerung"     (gVac)     {channel="miio:generic:05BE208A:actions#control" }
Number actionFans2      "generic Fan"         (gVac)   {channel="miio:generic:05BE208A:actions#fan" }
String actionCommands2  "generic Command"          {channel="miio:generic:05BE208A:actions#commands" }

Number statusBats2    "Batteriestatus [%1.0f%%]" <battery>   (gVac,gVacStats2) {channel="miio:generic:05BE208A:status#battery" }
Number statusAreas2    "Gereinigte Fläche [%1.0fm²]" <zoom>   (gVac,gVacStats2) {channel="miio:generic:05BE208A:status#clean_area" }
Number statusTimes2    "Reinigungszeit [%1.0f']" <clock>   (gVac,gVacStats2) {channel="miio:generic:05BE208A:status#clean_time" }
String statusErrors2    "Fehler [%s]"  <error>  (gVac,gVacStats2) {channel="miio:generic:05BE208A:status#error_code" }
Number statusFanPows2    "Fan Power [%1.0f %%]"  <signal>   (gVacStats2) {channel="miio:generic:05BE208A:status#fan_power" } 
Number statusCleans2    "Reinigungsstatus [%1.0f]"   <switch>  (gVacStats2) {channel="miio:generic:05BE208A:status#in_cleaning" }
Switch statusDNDs2    "DND Status"    (gVacStats2) {channel="miio:generic:05BE208A:status#dnd_enabled" }
String statusStatuss2    "Status [%s]"  <status>  (gVacStats2) {channel="miio:generic:05BE208A:status#state"} 

Number consumableMainTs2    "Hauptbürste [%1.0f]"    (gVacConss2) {channel="miio:generic:05BE208A:consumables#main_brush_time"}
Number consumableSidePs2    "Seitenbürste [%1.0f%%]"    (gVacConss2) {channel="miio:generic:05BE208A:consumables#side_brush_percent"}
Number consumableFilterTs2    "Filter [%1.0f]"    (gVacConss2) {channel="miio:generic:05BE208A:consumables#filter_time" }
Number consumableFilterPs2    "Filter [%1.0f%%]"    (gVacConss2) {channel="miio:generic:05BE208A:consumables#filter_percent" }
Number consumableSensorTs2    "Sensor [%1.0f]"    (gVacConss2) {channel="miio:generic:05BE208A:consumables#sensor_dirt_time"}
Number consumableSensorPs2    "Sensor [%1.0f%%]"    (gVacConss2) {channel="miio:generic:05BE208A:consumables#sensor_dirt_percent"}


Switch dndFunctions2   "DND Funktion" <moon>   (gVacDNDs2) {channel="miio:generic:05BE208A:dnd#dnd_function"}
String dndStarts2   "DND Startzeit [%s]" <clock>   (gVacDNDs2) {channel="miio:generic:05BE208A:dnd#dnd_start"}
String dndEnds2   "DND Endzeit [%s]"   <clock-on>  (gVacDNDs2) {channel="miio:generic:05BE208A:dnd#dnd_end"}

Number historyAreas2    "Total gereinigte Fläche [%1.0fm²]" <zoom>    (gVacHists2) {channel="miio:generic:05BE208A:history#total_clean_area"}
Number historyTimes2    "Total gereinigte Zeit [%1.0f']"   <clock>     (gVacHists2) {channel="miio:generic:05BE208A:history#total_clean_time"}
Number historyCounts2    "Reinigungsvorgänge [%1.0f]"  <office>  (gVacHists2) {channel="miio:generic:05BE208A:history#total_clean_count"}

String  miNetSSIDs2    "Netzwerk SSID [%s]"  <network>  (gVac,gVacNetworks2) {channel="miio:generic:05BE208A:network#ssid" }
String  miNetBSSIDs2    "Netzwerk BSSID [%s]"  <network>  (gVac,gVacNetworks2) {channel="miio:generic:05BE208A:network#bssid" }
Number  miNetRSSIs2    "Netzwerk RSSI [%1.0f]"  <network>  (gVac,gVacNetworks2) {channel="miio:generic:05BE208A:network#rssi" }
Number  miNetLifes2    "Uptime [%1.0f]"  <clock>  (gVac,gVacNetworks2) {channel="miio:generic:05BE208A:network#life" }

… and here my sitemap Roboter.sitemap

sitemap Roboter label="Saugroboter Steuerung" 
{
Group item=gVac
{
   Switch item=actionControls2 label="Funktionen" mappings=[vacuum="Start", pause="Pause",spot="Spot", dock="Dock"]
   Switch item=actionFans2 label="Saugstärke" mappings=[38="Leise", 60="Normal", 77="Power",90="Maximum", -1="Andere"]
   Default item=statusBats2 label="Batterie"
   Default item=statusAreas2 label="Gereinigte qm"
   Default item=statusTimes2 label="Reinigungszeit"
}
Group item=gVacStats2 label="Status Details"
Group item=gVacConss2 label="Gerätezustand"
Group item=gVacDNDs2 label="Nicht Stören"
Group item=gVacHists2 label="Reinigungsverlauf"
Group item=gVacNetworks2 label="Netzwerk"
}

Where is my error?

Looking at your sitemap configuration I found a problem. Here’s a quote from the docs under section Sitemaps :

Attention: There is no way to override the parameters, change the default element type, change the order, use dynamic tags, or insert other elements (e.g. Chart, Image, Webview, etc) in the subframe generated by the Group element.

So you should remove these:

{
Switch item=actionControls2 label=“Funktionen” mappings=[vacuum=“Start”, pause=“Pause”,spot=“Spot”, dock=“Dock”]
Switch item=actionFans2 label=“Saugstärke” mappings=[38=“Leise”, 60=“Normal”, 77=“Power”,90=“Maximum”, -1=“Andere”]
Default item=statusBats2 label=“Batterie”
Default item=statusAreas2 label=“Gereinigte qm”
Default item=statusTimes2 label=“Reinigungszeit”
}

Now I’ve removed the items above from my sitemap. but nothing changed. In the basicui is nothing displayed (only the groupnames).

My errors in the logs are the same:

2019-11-07 11:50:35.891 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.895 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVac' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.899 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVac' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.903 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVac' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.907 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.911 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacStats5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.915 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacStats5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.919 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacStats5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.922 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.927 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacConss5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.930 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacConss5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.935 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacConss5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.938 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.943 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacDNDs5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.946 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacDNDs5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.951 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacDNDs5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.955 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.960 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacHists5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.963 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacHists5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.968 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacHists5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.971 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.976 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacNetworks5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.980 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacNetworks5' for widget org.eclipse.smarthome.model.sitemap.Group

2019-11-07 11:50:35.984 [ERROR] [ui.internal.items.ItemUIRegistryImpl] - Cannot retrieve item 'gVacNetworks5' for widget org.eclipse.smarthome.model.sitemap.Group

I don't understand these errors.

Your items ´gVac´, ´gVacStats5´ and ‘gVacConss5’ looks like Groups from their name… Search your sitemap and change/remove them if you no longer use them.

Hi,
I don’t understand that. gVac… are groups, they aren’t Items!

Thats what you have misunderstood… Groups are items, just like ordinary items…
A group is defined just like an item, a switch, a dimmer or a string…

In order to help more, I´ll need to see your items and sitemap files.

Hi,

I copied the items und the sitemap-entries from the post #2 (Jul 2017). Here are my items and sitemap files.

In the Control of my PaperUI I can see, that the bindings work correctly

Hope you find my errors.

Attached files:
Roboter.items.txt (7.2 KB) .
Roboter.sitemap.txt (934 Bytes)

Now I removed all groups from the sitemap. Only the items left. my sitemap looks so:

sitemap Roboter label=“Saugroboter Steuerung” {
Frame label=“Mi Robot Vacuum”{
Switch item=actionControls2 mappings=[vacuum=“Vacuum”, pause=“Pause”,spot=“Spot”, dock=“Dock”]
Switch item=actionFans2 mappings=[38=“Silent”, 60=“Normal”, 77=“Power”,90=“Full”, -1=“Custom”]
Default item=statusBats2
Default item=statusAreas2
Default item=statusTimes2
}
Frame label=“Roborock”{
Switch item=actionControls5 mappings=[vacuum=“Roborock”, pause=“Pause”,spot=“Spot”, dock=“Dock”]
Switch item=actionFans5 mappings=[38=“Silent”, 60=“Normal”, 77=“Power”,90=“Full”, -1=“Custom”]
Default item=statusBats5
Default item=statusAreas5
Default item=statusTimes5
}
In the BasicUI I see this:

BasicUI.jpg

My error-log says (I made the channel-entries once again from the BasicUI!):

Log.jpg

I have no idea, it doesn’t work.

Continuing in the German forum …

Try change your Group type to Text type in your sitemap. Just like I showed above.

Now i changed all groups to text type. It doesn’t work! I don’t understand, why the same items-file on another machines (post #2 and following) work without any problems, but on my rpi not???

As a test… Try delete almost all items and just having a coupple (remember to have a backup). And then remove the same from your sitemap. If it works, then add some of them again, untill you hit the problem… I

1 Like

@marcel_verpaalen
Sometimes my Desk Lamp doesn’t show the state, and I can’t change it from openHAB. However changing from the Mi Home app works (and it reports Wifi strength 40% so it is not that bad I think).
I get the following error:

2019-11-10 22:20:16.904 [DEBUG] [io.internal.handler.MiIoBasicHandler] - Locating action for channel power: ON

2019-11-10 22:20:16.907 [DEBUG] [io.internal.handler.MiIoBasicHandler] - Sending command set_power["on"]

2019-11-10 22:20:16.909 [DEBUG] [nal.transport.MiIoAsyncCommunication] - Command added to Queue {"id":13252,"method":"set_power","params":["on"]} -> 10.0.0.99 (Device: 0443DBCD token: B0982F510BA3E30BD34F37EE6C046D71 Queue: 1)

2019-11-10 22:20:16.910 [DEBUG] [nal.transport.MiIoAsyncCommunication] - Sending Ping 0443DBCD (10.0.0.99)

2019-11-10 22:20:16.912 [DEBUG] [nal.transport.MiIoAsyncCommunication] - Ping 0443DBCD (10.0.0.99) success

2019-11-10 22:20:16.913 [DEBUG] [io.internal.handler.MiIoBasicHandler] - Periodic update for 'miio:generic:0443DBCD' (miio:basic)

2019-11-10 22:20:16.915 [DEBUG] [nal.transport.MiIoAsyncCommunication] - Sending Ping 0443DBCD (10.0.0.99)

2019-11-10 22:20:16.917 [DEBUG] [nal.transport.MiIoAsyncCommunication] - Ping 0443DBCD (10.0.0.99) success

2019-11-10 22:20:16.919 [DEBUG] [nal.transport.MiIoAsyncCommunication] - Command added to Queue {"id":13253,"method":"get_prop","params":["power","bright","delayoff","ct","color_mode"]} -> 10.0.0.99 (Device: 0443DBCD token: B0982F510BA3E30BD34F37EE6C046D71 Queue: 2)

2019-11-10 22:20:16.921 [DEBUG] [nal.transport.MiIoAsyncCommunication] - Sending Ping 0443DBCD (10.0.0.99)

2019-11-10 22:20:16.925 [DEBUG] [nal.transport.MiIoAsyncCommunication] - Ping 0443DBCD (10.0.0.99) success

2019-11-10 22:20:16.927 [DEBUG] [nal.transport.MiIoAsyncCommunication] - Command added to Queue {"id":13254,"method":"get_prop","params":["name"]} -> 10.0.0.99 (Device: 0443DBCD token: B0982F510BA3E30BD34F37EE6C046D71 Queue: 2)

2019-11-10 22:20:16.928 [DEBUG] [nal.transport.MiIoAsyncCommunication] - Sending Ping 0443DBCD (10.0.0.99)

2019-11-10 22:20:16.929 [DEBUG] [nal.transport.MiIoAsyncCommunication] - Received message is invalid JSON: 

2019-11-10 22:20:16.931 [DEBUG] [internal.handler.MiIoAbstractHandler] - Received response for 0443DBCD type: SET_POWER, result: null, fullresponse: {"error":"Received message is invalid JSON"}

2019-11-10 22:20:16.932 [DEBUG] [internal.handler.MiIoAbstractHandler] - Error received: "Received message is invalid JSON"

2019-11-10 22:20:16.935 [DEBUG] [internal.handler.MiIoAbstractHandler] - Received response for 0443DBCD type: GET_PROPERTY, result: ["ok"], fullresponse: {"result":["ok"],"id":13252}

2019-11-10 22:20:16.936 [DEBUG] [io.internal.handler.MiIoBasicHandler] - Unexpected size different. Request size 5,  response size 1. (Req: ["power","bright","delayoff","ct","color_mode"], Resp:["ok"])

2019-11-10 22:20:16.940 [DEBUG] [nal.transport.MiIoAsyncCommunication] - Ping 0443DBCD (10.0.0.99) success

==> /var/log/openhab2/events.log <==

2019-11-10 22:20:16.941 [nt.ItemStatePredictedEvent] - miDeskLamp_Power predicted to become ON

2019-11-10 22:20:16.959 [vent.ItemStateChangedEvent] - miDeskLamp_Power changed from OFF to ON

==> /var/log/openhab2/openhab.log <==

2019-11-10 22:20:16.961 [DEBUG] [io.internal.handler.MiIoBasicHandler] - Error while handing message {"result":["ok"],"id":13252}

java.lang.IndexOutOfBoundsException: Index: 1, Size: 1

	at java.util.ArrayList.rangeCheck(ArrayList.java:657) ~[?:?]

	at java.util.ArrayList.get(ArrayList.java:433) ~[?:?]

	at com.google.gson.JsonArray.get(JsonArray.java:194) ~[21:com.google.gson:2.8.2.v20180104-1110]

	at org.openhab.binding.miio.internal.handler.MiIoBasicHandler.updateProperties(MiIoBasicHandler.java:396) ~[244:org.openhab.binding.miio:2.5.0.M4]

	at org.openhab.binding.miio.internal.handler.MiIoBasicHandler.onMessageReceived(MiIoBasicHandler.java:450) [244:org.openhab.binding.miio:2.5.0.M4]

	at org.openhab.binding.miio.internal.transport.MiIoAsyncCommunication$MessageSenderThread.run(MiIoAsyncCommunication.java:226) [244:org.openhab.binding.miio:2.5.0.M4]

2019-11-10 22:20:16.979 [DEBUG] [nal.transport.MiIoAsyncCommunication] - Received message is invalid JSON: 

==> /var/log/openhab2/events.log <==

2019-11-10 22:20:16.975 [vent.ItemStateChangedEvent] - miDeskLamp_Power changed from ON to OFF

==> /var/log/openhab2/openhab.log <==

2019-11-10 22:20:16.989 [DEBUG] [internal.handler.MiIoAbstractHandler] - Received response for 0443DBCD type: GET_PROPERTY, result: null, fullresponse: {"error":"Received message is invalid JSON"}

2019-11-10 22:20:16.990 [DEBUG] [internal.handler.MiIoAbstractHandler] - Error received: "Received message is invalid JSON"

And restarting the bundle usually solves this issue so it doesn’t seem like a connection issue for me. I don’t know if anything changed since M3, but I saw this more frequently. Before that it was more realiable. And nothing changed in the network

Possible with the binding and Xiaomi Mijia 1S to bind single room actions. Like clean my livingroom ?