rytilahti / python-miio

Python library & console tool for controlling Xiaomi smart appliances
https://python-miio.readthedocs.io
GNU General Public License v3.0
3.64k stars 550 forks source link

Roborock S7 #989

Closed Ciubas closed 3 years ago

Ciubas commented 3 years ago

Before submitting a new request, use the search to see if there is an existing issue for the device.

Device information:

Use miiocli device --ip <ip address> --token <token>.

Additional context If you know already about potential commands or any other useful information to add support for the device, please add that information here.

What do you need to add this vaacum?

vukisz commented 3 years ago

@rytilahti I am getting this error, as mentioned in https://github.com/home-assistant/core/issues/43836


2021-03-25 18:04:52 WARNING (MainThread) [homeassistant.loader] You are using a custom integration hacs which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2021-03-25 18:04:59 INFO (MainThread) [homeassistant.components.vacuum] Setting up vacuum.xiaomi_miio
2021-03-25 18:05:01 ERROR (MainThread) [homeassistant.components.vacuum] xiaomi_miio: Error on device update!
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 360, in _async_add_entity
    await entity.async_device_update(warning=False)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 465, in async_device_update
    await task
  File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/homeassistant/homeassistant/components/xiaomi_miio/vacuum.py", line 499, in update
    self.last_clean = self._device.last_clean_details()
  File "/usr/local/lib/python3.8/site-packages/miio/vacuum.py", line 352, in last_clean_details
    if not history.ids:
  File "/usr/local/lib/python3.8/site-packages/miio/vacuumcontainers.py", line 219, in ids
    return list(self.data[3])
KeyError: 3

I tried adding debug logs with following config:

# Logger =>
logger:
  default: critical
  logs:
    homeassistant.components.vacuum: debug
# Logger <=

But I still cannot find any additional logs. Is this config correct? If so where I should search for the output?

Integration SS: image

rezmus commented 3 years ago

it's a new model, 2nd model of roborock which deploys new miotspec protocol. you should search for HA integration that supports s4 max model (a19). s7 should be very similar. if there isn't any just wait till someone adds support.

rytilahti commented 3 years ago

Maybe the device sports both miio and miot support? Anyway, if the linked PR fixes this, homeassistant should have at least basic support for the device at some point out of the box.

rezmus commented 3 years ago

@rytilahti it's possible. afair new viomi with miotspec also supports old miio cmds, at least some.

vukisz commented 3 years ago

Will this be available with next HA update?