Hello!
I have an ancient Deebot 901, trying to get bumper to work with HA.
I believe I have successfully got bumper running and the vacuum connected to bumper, but HA just refuses to connect.
So far I’ve done this
- Installed bumper using portainer. Ports are open, 8007 rest/status working
- DNS rewritten with adguard
Seen this:
- Little vacuum shows right up in Bumper as expected (MQTT connected)
- port scan shows all bumper ports open on the docker container
Problem:
- Ecovacs integration will not connect with following settings:
- username : valid email but gibberish
- pass : 6 digit random number
- country: correct
- rest url: http:// [ bumper ip ] : 8007
- mqtt:// [bumper ip ] :8333
- verify ssl is OFF
- I tried mqtts://[bumper ip]:8333 (SAME RESULT)
Bumper log shows NO ATTEMPT to login by HA
Home assistant log as follows:
Unexpected exception during login
Traceback (most recent call last):
File "/usr/local/lib/python3.13/site-packages/aiohttp/client.py", line 703, in _request
conn = await self._connector.connect(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
req, traces=traces, timeout=real_timeout
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/local/lib/python3.13/site-packages/aiohttp/connector.py", line 548, in connect
proto = await self._create_connection(req, traces, timeout)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.13/site-packages/aiohttp/connector.py", line 1056, in _create_connection
_, proto = await self._create_direct_connection(req, traces, timeout)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.13/site-packages/aiohttp/connector.py", line 1369, in _create_direct_connection
transp, proto = await self._wrap_create_connection(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<7 lines>...
)
^
File "/usr/local/lib/python3.13/site-packages/aiohttp/connector.py", line 1115, in _wrap_create_connection
sock = await aiohappyeyeballs.start_connection(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<5 lines>...
)
^
File "/usr/local/lib/python3.13/site-packages/aiohappyeyeballs/impl.py", line 73, in start_connection
sock = await _connect_sock(
^^^^^^^^^^^^^^^^^^^^
...<6 lines>...
)
^
File "/usr/local/lib/python3.13/site-packages/aiohappyeyeballs/impl.py", line 208, in _connect_sock
await loop.sock_connect(sock, address)
File "/usr/local/lib/python3.13/asyncio/selector_events.py", line 641, in sock_connect
return await fut
^^^^^^^^^
asyncio.exceptions.CancelledError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/ecovacs/config_flow.py", line 87, in _validate_input
await authenticator.authenticate()
File "/usr/local/lib/python3.13/site-packages/deebot_client/authentication.py", line 372, in authenticate
self._credentials = await self._auth_client.login()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.13/site-packages/deebot_client/authentication.py", line 115, in login
login_password_resp = await self.__call_login_api(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
self._account_id, self._password_hash
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/local/lib/python3.13/site-packages/deebot_client/authentication.py", line 186, in __call_login_api
return await self.__do_auth_response(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
url, self.__sign(params, self._meta, _CLIENT_KEY, _CLIENT_SECRET)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/local/lib/python3.13/site-packages/deebot_client/authentication.py", line 147, in __do_auth_response
async with self._config.session.get(
~~~~~~~~~~~~~~~~~~~~~~~~^
url, params=params, timeout=_TIMEOUT
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
) as res:
^
File "/usr/local/lib/python3.13/site-packages/aiohttp/client.py", line 1425, in __aenter__
self._resp: _RetType = await self._coro
^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.13/site-packages/aiohttp/client.py", line 607, in _request
with timer:
^^^^^
File "/usr/local/lib/python3.13/site-packages/aiohttp/helpers.py", line 685, in __exit__
raise asyncio.TimeoutError from exc_val
TimeoutError