home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
72.8k stars 30.5k forks source link

Can't control my Deebot (Ping did not reach VacBot. Will retry) #38625

Closed Roger-NL1975 closed 9 months ago

Roger-NL1975 commented 4 years ago

The problem

My deebot ozmo slim 10 is connected to home assistant but I can't get it controlled or get any readout, I already tried some other settings for country and even tried using a custom integration to but same issue. in the log file it is unable to get any info across. (Ping did not reach VacBot. Will retry.)

Environment

x86_64 chassis | vm dev | false docker | true docker_version | 19.03.8 hassio | true host_os | HassOS 4.11 installation_type | Home Assistant OS os_name | Linux os_version | 5.4.50 python_version | 3.8.3 supervisor | 229 timezone | Europe/Amsterdam version | 0.113.3 virtualenv | false

Problem-relevant configuration.yaml

 ecovacs:
  username: !secret ecovacs_user
  password: !secret ecovacs_pass
  country: NL
  continent: EU

Traceback/Error logs

2020-08-07 13:15:15 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for 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.
2020-08-07 13:15:15 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for samsungtv_smart 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.
2020-08-07 13:15:45 DEBUG (SyncWorker_5) [homeassistant.components.ecovacs] Creating new Ecovacs component
2020-08-07 13:15:45 DEBUG (SyncWorker_5) [sucks] Setting up EcoVacsAPI
2020-08-07 13:15:45 DEBUG (SyncWorker_5) [sucks] calling main api user/login with (('account', 'xxx'), ('password', 'xxx'))
2020-08-07 13:15:46 DEBUG (SyncWorker_5) [sucks] got {'code': '0000', 'msg': '操作成功', 'time': 1596798946309, 'data': {'uid': 'xxx', 'username': 'xxx', 'email': 'xxx', 'country': 'nl', 'accessToken': 'xxx'}}
2020-08-07 13:15:46 DEBUG (SyncWorker_5) [sucks] calling main api user/getAuthCode with (('uid', 'xxx'), ('accessToken', 'xxx'))
2020-08-07 13:15:46 DEBUG (SyncWorker_5) [sucks] got {'code': '0000', 'msg': '操作成功', 'time': 1596798946665, 'data': {'authCode': 'xxx', 'ecovacsUid': 'xxx'}}
2020-08-07 13:15:46 DEBUG (SyncWorker_5) [sucks] calling user api loginByItToken with {'country': 'NL', 'resource': 'RF0UIKLZ', 'realm': 'ecouser.net', 'userId': 'xxx', 'token': 'xxx'}
2020-08-07 13:15:47 DEBUG (SyncWorker_5) [sucks] got {'todo': 'result', 'result': 'ok', 'userId': 'xxx', 'resource': 'RF0UIKLZ', 'token': 'xxx', 'last': 604800000}
2020-08-07 13:15:47 DEBUG (SyncWorker_5) [sucks] calling user api GetDeviceList with {'userid': 'xxx', 'auth': {'with': 'users', 'userid': 'xxx', 'realm': 'ecouser.net', 'token': 'xxx', 'resource': 'RF0UIKLZ'}}
2020-08-07 13:15:48 DEBUG (SyncWorker_5) [sucks] got {'todo': 'result', 'result': 'ok', 'devices': [{'did': 'xxx', 'name': 'xxx', 'class': '02uwxm', 'resource': '0d7H', 'nick': None, 'company': 'eco-ng', 'bindTs': 1596718308153}]}
2020-08-07 13:15:48 DEBUG (SyncWorker_5) [homeassistant.components.ecovacs] Ecobot devices: [{'did': 'xxx', 'name': 'xxx', 'class': '02uwxm', 'resource': '0d7H', 'nick': None, 'company': 'eco-ng', 'bindTs': 1596718308153}]
2020-08-07 13:15:48 INFO (SyncWorker_5) [homeassistant.components.ecovacs] Discovered Ecovacs device on account: xxx with nickname None
2020-08-07 13:15:48 DEBUG (SyncWorker_5) [homeassistant.components.ecovacs] Starting vacuum components
2020-08-07 13:16:00 DEBUG (event_thread_0) [sucks] ----------------- starting session ----------------
2020-08-07 13:16:00 DEBUG (event_thread_0) [sucks] event = {}
2020-08-07 13:16:00 DEBUG (SyncWorker_4) [sucks] *** sending ping ***
2020-08-07 13:16:00 WARNING (SyncWorker_4) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:16:00 DEBUG (SyncWorker_4) [sucks] *** Error type: wait
2020-08-07 13:16:00 DEBUG (SyncWorker_4) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:16:00 DEBUG (SyncWorker_4) [homeassistant.components.ecovacs.vacuum] Vacuum initialized: xxx
2020-08-07 13:16:00 DEBUG (SyncWorker_4) [homeassistant.components.ecovacs.vacuum] Adding Ecovacs Vacuums to Home Assistant: [<Entity e965b1f0-c7dc-466a-a2a8-47d22bbfbd25: off>]
2020-08-07 13:16:31 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:16:31 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:16:31 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:16:31 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:17:01 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:17:01 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:17:01 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:17:01 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:17:33 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:17:33 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:17:33 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:17:33 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:18:03 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:18:03 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:18:03 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:18:03 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:18:33 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:18:33 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:18:33 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:18:33 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:19:03 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:19:03 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:19:03 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:19:03 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:19:34 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:19:34 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:19:34 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:19:34 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:20:04 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:20:04 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:20:04 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:20:04 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:20:34 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:20:34 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:20:34 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:20:34 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:21:04 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:21:04 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:21:04 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:21:04 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:21:34 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:21:34 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:21:34 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:21:34 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:22:04 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:22:04 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:22:04 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:22:04 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:22:34 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:22:34 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:22:34 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:22:34 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:23:04 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:23:04 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:23:04 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:23:04 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:23:34 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:23:34 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:23:34 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:23:34 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:24:04 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:24:04 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:24:04 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:24:04 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:24:35 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:24:35 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:24:35 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:24:35 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:24:56 DEBUG (SyncWorker_4) [sucks] Sending command <iq id="xxx" to="xxx@02uwxm.ecorobot.net/atom" from="xxx" type="set"><query xmlns="com:ctl"><ctl td="Charge"><charge type="go" /></ctl></query></iq>
2020-08-07 13:25:05 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:25:05 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:25:05 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:25:05 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:25:08 DEBUG (SyncWorker_5) [sucks] Sending command <iq id="xxx" to="xxx@02uwxm.ecorobot.net/atom" from="xxx@ecouser.net/xxx" type="set"><query xmlns="com:ctl"><ctl td="Charge"><charge type="go" /></ctl></query></iq>
2020-08-07 13:25:35 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:25:35 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:25:35 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:25:35 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:26:05 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:26:05 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:26:05 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:26:05 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable
2020-08-07 13:26:31 ERROR (stream_worker) [libav.rtsp] Too short data for FU-A H.264 RTP packet
2020-08-07 13:26:35 DEBUG (event_thread_0) [sucks] *** sending ping ***
2020-08-07 13:26:35 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry.
2020-08-07 13:26:35 DEBUG (event_thread_0) [sucks] *** Error type: wait
2020-08-07 13:26:35 DEBUG (event_thread_0) [sucks] *** Error condition: recipient-unavailable

Additional information

probot-home-assistant[bot] commented 4 years ago

ecovacs documentation ecovacs source (message by IssueLinks)

probot-home-assistant[bot] commented 4 years ago

Hey there @overloadut, mind taking a look at this issue as its been labeled with an integration (ecovacs) you are listed as a codeowner for? Thanks! (message by CodeOwnersMention)

dgomes commented 4 years ago

can you control it through the robot's mobile app ?

Roger-NL1975 commented 4 years ago

hi dgomes, yes the app works just fine. (sry for late response just back from holidays)

dgomes commented 4 years ago

I usually have the same error when the robot runs into a dead-end and loses battery. Only after reconnecting through the APP will HA re-estabilish connection.

Roger-NL1975 commented 4 years ago

I always have connection throe the app. never lost connection, but i have no means of controlling or monitoring throe HA, just get the errors and no updates on status, looks like I am not allowed to connect to the server, or there is something wrong in my server settings, I guess

tibuski commented 4 years ago

Hello, just added this integration and facing the same issue.

Same config except : country: be continent: eu

dgomes commented 4 years ago

sucks (supporting library) has become abandoned-ware, I'm afraid unless some fork gains steam we will not be able to continue supporting these robots

donkawechico commented 4 years ago

Should this issue be added to https://alerts.home-assistant.io/?

The latest 2020 Robot Vacuum Wars came out and recommended Ecovacs for the premium tier. I saw that Ecovacs had a HA integration page, and almost bought it, but luckily thought to search the issues queue first.

With ecovacs being recommended, and Amazon Prime Day + Black Friday almost here (notoriously robovacuum heavy) might be good to make sure folks don't accidentally buy something that doesn't/might not work with HA anymore.

fidonet commented 4 years ago

Err yes, I'm in the embarrassing position of having just bought 2 x Deebot 920's no the basis that HA lists support / etc ..... and that's all starting to look a little suspect :(

Is there any chance that things will start working or should I just return them and buy a Roomba?

I'm seeing a lot of

when I try to do anything with the robots ... the component is correctly getting their nicknames from the server, so something is half working at least
dgomes commented 4 years ago

HA will continue supporting ecovacs as long as someone supports a library that interfaces with the robots (like https://github.com/wpietri/sucks)

fidonet commented 4 years ago

That's good to know, although having now dug a little deeper it seems that the mods have been waiting to be merged into sucks for over 12 months and wpietri has now bought a Roomba and abandoned the project.

@OverloadUT seems to have pull / approval rights, but the branch with ozmo support hasn't been merged ... and whilst I've tried to install everything as custom modules, something isn't quite right and I'm not sure where to turn next

donkawechico commented 4 years ago

@dgomes If the readme says it's abandonware and no longer being updated, is that still considered a supported library? (Genuine question -- not sure the terminology)

It seems at least grounds for adding an alert to https://alerts.home-assistant.io/, no?

I'll put up a PR, feel free to reject if it's not an appropriate reason for alerting.

donkawechico commented 4 years ago

Here's the PR: https://github.com/home-assistant/alerts.home-assistant.io/pull/222

Feel free to leave comments or ask me to close.

dgomes commented 4 years ago

I did not open the alert because my robot still works :) (shame on me)

donkawechico commented 3 years ago

I just bought the (quite pricey) Ecovacs Deebot T8 AIVI and can confirm the same ping error 😞. Disappointed, but I knew and accepted the risk that it wouldn't be supported when I bought it.

I'll pull the sucks repo locally and see if I can suss out the bug.

donkawechico commented 3 years ago

So current state of the known good/bad models appear to be:

Model State Source
Deebot T8 AIVI (1) https://github.com/home-assistant/core/issues/38625#issuecomment-736124723
Deebot Ozmo 920 (1) https://github.com/home-assistant/core/issues/42186
Deebot Ozmo 950 (1) https://github.com/home-assistant/core/issues/42186#issuecomment-720417640
Deebot Ozmo 610 https://github.com/home-assistant/alerts.home-assistant.io/pull/222#issuecomment-725938482
"Ecovacs Deebot N79, M80 Pro, M81, M88 Pro, and R95 MKII from both North America and Europe" ✅❓ (Docs are old) https://github.com/wpietri/sucks#overview

(1) Model numbers could be a red herring; the issue could have to do with a user's network configuration/DNS/XMPP/etc instead.

donkawechico commented 3 years ago

@dgomes Since you seem to be the only one with a working ecovacs integration (maybe @OverloadUT too), mind providing some more details, if you're willing to share?

  1. Phone OS
  2. Country/Continent codes
  3. Vacuum firmware version
  4. Are you able to run the sucks api from command-line? (I get errors similar to everyone else when I try)
  5. Firewall rules? (e.g. I use virtual LANs to keep devices isolated and off the internet when possible).
dgomes commented 3 years ago

@donkawechico

  1. Android 10
  2. pt/eu
  3. Don't know
  4. yes
  5. must have access to the internet, connects to several XMPP servers + NTP
OverloadUT commented 3 years ago

I've used M80, M81, and my current M88

  1. iOS
  2. NA US
  3. 0.0.18 (for the M88)
  4. Never tried
  5. The vacuums must be able to talk to the Internet
jes1417 commented 3 years ago

My n79s also works, but I have noticed lately that when I reboot HA it will say it couldn't load the integration then another reboot will bring it back.

Logger: homeassistant.setup
Source: components/ecovacs/__init__.py:48
First occurred: November 30, 2020, 11:08:49 PM (1 occurrences)
Last logged: November 30, 2020, 11:08:49 PM

Error during setup of component ecovacs
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/urllib3/connection.py", line 169, in _new_conn
    conn = connection.create_connection(
  File "/usr/local/lib/python3.8/site-packages/urllib3/util/connection.py", line 73, in create_connection
    for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM):
  File "/usr/local/lib/python3.8/socket.py", line 918, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -3] Try again

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 699, in urlopen
    httplib_response = self._make_request(
  File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 382, in _make_request
    self._validate_conn(conn)
  File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 1010, in _validate_conn
    conn.connect()
  File "/usr/local/lib/python3.8/site-packages/urllib3/connection.py", line 353, in connect
    conn = self._new_conn()
  File "/usr/local/lib/python3.8/site-packages/urllib3/connection.py", line 181, in _new_conn
    raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPSConnection object at 0x7f51ee77b190>: Failed to establish a new connection: [Errno -3] Try again

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/requests/adapters.py", line 439, in send
    resp = conn.urlopen(
  File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 755, in urlopen
    retries = retries.increment(
  File "/usr/local/lib/python3.8/site-packages/urllib3/util/retry.py", line 573, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='users-na.ecouser.net', port=8000): Max retries exceeded with url: /user.do (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f51ee77b190>: Failed to establish a new connection: [Errno -3] Try again'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 213, in _async_setup_component
    result = 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/ecovacs/__init__.py", line 48, in setup
    ecovacs_api = EcoVacsAPI(
  File "/usr/local/lib/python3.8/site-packages/sucks/__init__.py", line 126, in __init__
    login_response = self.__call_login_by_it_token()
  File "/usr/local/lib/python3.8/site-packages/sucks/__init__.py", line 180, in __call_login_by_it_token
    return self.__call_user_api('loginByItToken',
  File "/usr/local/lib/python3.8/site-packages/sucks/__init__.py", line 169, in __call_user_api
    response = requests.post(EcoVacsAPI.USER_URL_FORMAT.format(continent=self.continent), json=params)
  File "/usr/local/lib/python3.8/site-packages/requests/api.py", line 119, in post
    return request('post', url, data=data, json=json, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/requests/api.py", line 61, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/requests/sessions.py", line 542, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python3.8/site-packages/requests/sessions.py", line 655, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/requests/adapters.py", line 516, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='users-na.ecouser.net', port=8000): Max retries exceeded with url: /user.do (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f51ee77b190>: Failed to establish a new connection: [Errno -3] Try again'))
  1. Android 11 / Pixel4XL
  2. US
  3. Not sure how to get version, I don't see it in the app.
  4. Never tried the ha integration works.
  5. Full access
donkawechico commented 3 years ago

Thanks for the info everyone!

@dgomes @OverloadUT I was able to make some progress after finding some threads in the sucks API mailing list talking about this fork of sucks: https://github.com/bmartin5692/sucks. After pulling locally, the error message went away, but the commands still aren't doing anything for my T8.

I'll look into it more this weekend. Would it make sense to consider using that fork in the HA integration? Or would that be better suited for a HACS integration alternative.

sharkpunch5 commented 3 years ago

I'm also experiencing this issue with my Deebot T8 AIVI

roybosch commented 3 years ago

I'm using the Deebot Ozmo 905. I haven't got it to work. The vacuum entity just shows "status: offline".

The deebot custom integration made by Ligio does seem to work: https://github.com/Ligio/hacc-ozmo. Since I only have this vacuum cleaner two days I can't say anything about the reliability yet.

gomble commented 3 years ago

I have a deepbot ozmo 950 and have the same error. Can anyone fix this please?

niklasmoeller commented 3 years ago

I think I am having the same issue. I can see the current status of my bot, but I cannot tell it to start cleaning.

I found an integration for node-red that is working. So for now I am using this integration to read the current status and the node-red integration to send commands to the bot. Not perfect, but works. https://github.com/enigtique/node-red-contrib-deebot

I think it can't do everything, yet, but to start cleaning and return to charge, it's working perfectly.

I am using a Deebot Ozmo 930

FransHalsjes commented 3 years ago

Same issue with my Deebot T8 AIVI. App works fine, HA integration gives "offline" Error:

Logger: sucks
Source: /usr/local/lib/python3.8/site-packages/sucks/__init__.py:371
First occurred: 7:15:05 (416 occurrences)
Last logged: 10:42:40

Ping did not reach VacBot. Will retry.

configuration.yaml

ecovacs:
  username: USERNAME
  password: PASSWORD
  country: NL
  continent: EU
giustraman commented 3 years ago

Same problem with Deebot Ozmo 950. Any hint how to solve the issue?

:::::

2021-04-01 15:37:45 WARNING (event_thread_0) [sucks] Ping did not reach VacBot. Will retry. 2021-04-01 15:37:45 DEBUG (event_thread_0) [sucks] Error type: wait 2021-04-01 15:37:45 DEBUG (event_thread_0) [sucks] Error condition: recipient-unavailable

donkawechico commented 3 years ago

@giustraman I still haven't gotten it to work, but since you asked for hints:

I've had some success with each of these steps, but haven't gotten xmpppeek to work yet. Maybe you can be our hero!

TOBx2 commented 3 years ago

Same problem with Deebot Ozmo 930.

JHAbolivier commented 3 years ago

Finally find this thread, sadly same problem with my T8 AIVI.

peregrines2 commented 3 years ago

Same problem with Deebot 950 :(
(AT EU)

solomongumbie commented 3 years ago

My N8 Pro+ doesn't work

goooroooX commented 3 years ago

Did anyone tried this library? https://github.com/And3rsL/Deebotozmo/tree/master/deebotozmo The code says it supports all the recent models, including T8/N9+.

def __init__(self, vacuum: Vacuum):
    command_name = "getCleanInfo"
    if vacuum and vacuum.get_class in [
        "bs40nz",  # DEEBOT T8 AIVI
        "a1nNMoAGAsH",  # DEEBOT T8 MAX
        "vdehg6",  # DEEBOT T8 AIVI +
        "no61kx",  # DEEBOT T8 POWER
        "a7lhb1"  # DEEBOT N9+
    ]:
        command_name = "getCleanInfo_V2"
    super().__init__(command_name)
tjbassindale commented 3 years ago

I have been having the same issue with my T8, so that library seems like a potentially good find. Will take a read into it later.

donkawechico commented 3 years ago

Did anyone tried this library? https://github.com/And3rsL/Deebotozmo/tree/master/deebotozmo The code says it supports all the recent models, including T8/N9+.

Holy crap! There's even a HACS integration... AND IT WORKS!

I can start, pause, return to home, see errors... I can actually write automations for this now. (I have an Ozmo T8 AIVI).

@goooroooX I owe you (and @And3rsL) a beer :)

EDIT: A link to the creator of that integration's "Buy Me a Coffee" page: https://www.buymeacoffee.com/4nd3rs

petestanley commented 2 years ago

Thanks for pointing me to the HACS version @donkawechico. Working amazingly with my EcoVacs DEEBOT N8!

Amazing work @And3rsL

cvasantrao commented 2 years ago

How do you enable the sensors?

donkawechico commented 2 years ago

How do you enable the sensors?

Go to devices page and find your vacuum in the list. Go to vacuum's device info page and click on "+X disabled entities". Then click on the sensors you want to enable, this will launch a settings dialog. Click "Enable Entity".

I forget if you need to restart the server, but I'd do it just in case.

owen2 commented 2 years ago

Is there any chance of porting the existing integration from sucks to the newer library?

ex-nerd commented 2 years ago

Look into https://github.com/DeebotUniverse/Deebot-4-Home-Assistant

thefunkygibbon commented 2 years ago

so this integration hasn't worked for 2 years? why is it still included in HA? wish i checked this before choosing to buy an ecovacs 👎

owen2 commented 2 years ago

It works for the older models, so I would guess that's why it is still around.

thefunkygibbon commented 2 years ago

ok. well i've tried the "Deebot 4 Home Assistant" integration from HACS and it works lovely. map and all. shame the official one can't keep up. maybe HA can ditch this integration for that one?

dgomes commented 2 years ago

You can't replace with "Deebot 4 HA" because it does not support older models which the current official integration supports.

That been said, it will probably be accepted a PR with a different name.

Jacks-HomeAssistant commented 2 years ago

Hi Folks

A Home Assistant newbie here with no coding experience so please go easy! I have experienced the same problems as mentioned above with my T8. I would like to add the fix mentioned on this link (https://github.com/And3rsL/Deebotozmo/tree/master/deebotozmo) but im getting lost on this page and how to implement into my Home Assistant Instance. Would anyone be able to point me in the right direction to get this up and running. I am running home assistant core on a Rasberry Pi 4B.

edenhaus commented 2 years ago

That been said, it will probably be accepted a PR with a different name.

No thats not a good solution. I'm the maintainer of Deebot 4 HA and I have to add the two missing protocols (of total 3) to Deebot 4 HA first and then replace the official integration. It only takes time as I only have one model currently and I cannot afford to buy me other ones (student)

edenhaus commented 2 years ago

@Jacks-HomeAssistant Please use and install https://github.com/DeebotUniverse/Deebot-4-Home-Assistant. In the docs it written how to install it

niklasmoeller commented 2 years ago

You can't replace with "Deebot 4 HA" because it does not support older models which the current official integration supports.

Does it? I have an Ozmo 930 and it seems not to be working with the official integration.

edenhaus commented 2 years ago

For completeness, ecovacs is using 3 different protocols for communication:

For users asking, which component will support their model, we created a models page for my maintained custom component. More information under https://deebot.readthedocs.io/home/models/ Please feel free to provide feedback and/or contribute to the project. Together we can improve the component :)

As you can imagine, 3 different protocols need a lot of work to handle and analyse it. Also different models support different features and ecovacs is not providing any information about it.