Xiaomi Vacuum 64.1 - Still buggy

Xiaomi Vacuum is still buggy in the new version, and I start to think the problem only persist for me.
Can someone confirm me please that others have these error messages in 64.1 too?
Everything is working fine, I can see the vacuum, I can even turn on/off from homeassistant, but I still get these error messages flooding my log making it useless.

I Tried to disable logging for vacuum, but couldn’t, these things always popped up, no matter what I wrote in the logger, so I waited for new versions, but still nothing, and that makes me think only I have this problem and I messed up something…

Retrying with incremented id, retries left: 3
12:44 components/vacuum/xiaomi_miio.py (WARNING)
Got error when receiving: timed out
12:44 components/vacuum/xiaomi_miio.py (ERROR)
Retrying with incremented id, retries left: 3
12:37 components/vacuum/xiaomi_miio.py (WARNING)
Got error when receiving: timed out
12:37 components/vacuum/xiaomi_miio.py (ERROR)
Retrying with incremented id, retries left: 3
12:37 components/vacuum/xiaomi_miio.py (WARNING)
Got error when receiving: timed out
12:37 components/vacuum/xiaomi_miio.py (ERROR)

    Retrying with incremented id, retries left: 3
    12:21 components/vacuum/xiaomi_miio.py (WARNING)
    Got error when receiving: timed out
    12:21 components/vacuum/xiaomi_miio.py (ERROR)
    Retrying with incremented id, retries left: 3
    12:17 components/vacuum/xiaomi_miio.py (WARNING)
    Got error when receiving: timed out
    12:17 components/vacuum/xiaomi_miio.py (ERROR)
    Retrying with incremented id, retries left: 3
    12:06 components/vacuum/xiaomi_miio.py (WARNING)
    Got error when receiving: timed out
    12:06 components/vacuum/xiaomi_miio.py (ERROR)
    Retrying with incremented id, retries left: 3
    12:02 components/vacuum/xiaomi_miio.py (WARNING)
    Got error when receiving: timed out
    12:02 components/vacuum/xiaomi_miio.py (ERROR)

I get them also. You can’t remove them as they are displayed in system log, not the logger component. The vacuum is fully functional. What version do you have, I have the V2. @syssi any ideas as to the timeout issue or ways we can debug this further?

I have Xiaomi vacuum 1st gen. I spent hours with logger to remove this, it is sad I was just wasting my time :\

Some additional threads:

https://github.com/rytilahti/python-miio/issues/92
https://github.com/home-assistant/home-assistant/issues/9013

One important question is: Did you block the internet access of the vacuum?

I have TP Link WDR 3600 router with OpenWRT and the connection is 100% stable (monitoring it).
I had the same problem with original TP Link firmware too.

The vacuum is available and online, its in my group list and I can turn it on or off anytime. I can even see when my wife starts it from her phone.

I would be perfectly happy if I could only turn off the error messages for vacuum.

Thanks, I do have my vacuum isolated however it is still accessible via the app and HA. I noticed some users mentioned to set the firewall rules to reject as opposed to dropping the requests which I originally had. Will give that a go overnight.

This should be easy:

logger:
  default: warn
  logs:
    miio: critical
    homeassistant.components.vacuum.xiaomi_miio: critical

I know it should be but it is not. As I wrote I tried these things before, but as a last hope copy pasted it, and restarted HA.

result:

Retrying with incremented id, retries left: 3
14:35 components/vacuum/xiaomi_miio.py (WARNING)
Got error when receiving: timed out
14:35 components/vacuum/xiaomi_miio.py (ERROR)

Strange. I will try to reproduce the issue. The logger is buggy if the configuration isn’t accepted.

Could you reproduce it? I’m still having the error flood :slight_smile:

Yes. I’m able to reproduce the issue and I’m working on a solution.

Some background about the log messages:

You are using the system_log component accessible at http://hass:8124/dev-info. This component doesn’t respect/use the settings of the logger component.

The system_log shows all errors and warnings and cannot be configured at the moment. We could implement a filter method here. The source of a log messages is just a guess at the current implementation. There is much room for improvements. It’s a bit out of my scope.

And what about fixing the xiaomi vacuum py? Is it easier to make?

Yes. I will talk to @teprrr.

Updated to 65 and 65.1, I still get errors like this:

Retrying with incremented id, retries left: 3
9:58 components/vacuum/xiaomi_miio.py (WARNING)
Got error when receiving: timed out
9:58 components/vacuum/xiaomi_miio.py (ERROR)

And the vacuum still works perfectly fine.

This number of log messages will be reduced with the release of HA 0.66. This is the fix:

https://github.com/rytilahti/python-miio/commit/8f4cb5d6203b36a9fc45fa617b7f9cc51c4c53ab

1 Like

No vacuum or xiaomi phillips lights for me since 63.3 when I did a manual fix.

Other Xiaomi components working fine, just nothing with tokens.

Hassio installed on Ubuntu 16.04.

Rolling back to Home Assistant 0.63.3 brings devices and control back.

@BarryHampants Could you provide a file list of /config/?

find config

Does a config/deps directory exists? If yes look for a construct and miio directory. Just remove the directories and upgrade to the latest home assistant version.

Are we okay to force the dependency to 0.3.8 if we plan to stay on 0.64.3 or were there pull merges on the HA side also?

OK - have managed to get it all going again.

I had to delete the python 3.6 directory in my dockers persistent storage rather than the container itself. So basically, for anyone else looking, next to your yaml configuration files is a /deps directory, in my case I deleted everything in there and restarted.

For @syssi - problem solved but for reference…

bash-4.4# find config
find: config: No such file or directory
bash-4.4# cat /usr/lib/python3.6/site-packages/miio/version.py
# flake8: noqa
__version__ = "0.3.7"
bash-4.4# cat /usr/lib/python3.6/site-packages/construct/version.py
version = (2,9,36)
version_string = "2.9.36"
release_date = "2018.03.05"
bash-4.4# find / -name construct
/usr/lib/python3.6/site-packages/construct
/config/deps/lib/python3.6/site-packages/construct
bash-4.4# find / -name miio
/usr/lib/python3.6/site-packages/miio
bash-4.4# rm -rf /usr/lib/python3.6/site-packages/construct
bash-4.4# find / -name construct
/config/deps/lib/python3.6/site-packages/construct
bash-4.4# curl -d '{"version": "0.63.1"}' http://hassio/homeassistant/update