FIXED: Ecovacs Deebot 2019 & OZMO Series - Working Library

recently I’ve been getting this error in my log

Log Details (ERROR)
This error originated from a custom integration.
Logger: homeassistant.setup
Source: custom_components/deebot/init.py:90
Integration: Deebot 4 Home Assistant
First occurred: 2:20:53 PM (1 occurrences)
Last logged: 2:20:53 PM

Error during setup of component deebot
Traceback (most recent call last):
File “/usr/src/homeassistant/homeassistant/setup.py”, line 235, in _async_setup_component
result = await task
File “/usr/local/lib/python3.10/concurrent/futures/thread.py”, line 58, in run
result = self.fn(*self.args, **self.kwargs)
File “/config/custom_components/deebot/init.py”, line 90, in setup
from ozmo import EcoVacsAPI, VacBot
File “/usr/local/lib/python3.10/site-packages/ozmo/init.py”, line 15, in
from sleekxmppfs import ClientXMPP, Callback, MatchXPath
File “/usr/local/lib/python3.10/site-packages/sleekxmppfs/init.py”, line 20, in
from sleekxmppfs.stanza import Message, Presence, Iq
File “/usr/local/lib/python3.10/site-packages/sleekxmppfs/stanza/init.py”, line 10, in
from sleekxmppfs.stanza.error import Error
File “/usr/local/lib/python3.10/site-packages/sleekxmppfs/stanza/error.py”, line 9, in
from sleekxmppfs.xmlstream import ElementBase, ET
File “/usr/local/lib/python3.10/site-packages/sleekxmppfs/xmlstream/init.py”, line 9, in
from sleekxmppfs.jid import JID
File “/usr/local/lib/python3.10/site-packages/sleekxmppfs/jid.py”, line 25, in
from sleekxmppfs.thirdparty import OrderedDict
File “/usr/local/lib/python3.10/site-packages/sleekxmppfs/thirdparty/init.py”, line 13, in
from sleekxmppfs.thirdparty.orderedset import OrderedSet
File “/usr/local/lib/python3.10/site-packages/sleekxmppfs/thirdparty/orderedset.py”, line 25, in
class OrderedSet(collections.MutableSet):
AttributeError: module ‘collections’ has no attribute ‘MutableSet’

anyone have an idea as to how to fix?

I have the exact same error. Only way seems to roll back to Home Assistant
(2022.6.7).

Thanks for the heads up. Gave it a go and it got the deebot working again, Yay… but broke the Nest integration, Boo… which is probably more important overall so had to roll forward (is that how you describe it?)

1 Like

is there any alternitive for the Deebot 930 ?
i was looking for Valetudo but that doesn’t seem to work on mine

That sucks, looking for an alternative but it doesn’t seem that easy

I’ve tried all of the other integrations I could find but none of them worked for me.

Next time i’ll order one that runs Valetudo

Anyone find a fixfor this?

Its working for me in .9

Yes! Thanks for the heads up! I’d deleted everything, just put it all back together and it’s working!

Can anyone confirm if it still works with HA OS 9.0? Afraid to update at this point just in case… Currently running 8.5

I bit the bullet, it does work in 9

I have been trying to integrate the Deebot OZMO T8+ with the Deebot4HomeAssistant integration. I am trying to run scripts to clean particular rooms, however my deebot doesn’t show the room associated with the number. Apart from individually trying every room, how do I know which room it corresponds to?

Hi rohanj13

I personally just tried with different numbers to see where the robot went. It wasn’t so much work. Here’s an example of one of my scripts (It actually cleans the room twice, which is a feature my hoover doesn’t have without HA):

sequence:
  - service: vacuum.send_command
    data:
      command: spot_area
      params:
        area: 3,4
    target:
      entity_id: vacuum.beasley
  - wait_for_trigger:
      - platform: state
        entity_id: vacuum.beasley
        attribute: status
        to: returning
  - service: vacuum.send_command
    target:
      entity_id: vacuum.beasley
    data:
      command: spot_area
      params:
        area: 3,4
mode: single
alias: Clean Sittingroom

Hope this helps.

1 Like

So I’m begining to get things working with my T8. I’ve got a working card with sensors and all. But my really simple cleaning script is not 100%. When it runs the Deebot starts, leaves the dock and then it just stays put right outside the dock on the highest fan… I can see in the app that the right room has been chosen.
Can anyone see why this is happening?

deebot_clean_kitchen:
  alias: "Clean kitchen"
  sequence:
  - service: vacuum.send_command
    data:
      command: spot_area
      params:
        rooms: "{{states['vacuum.dammsugare'].attributes.rooms.kitchen}}"
        cleanings: 1
    target:
      entity_id: vacuum.dammsugare
  mode: single
1 Like

I don’t know if this will help but this is mine which works:

alias: Clean Kitchen
sequence:
  - service: vacuum.send_command
    data:
      command: spot_area
      params:
        area: "1"
    target:
      entity_id: vacuum.beasley
mode: single 

Thanks for quick answer! It seems like there was some internal error in the Deebot. I restarted it, and now everything works like charm. embarrassed

Is there any way to differentiate when the vacuum is returning to charge in the middle of a cleaning from when it’s done? Some of my automations are getting off track because it’s running out of battery during a cleaning and then resuming once charged so I’m trying to figure out if home assistant can detect this state

I have the same problem with the Ozmo 930. The vacuum cleaner stands on the base. but has the status of “cleaning”. did you solve the problem?