humbertogontijo / homeassistant-roborock

Roborock integration for Home Assistant. This integration uses your devices from the Roborock App
GNU General Public License v3.0
653 stars 66 forks source link

Roborock is becoming unavailable #329

Open StefanDorschu opened 1 year ago

StefanDorschu commented 1 year ago

I was using the integration before version 1.xx and everything worked fine (just used it a few days before updating, so no long term experience)

Since updating to 1.0.2 or the main branch the local api is throwing constant time outs and the Roborock is unavailable.

Using the app the Roborock is working like a charm.

HomeAssistant (running in a VM using HAOS) and the Roborock (S8 Pro Ultra) are in the same VLAN.

I'm using the username/password authentication.

Any ideas what could be wrong?

Thank you for your support!

Stefan

These are the errors in the log:

Logger: roborock.api Source: runner.py:179 First occurred: 07:31:57 (39 occurrences) Last logged: 10:29:24

[Errno 104] Connection reset by peer

Logger: roborock.local_api Source: runner.py:179 First occurred: 07:30:22 (66 occurrences) Last logged: 07:54:10

id=2 Timeout after 4 seconds

Logger: homeassistant Source: custom_components/roborock/config_flow.py:66 Integration: Roborock (documentation, issues) First occurred: 07:31:27 (2 occurrences) Last logged: 07:42:52

Error doing job: Task exception was never retrieved Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/config_entries.py", line 845, in async_init flow, result = await task File "/usr/src/homeassistant/homeassistant/config_entries.py", line 873, in _async_init result = await self._async_handle_step(flow, flow.init_step, data) File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 367, in _async_handle_step result: FlowResult = await getattr(flow, method)(user_input) File "/config/custom_components/roborock/config_flow.py", line 66, in async_stepdhcp for , network in device_network.items(): AttributeError: 'NoneType' object has no attribute 'items'

Logger: custom_components.roborock.coordinator Source: helpers/update_coordinator.py:204 Integration: Roborock (documentation, issues) First occurred: 07:31:54 (2 occurrences) Last logged: 07:42:30

Error fetching roborock data: id=68006 Timeout after 4 seconds Error fetching roborock data: id=40060 Timeout after 4 seconds

mm98 commented 1 year ago

I see the same error. The Roborock iOS app works.

Config entry 'xxxx@xxx.com' for roborock integration not ready yet: id=42868 Timeout after 4 seconds; Retrying in background

Logger: roborock.api
Source: runner.py:179
First occurred: 10:37:05 (7 occurrences)
Last logged: 10:44:41

[Errno 32] Broken pipe
[Errno 104] Connection reset by peer
This error originated from a custom integration.

Logger: custom_components.roborock.coordinator
Source: custom_components/roborock/coordinator.py:63
Integration: Roborock (documentation, issues)
First occurred: 10:37:09 (1 occurrences)
Last logged: 10:37:09

Unexpected error fetching roborock data: 'list' object has no attribute 'is_cached'
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/roborock/util.py", line 51, in wrapped
    cache.last_run_result = await func(*args, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/roborock/api.py", line 364, in get_room_mapping
    mapping = await self.send_command(RoborockCommand.GET_ROOM_MAPPING)
  File "/usr/local/lib/python3.10/site-packages/roborock/local_api.py", line 94, in send_command
    return (await self.send_message(roborock_message))[0]
  File "/usr/local/lib/python3.10/site-packages/roborock/local_api.py", line 137, in send_message
    raise exception
  File "/usr/local/lib/python3.10/site-packages/roborock/local_api.py", line 107, in async_local_response
    (response, err) = await self._async_response(request_id, response_protocol)
  File "/usr/local/lib/python3.10/site-packages/roborock/api.py", line 192, in _async_response
    raise RoborockTimeout(f"id={request_id} Timeout after {QUEUE_TIMEOUT} seconds") from None
roborock.exceptions.RoborockTimeout: id=81305 Timeout after 4 seconds

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 258, in _async_refresh
    self.data = await self._async_update_data()
  File "/config/custom_components/roborock/coordinator.py", line 98, in _async_update_data
    await self.fill_device_info(self.device_info)
  File "/config/custom_components/roborock/coordinator.py", line 87, in fill_device_info
    await asyncio.gather(
  File "/config/custom_components/roborock/coordinator.py", line 63, in fill_room_mapping
    room_mapping = await self.api.get_room_mapping()
  File "/usr/local/lib/python3.10/site-packages/roborock/util.py", line 56, in wrapped
    cache.last_run_result.is_cached = True
AttributeError: 'list' object has no attribute 'is_cached'
StefanDorschu commented 1 year ago

Version 1.03 still shows some timeouts but many less than before.

Therefore the robot still becomes unavailable but quite less and comes back online (much faster)

--> Still not fixed but much better

mm98 commented 1 year ago

Therefore the robot still becomes unavailable but quite less and comes back online (much faster)

With v1.0.3 it still stays Unavailable for me (S7), but only one error is shown now:

This error originated from a custom integration.

Logger: homeassistant.config_entries
Source: custom_components/roborock/coordinator.py:58
Integration: Roborock (documentation, issues)
First occurred: 08:36:10 (2 occurrences)
Last logged: 08:36:49

Error setting up entry xxxx@xxxx.com for roborock
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 387, in async_setup
    result = await component.async_setup_entry(hass, self)
  File "/config/custom_components/roborock/__init__.py", line 124, in async_setup_entry
    await asyncio.gather(
  File "/config/custom_components/roborock/coordinator.py", line 58, in release
    await self.map_api.async_disconnect()
  File "/usr/local/lib/python3.10/site-packages/roborock/cloud_api.py", line 135, in async_disconnect
    (_, err) = await self._async_response(DISCONNECT_REQUEST_ID)
  File "/usr/local/lib/python3.10/site-packages/roborock/api.py", line 192, in _async_response
    raise RoborockTimeout(f"id={request_id} Timeout after {QUEUE_TIMEOUT} seconds") from None
roborock.exceptions.RoborockTimeout: id=1 Timeout after 4 seconds

I tired to remove the Integration from HA (if it was a bad config or something similar) and reinstall it again. Same error.

mm98 commented 1 year ago

I've tried to enable DEBUG logging on the Roborock integration, to see if more detailed errors was shown. I have changed the sensitive info to {REDACTED} in the logs below.

logger:
  default: warning
  logs:
    custom_components.roborock: debug
2023-05-21 10:20:51.193 DEBUG (MainThread) [custom_components.roborock] Integration async setup entry: {'entry_id': '{REDACTED}', 'version': 1, 'domain': 'roborock', 'title': '{REDACTED}', 'data': {'device_network': {}, 'username': '{REDACTED}', 'user_data': {'uid': {REDACTED}, 'tokentype': '', 'token': '{REDACTED-TOKEN}', 'rruid': '{REDACTED}', 'region': 'eu', 'countrycode': '45', 'country': 'DK', 'nickname': 'CP', 'rriot': {'u': '{REDACTED}', 's': 'voV4O2', 'h': 'Kl8D6lYynD', 'k': 'te3ObV8K', 'r': {'r': 'EU', 'a': 'https://api-eu.roborock.com', 'm': 'ssl://mqtt-eu-2.roborock.com:8883', 'l': 'https://wood-eu.roborock.com'}}, 'tuyaDeviceState': 2, 'avatarurl': 'https://files.roborock.com/iottest/default_avatar.png'}, 'base_url': 'https://euiot.roborock.com'}, 'options': {}, 'pref_disable_new_entities': False, 'pref_disable_polling': False, 'source': 'user', 'unique_id': '{REDACTED}', 'disabled_by': None}
2023-05-21 10:20:51.243 DEBUG (MainThread) [custom_components.roborock] Requesting home data
2023-05-21 10:21:04.502 DEBUG (MainThread) [custom_components.roborock] Got home data HomeData(id={REDACTED}, name='My Home', lon=None, lat=None, geo_name=None, products=[HomeDataProduct(id='{REDACTED}', name='Roborock S7', code=None, model='roborock.vacuum.a15', iconurl=None, attribute=None, capability=0, category='robot.vacuum.cleaner', schema=[HomeDataProductSchema(id='101', name='rpc_request', code='rpc_request', mode='rw', type='RAW', product_property=None, desc=None), HomeDataProductSchema(id='102', name='rpc_response', code='rpc_response', mode='rw', type='RAW', product_property=None, desc=None), HomeDataProductSchema(id='120', name='错误代码', code='error_code', mode='ro', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='121', name='设备状态', code='state', mode='ro', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='122', name='设备电量', code='battery', mode='ro', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='123', name='清扫模式', code='fan_power', mode='rw', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='124', name='拖地模式', code='water_box_mode', mode='rw', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='125', name='主刷寿命', code='main_brush_life', mode='rw', type='VALUE', product_property=None, desc=None), HomeDataProductSchema(id='126', name='边刷寿命', code='side_brush_life', mode='rw', type='VALUE', product_property=None, desc=None), HomeDataProductSchema(id='127', name='滤网寿命', code='filter_life', mode='rw', type='VALUE', product_property=None, desc=None), HomeDataProductSchema(id='128', name='额外状态', code='additional_props', mode='ro', type='RAW', product_property=None, desc=None), HomeDataProductSchema(id='130', name='完成事件', code='task_complete', mode='ro', type='RAW', product_property=None, desc=None), HomeDataProductSchema(id='131', name='电量不足任务取消', code='task_cancel_lo ...
2023-05-21 10:21:17.269 WARNING (MainThread) [homeassistant.bootstrap] Waiting on integrations to complete setup: roborock, sensor.fuelprices_dk
2023-05-21 10:21:20.969 DEBUG (MainThread) [custom_components.roborock.coordinator] Finished fetching roborock data in 4.006 seconds (success: False)
2023-05-21 10:21:20.984 WARNING (MainThread) [homeassistant.config_entries] Config entry '{REDACTED}' for roborock integration not ready yet: There are no devices that can currently be reached.; Retrying in background
2023-05-21 10:21:28.026 DEBUG (MainThread) [custom_components.roborock] Integration async setup entry: {'entry_id': '{REDACTED}', 'version': 1, 'domain': 'roborock', 'title': '{REDACTED}', 'data': {'device_network': {}, 'username': '{REDACTED}', 'user_data': {'uid': {REDACTED}, 'tokentype': '', 'token': '{REDACTED-TOKEN}', 'rruid': '{REDACTED}', 'region': 'eu', 'countrycode': '45', 'country': 'DK', 'nickname': 'CP', 'rriot': {'u': '{REDACTED}', 's': 'voV4O2', 'h': 'Kl8D6lYynD', 'k': 'te3ObV8K', 'r': {'r': 'EU', 'a': 'https://api-eu.roborock.com', 'm': 'ssl://mqtt-eu-2.roborock.com:8883', 'l': 'https://wood-eu.roborock.com'}}, 'tuyaDeviceState': 2, 'avatarurl': 'https://files.roborock.com/iottest/default_avatar.png'}, 'base_url': 'https://euiot.roborock.com'}, 'options': {}, 'pref_disable_new_entities': False, 'pref_disable_polling': False, 'source': 'user', 'unique_id': '{REDACTED}', 'disabled_by': None}
2023-05-21 10:21:28.031 DEBUG (MainThread) [custom_components.roborock] Requesting home data
2023-05-21 10:21:34.778 DEBUG (MainThread) [custom_components.roborock] Got home data HomeData(id={REDACTED}, name='My Home', lon=None, lat=None, geo_name=None, products=[HomeDataProduct(id='{REDACTED}', name='Roborock S7', code=None, model='roborock.vacuum.a15', iconurl=None, attribute=None, capability=0, category='robot.vacuum.cleaner', schema=[HomeDataProductSchema(id='101', name='rpc_request', code='rpc_request', mode='rw', type='RAW', product_property=None, desc=None), HomeDataProductSchema(id='102', name='rpc_response', code='rpc_response', mode='rw', type='RAW', product_property=None, desc=None), HomeDataProductSchema(id='120', name='错误代码', code='error_code', mode='ro', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='121', name='设备状态', code='state', mode='ro', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='122', name='设备电量', code='battery', mode='ro', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='123', name='清扫模式', code='fan_power', mode='rw', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='124', name='拖地模式', code='water_box_mode', mode='rw', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='125', name='主刷寿命', code='main_brush_life', mode='rw', type='VALUE', product_property=None, desc=None), HomeDataProductSchema(id='126', name='边刷寿命', code='side_brush_life', mode='rw', type='VALUE', product_property=None, desc=None), HomeDataProductSchema(id='127', name='滤网寿命', code='filter_life', mode='rw', type='VALUE', product_property=None, desc=None), HomeDataProductSchema(id='128', name='额外状态', code='additional_props', mode='ro', type='RAW', product_property=None, desc=None), HomeDataProductSchema(id='130', name='完成事件', code='task_complete', mode='ro', type='RAW', product_property=None, desc=None), HomeDataProductSchema(id='131', name='电量不足任务取消', code='task_cancel_lo ...
2023-05-21 10:21:50.131 DEBUG (MainThread) [custom_components.roborock.coordinator] Finished fetching roborock data in 4.055 seconds (success: False)
2023-05-21 10:22:00.553 DEBUG (MainThread) [custom_components.roborock] Integration async setup entry: {'entry_id': '{REDACTED}', 'version': 1, 'domain': 'roborock', 'title': '{REDACTED}', 'data': {'device_network': {}, 'username': '{REDACTED}', 'user_data': {'uid': {REDACTED}, 'tokentype': '', 'token': '{REDACTED-TOKEN}', 'rruid': '{REDACTED}', 'region': 'eu', 'countrycode': '45', 'country': 'DK', 'nickname': 'CP', 'rriot': {'u': '{REDACTED}', 's': 'voV4O2', 'h': 'Kl8D6lYynD', 'k': 'te3ObV8K', 'r': {'r': 'EU', 'a': 'https://api-eu.roborock.com', 'm': 'ssl://mqtt-eu-2.roborock.com:8883', 'l': 'https://wood-eu.roborock.com'}}, 'tuyaDeviceState': 2, 'avatarurl': 'https://files.roborock.com/iottest/default_avatar.png'}, 'base_url': 'https://euiot.roborock.com'}, 'options': {}, 'pref_disable_new_entities': False, 'pref_disable_polling': False, 'source': 'user', 'unique_id': '{REDACTED}', 'disabled_by': None}
2023-05-21 10:22:00.555 DEBUG (MainThread) [custom_components.roborock] Requesting home data
2023-05-21 10:22:00.771 DEBUG (MainThread) [custom_components.roborock] Got home data HomeData(id={REDACTED}, name='My Home', lon=None, lat=None, geo_name=None, products=[HomeDataProduct(id='{REDACTED}', name='Roborock S7', code=None, model='roborock.vacuum.a15', iconurl=None, attribute=None, capability=0, category='robot.vacuum.cleaner', schema=[HomeDataProductSchema(id='101', name='rpc_request', code='rpc_request', mode='rw', type='RAW', product_property=None, desc=None), HomeDataProductSchema(id='102', name='rpc_response', code='rpc_response', mode='rw', type='RAW', product_property=None, desc=None), HomeDataProductSchema(id='120', name='错误代码', code='error_code', mode='ro', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='121', name='设备状态', code='state', mode='ro', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='122', name='设备电量', code='battery', mode='ro', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='123', name='清扫模式', code='fan_power', mode='rw', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='124', name='拖地模式', code='water_box_mode', mode='rw', type='ENUM', product_property=None, desc=None), HomeDataProductSchema(id='125', name='主刷寿命', code='main_brush_life', mode='rw', type='VALUE', product_property=None, desc=None), HomeDataProductSchema(id='126', name='边刷寿命', code='side_brush_life', mode='rw', type='VALUE', product_property=None, desc=None), HomeDataProductSchema(id='127', name='滤网寿命', code='filter_life', mode='rw', type='VALUE', product_property=None, desc=None), HomeDataProductSchema(id='128', name='额外状态', code='additional_props', mode='ro', type='RAW', product_property=None, desc=None), HomeDataProductSchema(id='130', name='完成事件', code='task_complete', mode='ro', type='RAW', product_property=None, desc=None), HomeDataProductSchema(id='131', name='电量不足任务取消', code='task_cancel_lo ...
2023-05-21 10:22:16.062 DEBUG (MainThread) [custom_components.roborock.coordinator] Finished fetching roborock data in 4.008 seconds (success: False)
2023-05-21 10:22:20.073 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry {REDACTED} for roborock
  File "/config/custom_components/roborock/__init__.py", line 124, in async_setup_entry
  File "/config/custom_components/roborock/coordinator.py", line 58, in release
  File "/usr/local/lib/python3.10/site-packages/roborock/cloud_api.py", line 135, in async_disconnect
  File "/usr/local/lib/python3.10/site-packages/roborock/api.py", line 192, in _async_response
    raise RoborockTimeout(f"id={request_id} Timeout after {QUEUE_TIMEOUT} seconds") from None
roborock.exceptions.RoborockTimeout: id=1 Timeout after 4 seconds
jasonmadigan commented 1 year ago

I’ve seen this before when one of my robots was offline for a period, while others were not.

mm98 commented 1 year ago

I've finally managed to get it working. I previously used a separate WIFI SSID (with IoT Network and Device Isolation) on the S7. I changed it back to the normal SSID on the Roborock (vacuum) and HA could connect to it again.

There must have been some kind of network change in v1.0.2 (I think), since this used to work with WIFI isolation. Anyways, Finally working again!

This actually also solved my issue #324.

varn-lt commented 1 year ago

Same thing here, integration is not usable at all because roborock is unavailable, unless I reload integration. Then it is being available till next morning when moping begins. After several minutes of mopping it again becomes unavailable and never gets back online, unless I reload integration manually.

2023-05-23 08:20:14.710 ERROR (MainThread) [roborock.cloud_api] id=75150 Timeout after 4 seconds
2023-05-23 08:20:19.711 ERROR (MainThread) [roborock.cloud_api] id=94522 Timeout after 4 seconds
2023-05-23 08:20:34.715 ERROR (MainThread) [roborock.cloud_api] id=89229 Timeout after 4 seconds
2023-05-23 08:20:35.777 ERROR (MainThread) [roborock.local_api] id=2 Timeout after 4 seconds
2023-05-23 08:20:39.717 ERROR (MainThread) [roborock.cloud_api] id=94104 Timeout after 4 seconds
2023-05-23 08:20:46.205 ERROR (MainThread) [custom_components.roborock.coordinator] Error fetching roborock data: id=35519 Timeout after 4 seconds
2023-05-23 08:20:49.783 ERROR (MainThread) [roborock.local_api] id=2 Timeout after 4 seconds
2023-05-23 08:21:03.788 ERROR (MainThread) [roborock.local_api] id=2 Timeout after 4 seconds
....
2023-05-23 08:32:15.987 ERROR (MainThread) [roborock.local_api] id=2 Timeout after 4 seconds
2023-05-23 08:32:19.853 ERROR (MainThread) [roborock.cloud_api] id=85769 Timeout after 4 seconds
2023-05-23 08:32:29.991 ERROR (MainThread) [roborock.local_api] id=2 Timeout after 4 seconds
2023-05-23 08:32:34.855 ERROR (MainThread) [roborock.cloud_api] id=69151 Timeout after 4 seconds
2023-05-23 08:32:39.857 ERROR (MainThread) [roborock.cloud_api] id=98608 Timeout after 4 seconds
2023-05-23 08:32:43.996 ERROR (MainThread) [roborock.local_api] id=2 Timeout after 4 seconds
syndikatss commented 1 year ago

I confirm that when the vacuum cleaner is just worth it, it can work for several days, as soon as I send it for cleaning it becomes unavailable until the integration is restarted. Before version 1.0 this was not observed.

atkjedi commented 1 year ago

I too am noticing I have to frequently restart the integration.

varn-lt commented 1 year ago

v1.0.4 - no improvements. Roborock S7 Vmax Ultra becomes unavailable few minutes after starting to clean

Alfagek commented 1 year ago

Same here with the S7 with 1.0.4

and also errors on the map Deze fout is ontstaan door een aangepaste integratie.

Logger: roborock.cloud_api Source: custom_components/roborock/camera.py:220 Integration: Roborock (documentation, issues) First occurred: 14:18:27 (56 occurrences) Last logged: 19:22:45

id=85423 Timeout after 4 seconds id=78157 Timeout after 4 seconds id=94529 Timeout after 4 seconds id=93586 Timeout after 4 seconds id=94748 Timeout after 4 seconds

Lash-L commented 1 year ago

Try 1.0.6 and see if that improved anything

Alfagek commented 1 year ago

@Lash-L it looks like it fixt it here 👍🏻

varn-lt commented 1 year ago

Try 1.0.6 and see if that improved anything

for Roborock S7 MaxV Ultra it did not solved any problem. The vacuum become unavailable when it starts to clean. And does not go offline when it is in dock.

atkjedi commented 1 year ago

Still having issues with S8

bigbangus commented 1 year ago

Just switched to this integration from Piotr's because of API timeout on my S7.

It's been good for a week and now I'm experiencing the same issue with "getting info" in the app and n/a in HA.

I'm on 1.06 from 6 days ago.

inertia666 commented 1 year ago

Same problem with the S6. I reset my wifi on the roborock and set up the integration again. It lasted a few hours and now the entity is unavailable and cannot reconnect to the vacuum.

Regressor commented 1 year ago

Got this problem too. Device is Roborock S7 MaxV Ultra. Integration version 1.0.6. Also I found this in HA logs:

2023-06-19 14:43:07.294 ERROR (Thread-6 (_thread_main)) [roborock.api] 'utf-8' codec can't decode byte 0xd7 in position 8: invalid continuation byte Traceback (most recent call last): File "/usr/local/lib/python3.10/site-packages/roborock/api.py", line 152, in on_message_received if endpoint.decode().startswith(self._endpoint): UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd7 in position 8: invalid continuation byte 2023-06-19 14:43:09.647 ERROR (Thread-6 (_thread_main)) [roborock.api] 'utf-8' codec can't decode byte 0xe8 in position 0: invalid continuation byte Traceback (most recent call last): File "/usr/local/lib/python3.10/site-packages/roborock/api.py", line 152, in on_message_received if endpoint.decode().startswith(self._endpoint): UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe8 in position 0: invalid continuation byte

It looks there is an unparsable message during floor washing. I'll check it tomorrow to get details.

honcheng commented 1 year ago

Getting the same issue on my S8. I monitored when it becomes unavailable, and it seems it can connect and reconnect every few minutes.

elijah286 commented 9 months ago

Same issue with my S7. It's on the same network and I've even turned of 5GHz to make sure it's connecting to the 2.4GHz band. It'll work for a few minutes before becoming unavailable but the iOS app never stops working.

Cikkajes commented 8 months ago

Same issue with Roborock S7 and S6. I have a Wi-Fi mesh system and the 2 robots often become unavailable. They come back online sporadically only after a HA reboot. This did not happen up until a few months ago. From the Roborock app they work normally.

arne182 commented 8 months ago

I have seen this behaviour when the IP address changes

DaWheelz commented 8 months ago

I´ve had this issue for about 2 days now. Logs show that the device goes unavailable like every minute for a few seconds. I tried giving it a static IP but that doesn´t help

BramNH commented 4 months ago

My Roborock Q5 Pro was constantly dropping connection with my Wi-Fi network. This reddit comment seems to have fixed it for me. Can't say anything for the long term.

BramNH commented 4 months ago

Still having the periodic unavailable. The issue happened to me when moving from the Roborock Q7 Max to the Roborock Q5 Pro (newer model). They seem to have made some changes with regards to Wi-Fi (maybe new firmware that causes the issue?). The Q5 Pro would constantly drop connection with my Wi-Fi and the DHCP of my router repeatedly gave it a different IP address. The local_api logs of the integration would show different IP addresses that it saved and could not connect to.

Now that I have given it a static IP address, the connection with the router seems to be stable. But the entities are still periodically unavailable and I am getting the following errors/warnings:

ERROR (MainThread) [custom_components.roborock.coordinator] Error fetching roborock data: id=26953 Timeout after 4 seconds WARNING (MainThread) [roborock.local_api] [Roborock Q5 Pro] [Errno 104] Connection reset by peer

PilaScat commented 2 weeks ago

same problem for me

cagnulein commented 1 week ago

same to me