merdok / homebridge-miot

Homebridge plugin for devices supporting the Xiaomi miot protocol
MIT License
388 stars 61 forks source link

Please add support for Roborock S5 #252

Closed Aekung closed 2 years ago

Aekung commented 2 years ago

Device model roborock.vacuum.s5

Device name Roborock S5

Does the device require a MiCloud connection? Do not know (But possibly yes)

Anything special about the device? It doesn't work with the plugin as of now. However, I see that Roborock S5 MAX is already supported by the plugin so I guess we can safely use all the functions of Roborock S5 Max with this Roborock S5.

Thank you in advance and looking forward to your reply.

merdok commented 2 years ago

Roborock S5 support is already there. What is not working for you?

dweiden commented 2 years ago

My Roborock S5 isn't working as well. When i tap on the robot in apples home app it just shows "no response". Restarted Homebridge several times but didn't worked for me yet. Do you have any idea what else I could try?

merdok commented 2 years ago

In order for me to have an idea what the issue might be you need to post your config.json entry and a homebridge debug log.

dweiden commented 2 years ago

The Debug just shows a handshake error, see attached screenshot.

Config:

{ "bridge": { "name": "Homebridge 2345", "username": "", "port": , "pin": "*" }, "accessories": [], "platforms": [ { "name": "Config", "port": 8581, "auth": "none", "theme": "amber", "tempUnits": "c", "lang": "de", "loginWallpaper": "/homebridge/ui-wallpaper.jpg", "platform": "config" }, { "platform": "TadoPlatform", "name": "TadoPlatform", "homes": [ { "id": **, "name": "Zuhause", "username": "****", "password": "****", "polling": 30, "temperatureUnit": "CELSIUS", "geolocation": { "longitude": "**", "latitude": "**" }, "presence": { "anyone": false, "accTypeAnyone": "OCCUPANCY", "user": [ { "active": false, "name": "iPad", "accType": "OCCUPANCY" }, { "active": false, "name": "iPhone", "accType": "OCCUPANCY" } ] }, "weather": { "temperatureSensor": false, "solarIntensity": false, "accTypeSolarIntensity": "LIGHTBULB", "airQuality": true }, "extras": { "centralSwitch": false, "runningInformation": false, "presenceLock": false, "accTypePresenceLock": "ALARM", "boostSwitch": false, "sheduleSwitch": false, "turnoffSwitch": false, "childLockSwitches": [ { "active": false, "name": "Wohnzimmer ", "serialNumber": "" }, { "active": false, "name": "Wohnzimmer ", "serialNumber": "" }, { "active": false, "name": "Badezimmer ", "serialNumber": "" }, { "active": false, "name": "Küche ", "serialNumber": "" }, { "active": false, "name": "Schlafzimmer ", "serialNumber": "" } ] }, "zones": [ { "active": true, "id": 3, "name": "Wohnzimmer", "delaySwitch": false, "autoOffDelay": false, "openWindowSensor": false, "openWindowSwitch": false, "airQuality": false, "separateTemperature": false, "separateHumidity": false, "minStep": 0.5, "minValue": 5, "maxValue": 25, "mode": "MANUAL", "modeTimer": 30, "easyMode": false, "noBattery": false, "type": "HEATING", "boilerTempSupport": false, "accTypeBoiler": "SWITCH" }, { "active": true, "id": 1, "name": "Badezimmer", "delaySwitch": false, "autoOffDelay": false, "openWindowSensor": false, "openWindowSwitch": false, "airQuality": false, "separateTemperature": false, "separateHumidity": false, "minStep": 0.5, "minValue": 5, "maxValue": 25, "mode": "MANUAL", "modeTimer": 30, "easyMode": false, "noBattery": false, "type": "HEATING", "boilerTempSupport": false, "accTypeBoiler": "SWITCH" }, { "active": true, "id": 2, "name": "Küche", "delaySwitch": false, "autoOffDelay": false, "openWindowSensor": false, "openWindowSwitch": false, "airQuality": false, "separateTemperature": false, "separateHumidity": false, "minStep": 0.5, "minValue": 5, "maxValue": 25, "mode": "MANUAL", "modeTimer": 30, "easyMode": false, "noBattery": false, "type": "HEATING", "boilerTempSupport": false, "accTypeBoiler": "SWITCH" }, { "active": true, "id": 4, "name": "Schlafzimmer", "delaySwitch": false, "autoOffDelay": false, "openWindowSensor": false, "openWindowSwitch": false, "airQuality": false, "separateTemperature": false, "separateHumidity": false, "minStep": 0.5, "minValue": 5, "maxValue": 25, "mode": "MANUAL", "modeTimer": 30, "easyMode": false, "noBattery": false, "type": "HEATING", "boilerTempSupport": false, "accTypeBoiler": "SWITCH" } ], "telegram": { "active": false } } ] }, { "platform": "Calendar", "calendars": [ { "name": "Müllabfuhr", "url": "", "pollingInterval": 5, "offset": "-10h", "sensors": [ "Gelber Sack", "Restmüll" ] } ] }, { "devices": [ { "name": "LG OLED", "host": "", "mac": "", "disableLogInfo": false, "disableLogDeviceInfo": false, "enableDebugMode": false, "turnScreenOnOff": false, "volumeControl": 1, "switchInfoMenu": false, "getInputsFromDevice": false, "filterSystemApps": true, "inputs": [ { "name": "SAT TV", "reference": "com.webos.app.hdmi1", "type": "HDMI", "mode": 0 }, { "name": "Apple TV", "reference": "com.webos.app.hdmi2", "type": "HDMI", "mode": 0 }, { "name": "Xbox", "reference": "com.webos.app.hdmi3", "type": "HDMI", "mode": 0 } ], "pictureModeControl": false, "brightnessControl": false, "backlightControl": false, "contrastControl": false, "colorControl": false } ], "platform": "LgWebOsTv" }, { "name": "Govee", "username": "", "password": "", "apiKey": "", "lightDevices": [ { "label": "Lightstrip", "deviceId": "", "enableBT": true, "customAddress": "", "brightnessStep": 1 } ], "platform": "Govee" }, { "name": "Levoit Humidifiers", "email": "", "password": "", "platform": "LevoitHumidifiers" }, { "name": "Yeelighter", "timeout": 5000, "interval": 60000, "ctforcolor": false, "blocking": false, "split": false, "override": [ { "id": "0x00000000182b44e6", "log": true, "color": false, "backgroundLight": false, "separateAmbient": false, "offOnDisconnect": true, "colorTemperature": { "min": 5000, "max": 5000 } } ], "manual": [ { "ignorePower": false } ], "platform": "Yeelighter" }, { "devices": [ { "name": "Roboter-Staubsauger", "ip": "192.168.178.75", "token": "5172374f573771444649656a686e6666", "deviceId": "118041519", "model": "roborock.vacuum.s5", "pollingInterval": 10, "deepDebugLog": false, "micloud": { "username": "***", "password": "*****", "country": "de", "forceMiCloud": false }, "buzzerControl": false, "ledControl": false, "childLockControl": false, "modeControl": false }, { "name": "Yeelight Deckenleuchte", "ip": "192.168.1.254", "token": "ab07b010991199abd1fee4e7acc193da", "deviceId": "405488870", "model": "yeelink.light.ceilc", "pollingInterval": 10, "deepDebugLog": false, "buzzerControl": false, "ledControl": false, "childLockControl": false, "modeControl": false } ], "platform": "miot" } ], "disabledPlugins": [ "homebridge-sonos", "homebridge-pihole", "homebridge-dummy", "homebridge-apple-tv-remote", "homebridge-ws", "homebridge-harmony", "homebridge-mqttthing", "homebridge-webos-tv", "homebridge-yeelight-wifi", "homebridge-xiaomi-roborock-vacuum", "homebridge-yeelighter" ] }

image

merdok commented 2 years ago

A handshake timeout indicates that either your ip or token is incorrect.

Aekung commented 2 years ago

Me personally the log said the device is not yet supported by the plugin.

I will try adding it once again this evening and let you know the result.

dweiden commented 2 years ago

A handshake timeout indicates that either your ip or token is incorrect.

Alright, then I'll delete the robot and add it again. I got the Information via micloud.

merdok commented 2 years ago

@dweiden The information in the cloud is not always up to date, so yeah re adding would be a good idea.

@Aekung probably you then have a different device?

dweiden commented 2 years ago

@dweiden The information in the cloud is not always up to date, so yeah re adding would be a good idea.

Tried but still the same issue. Cleared the cache already but will give it a try later again. Otherwise I'll extract the token by myself and try it again. Thanks for your help!

merdok commented 2 years ago

It might not necessarily be the token. Make sure also that the ip is correct and that you can ping the vacuum from your homebridge device.