Skip to content

Time out on device initialization #725

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
SLAZ666 opened this issue Sep 19, 2024 · 8 comments
Closed

Time out on device initialization #725

SLAZ666 opened this issue Sep 19, 2024 · 8 comments
Assignees
Labels
bug Something isn't working question Further information is requested

Comments

@SLAZ666
Copy link

SLAZ666 commented Sep 19, 2024

Describe the bug
Initialization of the vacuum does not work (Time out). Configuration of the device works, but the integration can not load the device.

To Reproduce
Use an L10s Ultra with firmware 4.3.9_3204 like in #482 or #342

Expected behavior
The integration should load the device correctly and not time out.

Additional Information (please complete the following information)

  • Model Name [e.g. dreame.vacuum.p2028]: dreame.vacuum.r2228o
  • Firmware Version [e.g. 1156]: 4.3.9_3204
  • Home Assistant Version: 2024.9.2
  • Integration Version: v1.0.4
  • Configuration Type [With or without map support]: Without map support (local connection)
  • Errors or warnings shown in the HA logs (if applicable):

2024-09-19 19:12:03.652 ERROR (SyncWorker_3) [miio.miioprotocol] Got error when receiving: timed out
2024-09-19 19:12:03.668 WARNING (MainThread) [custom_components.dreame_vacuum] Integration start failed: Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/miio/miioprotocol.py", line 193, in send
data, addr = s.recvfrom(4096)
^^^^^^^^^^^^^^^^
TimeoutError: timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/miio/miioprotocol.py", line 193, in send
data, addr = s.recvfrom(4096)
^^^^^^^^^^^^^^^^
TimeoutError: timed out

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/config/custom_components/dreame_vacuum/coordinator.py", line 326, in _async_update_data
await self.hass.async_add_executor_job(self.device.update)
File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/dreame_vacuum/dreame/device.py", line 996, in update
self.connect_device()
File "/config/custom_components/dreame_vacuum/dreame/device.py", line 733, in connect_device
self._request_properties()
File "/config/custom_components/dreame_vacuum/dreame/device.py", line 262, in _request_properties
result = self._protocol.get_properties(props[:15])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/dreame_vacuum/dreame/protocol.py", line 543, in get_properties
return self.send("get_properties", parameters=parameters, retry_count=retry_count)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/dreame_vacuum/dreame/protocol.py", line 536, in send
return self.device.send(method, parameters=parameters, retry_count=retry_count)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/miio/miioprotocol.py", line 233, in send
return self.send(
^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/miio/miioprotocol.py", line 241, in send
raise DeviceException("No response from the device") from ex
miio.exceptions.DeviceException: No response from the device

I have analysed the problem. The log points to line 262 in device.py, where the properties are requested from the device. The timeout occured in the fourth request inside the loop, so properties 45-60. I tried to get the exact property that causes the timeout, but when I requested less properties, no time out occured. I have changed the code to only request 10 properties at a time and now it initializes the device correctly. I don't really know why this works perhaps the request or response is too big for the exact combination.

So a fix that worked for me is to change lines 262 and 265 inside device.py from the value 15 to 10.

@SLAZ666 SLAZ666 added bug Something isn't working question Further information is requested labels Sep 19, 2024
@Tasshack
Copy link
Owner

So a fix that worked for me is to change lines 262 and 265 inside device.py from the value 15 to 10.

This is a nice found I will investigate that, thanks.

Miio protocol has limit of maximum 15 properties at a time for all the devices that are using it but I don't think it is a size issue because vacuum can return raw map data over local protocol when it is mapping and it can grow very huge.

@ManiaciaChao
Copy link

I can confirm that this issue also occurred with my xiaomi_vacuum_c102cn.
I haven't investigated it deeply yet, but setting it to 10 didn't resolve the problem.
In my case, I had to adjust that value to 5.

@tinuva
Copy link

tinuva commented Dec 10, 2024

For my c102gl I also had to set the props down to 5 on the latest beta release v2.0.0816

@docid00
Copy link

docid00 commented Feb 28, 2025

same here, adjusting the value down to 5 fixed the issue for me
xiaomi.vacuum.c102gl
v2.0.0b16

@Tasshack
Copy link
Owner

Tasshack commented Mar 9, 2025

I have decided not to modify this value on the release because there are too many people having no issues with it.
If it is not working for you that means it is probably related to your network or ISP settings.

@Tasshack Tasshack closed this as completed Mar 9, 2025
@tinuva
Copy link

tinuva commented Mar 9, 2025

I have decided not to modify this value on the release because there are too many people having no issues with it. If it is not working for you that means it is probably related to your network or ISP settings.

Could you explain how this could be related to network or ISP settings?

@restorepoint1
Copy link

+1
c102cn
v2.0.0b17 (v2.0.0b16 too)
latest haos

local connection was not working at all (no response from device), cloud connection was ok.
changed props[:15] (line 726,729 device.py) to props[:10] and it worked

@pabsi
Copy link

pabsi commented Apr 3, 2025

Just chipping in as this happened to me today. I want to mention that changing the lines suggested above worked for me too:
"changed props[:15] (line 726,729 device.py) to props[:10] and it worked":

result = self._protocol.get_properties(props[:10])

I also don't see how this could be related to my network nor my ISP.

To further shed light into this:

  • This just started happening after I upgraded to Home Assistant 2025.4.0.
  • It was working well before that (I had whatever latest 2025.3.x was.

Probably the major release of HA broke it. The thing is that I now have custom code in the device.py and this shouldn't be the way going forward, as with future releases it'll break again :(

Attaching some DEBUG logs, just in case it helps:

hass  | 2025-04-03T09:53:55.731618942Z 2025-04-03 11:53:55.730 INFO (MainThread) [custom_components.dreame_vacuum] Integration starting...
hass  | 2025-04-03T09:53:55.735490868Z 2025-04-03 11:53:55.731 DEBUG (SyncWorker_7) [custom_components.dreame_vacuum.dreame.device] STATUS not supported: None
hass  | 2025-04-03T09:53:55.735889437Z 2025-04-03 11:53:55.731 DEBUG (SyncWorker_7) [custom_components.dreame_vacuum.dreame.device] STATUS not supported: None
hass  | 2025-04-03T09:53:55.736099935Z 2025-04-03 11:53:55.731 DEBUG (SyncWorker_7) [custom_components.dreame_vacuum.dreame.device] CHARGING_STATUS not supported: None
hass  | 2025-04-03T09:53:55.736548980Z 2025-04-03 11:53:55.731 DEBUG (SyncWorker_7) [custom_components.dreame_vacuum.dreame.device] CHARGING_STATUS not supported: None
hass  | 2025-04-03T09:53:55.736899145Z 2025-04-03 11:53:55.732 DEBUG (SyncWorker_7) [custom_components.dreame_vacuum.dreame.device] TASK_STATUS not supported: None
hass  | 2025-04-03T09:53:55.737127347Z 2025-04-03 11:53:55.732 DEBUG (SyncWorker_7) [custom_components.dreame_vacuum.dreame.device] STATUS not supported: None
hass  | 2025-04-03T09:53:55.737295392Z 2025-04-03 11:53:55.732 DEBUG (SyncWorker_7) [custom_components.dreame_vacuum.dreame.device] CHARGING_STATUS not supported: None
hass  | 2025-04-03T09:53:55.737504904Z 2025-04-03 11:53:55.732 DEBUG (SyncWorker_7) [custom_components.dreame_vacuum.dreame.device] CHARGING_STATUS not supported: None
hass  | 2025-04-03T09:53:55.737715484Z 2025-04-03 11:53:55.732 DEBUG (SyncWorker_7) [custom_components.dreame_vacuum.dreame.device] Device update: 5
hass  | 2025-04-03T09:53:56.421932222Z 2025-04-03 11:53:56.421 INFO (SyncWorker_7) [custom_components.dreame_vacuum.dreame.device] Connecting to device
hass  | 2025-04-03T09:53:56.511248990Z 2025-04-03 11:53:56.510 DEBUG (SyncWorker_7) [miio.miioprotocol] Got a response: Container: 
hass  | 2025-04-03T09:53:56.511293488Z     data = Container: 
hass  | 2025-04-03T09:53:56.511306384Z         data = b'' (total 0)
hass  | 2025-04-03T09:53:56.511316586Z         value = b'' (total 0)
hass  | 2025-04-03T09:53:56.511326881Z         offset1 = 32
hass  | 2025-04-03T09:53:56.511336527Z         offset2 = 32
hass  | 2025-04-03T09:53:56.511346202Z         length = 0
hass  | 2025-04-03T09:53:56.511355945Z     header = Container: 
hass  | 2025-04-03T09:53:56.511365847Z         data = b"!1\x00 \x00\x00\x00\x00+\x0f\x98'\x00\x00c\xd4" (total 16)
hass  | 2025-04-03T09:53:56.511377568Z         value = Container: 
hass  | 2025-04-03T09:53:56.511387500Z             length = 32
hass  | 2025-04-03T09:53:56.511397419Z             unknown = 0
hass  | 2025-04-03T09:53:56.511407407Z             device_id = unhexlify('2b0f9827')
hass  | 2025-04-03T09:53:56.511417305Z             ts = 1970-01-01 07:05:56
hass  | 2025-04-03T09:53:56.511427105Z         offset1 = 0
hass  | 2025-04-03T09:53:56.511436846Z         offset2 = 16
hass  | 2025-04-03T09:53:56.511446489Z         length = 16
hass  | 2025-04-03T09:53:56.511456615Z     checksum = b'\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff' (total 16)
hass  | 2025-04-03T09:53:56.512812124Z 2025-04-03 11:53:56.511 DEBUG (SyncWorker_7) [miio.miioprotocol] Discovered 2b0f9827 with ts: 1970-01-01 07:05:56, token: b'ffffffffffffffffffffffffffffffff'
hass  | 2025-04-03T09:53:56.513089687Z 2025-04-03 11:53:56.512 DEBUG (SyncWorker_7) [miio.miioprotocol] 192.168.1.21:54321 >>: {'id': 1, 'method': 'miIO.info', 'params': []}
hass  | 2025-04-03T09:53:56.552708638Z 2025-04-03 11:53:56.551 DEBUG (SyncWorker_7) [miio.miioprotocol] 192.168.1.21:54321 (ts: 1970-01-01 07:05:56, id: 1) << {'id': 1, 'result': {'life': 25556, 'model': 'dreame.vacuum.r2228o', 'token': '49763443763446534e70476b50444336', 'ipflag': 1, 'miio_ver': '0.1.0', 'uid': 6394474349, 'uptime': 25565, 'mac': '70:C9:32:26:A0:0B', 'fw_ver': '4.3.9_3204', 'hw_ver': 'Linux', 'miio_client_ver': '4.3.9', 'VmPeak': 371900, 'VmSize': 371740, 'VmRSS': 2584, 'MemFree': 85044, 'ap': {'ssid': 'WonderLAN', 'bssid': 'D4:1A:D1:46:02:23', 'rssi': '-55', 'freq': 2447}, 'netif': {'localIp': '192.168.1.21', 'mask': '255.255.255.0', 'gw': '192.168.1.1'}, 'miio_times': [25556, 3, 0, 25552]}, 'exe_time': 2}
hass  | 2025-04-03T09:53:56.554665668Z 2025-04-03 11:53:56.552 INFO (SyncWorker_7) [custom_components.dreame_vacuum.dreame.device] Connected to device: dreame.vacuum.r2228o 4.3.9_3204
hass  | 2025-04-03T09:53:56.555105060Z 2025-04-03 11:53:56.553 DEBUG (SyncWorker_7) [miio.miioprotocol] 192.168.1.21:54321 >>: {'id': 2, 'method': 'get_properties', 'params': [{'did': '0', 'siid': 2, 'piid': 1}, {'did': '1', 'siid': 2, 'piid': 2}, {'did': '2', 'siid': 3, 'piid': 1}, {'did': '3', 'siid': 3, 'piid': 2}, {'did': '4', 'siid': 4, 'piid': 1}, {'did': '5', 'siid': 4, 'piid': 2}, {'did': '6', 'siid': 4, 'piid': 3}, {'did': '7', 'siid': 4, 'piid': 4}, {'did': '8', 'siid': 4, 'piid': 5}, {'did': '9', 'siid': 4, 'piid': 6}, {'did': '10', 'siid': 4, 'piid': 7}, {'did': '14', 'siid': 4, 'piid': 11}, {'did': '15', 'siid': 4, 'piid': 12}, {'did': '17', 'siid': 4, 'piid': 14}, {'did': '19', 'siid': 4, 'piid': 16}]}
hass  | 2025-04-03T09:53:56.574516896Z 2025-04-03 11:53:56.573 DEBUG (SyncWorker_7) [miio.miioprotocol] 192.168.1.21:54321 (ts: 1970-01-01 07:05:56, id: 2) << {'id': 2, 'result': [{'siid': 2, 'did': '0', 'piid': 1, 'value': 13, 'code': 0}, {'siid': 2, 'did': '1', 'piid': 2, 'value': 0, 'code': 0}, {'siid': 3, 'did': '2', 'piid': 1, 'value': 100, 'code': 0}, {'siid': 3, 'did': '3', 'piid': 2, 'value': 1, 'code': 0}, {'siid': 4, 'did': '4', 'piid': 1, 'value': 14, 'code': 0}, {'siid': 4, 'did': '5', 'piid': 2, 'value': 93, 'code': 0}, {'siid': 4, 'did': '6', 'piid': 3, 'value': 81, 'code': 0}, {'siid': 4, 'did': '7', 'piid': 4, 'value': 2, 'code': 0}, {'siid': 4, 'did': '8', 'piid': 5, 'value': 2, 'code': 0}, {'siid': 4, 'did': '9', 'piid': 6, 'value': 1, 'code': 0}, {'siid': 4, 'did': '10', 'piid': 7, 'value': 0, 'code': 0}, {'siid': 4, 'did': '14', 'piid': 11, 'value': 1, 'code': 0}, {'siid': 4, 'did': '15', 'piid': 12, 'value': 0, 'code': 0}, {'siid': 4, 'did': '17', 'piid': 14, 'value': 'R2228A38REU0194601', 'code': 0}, {'siid': 4, 'did': '19', 'piid': 16, 'value': 0, 'code': 0}], 'exe_time': 10}
hass  | 2025-04-03T09:53:56.575859275Z 2025-04-03 11:53:56.575 DEBUG (SyncWorker_7) [miio.miioprotocol] 192.168.1.21:54321 >>: {'id': 3, 'method': 'get_properties', 'params': [{'did': '20', 'siid': 4, 'piid': 17}, {'did': '21', 'siid': 4, 'piid': 18}, {'did': '22', 'siid': 4, 'piid': 19}, {'did': '23', 'siid': 4, 'piid': 20}, {'did': '24', 'siid': 4, 'piid': 21}, {'did': '25', 'siid': 4, 'piid': 22}, {'did': '26', 'siid': 4, 'piid': 23}, {'did': '27', 'siid': 4, 'piid': 24}, {'did': '28', 'siid': 4, 'piid': 25}, {'did': '29', 'siid': 4, 'piid': 26}, {'did': '30', 'siid': 4, 'piid': 27}, {'did': '31', 'siid': 4, 'piid': 28}, {'did': '32', 'siid': 4, 'piid': 29}, {'did': '33', 'siid': 4, 'piid': 30}, {'did': '34', 'siid': 4, 'piid': 31}]}
hass  | 2025-04-03T09:53:56.596032756Z 2025-04-03 11:53:56.595 DEBUG (SyncWorker_7) [miio.miioprotocol] 192.168.1.21:54321 (ts: 1970-01-01 07:05:56, id: 3) << {'id': 3, 'result': [{'siid': 4, 'did': '20', 'piid': 17, 'value': 0, 'code': 0}, {'siid': 4, 'did': '21', 'piid': 18, 'value': '', 'code': 0}, {'siid': 4, 'did': '22', 'piid': 19, 'value': 'matched', 'code': 0}, {'siid': 4, 'did': '23', 'piid': 20, 'value': 0, 'code': 0}, {'siid': 4, 'did': '24', 'piid': 21, 'value': 1, 'code': 0}, {'siid': 4, 'did': '25', 'piid': 22, 'value': 5, 'code': 0}, {'siid': 4, 'did': '26', 'piid': 23, 'value': 202242, 'code': 0}, {'siid': 4, 'did': '27', 'piid': 24, 'value': 1, 'code': 0}, {'siid': 4, 'did': '28', 'piid': 25, 'value': 0, 'code': 0}, {'siid': 4, 'did': '29', 'piid': 26, 'value': 0, 'code': 0}, {'siid': 4, 'did': '30', 'piid': 27, 'value': 1, 'code': 0}, {'siid': 4, 'did': '31', 'piid': 28, 'value': 2, 'code': 0}, {'siid': 4, 'did': '32', 'piid': 29, 'value': 0, 'code': 0}, {'siid': 4, 'did': '33', 'piid': 30, 'value': 0, 'code': 0}, {'siid': 4, 'did': '34', 'piid': 31, 'value': 0, 'code': 0}], 'exe_time': 11}
hass  | 2025-04-03T09:53:56.597414946Z 2025-04-03 11:53:56.596 DEBUG (SyncWorker_7) [miio.miioprotocol] 192.168.1.21:54321 >>: {'id': 4, 'method': 'get_properties', 'params': [{'did': '35', 'siid': 4, 'piid': 32}, {'did': '36', 'siid': 4, 'piid': 33}, {'did': '37', 'siid': 4, 'piid': 34}, {'did': '38', 'siid': 4, 'piid': 35}, {'did': '39', 'siid': 4, 'piid': 36}, {'did': '40', 'siid': 4, 'piid': 37}, {'did': '41', 'siid': 4, 'piid': 38}, {'did': '42', 'siid': 4, 'piid': 39}, {'did': '43', 'siid': 4, 'piid': 40}, {'did': '44', 'siid': 4, 'piid': 41}, {'did': '45', 'siid': 4, 'piid': 46}, {'did': '46', 'siid': 4, 'piid': 45}, {'did': '47', 'siid': 4, 'piid': 47}, {'did': '48', 'siid': 4, 'piid': 48}, {'did': '49', 'siid': 4, 'piid': 49}]}
hass  | 2025-04-03T09:53:56.622851971Z 2025-04-03 11:53:56.621 DEBUG (SyncWorker_7) [miio.miioprotocol] 192.168.1.21:54321 (ts: 1970-01-01 07:05:56, id: 4) << {'id': 4, 'result': [{'siid': 4, 'did': '35', 'piid': 32, 'code': -1}, {'siid': 4, 'did': '36', 'piid': 33, 'value': 0, 'code': 0}, {'siid': 4, 'did': '37', 'piid': 34, 'value': 1, 'code': 0}, {'siid': 4, 'did': '38', 'piid': 35, 'value': 101, 'code': 0}, {'siid': 4, 'did': '39', 'piid': 36, 'value': 2, 'code': 0}, {'siid': 4, 'did': '40', 'piid': 37, 'value': 1, 'code': 0}, {'siid': 4, 'did': '41', 'piid': 38, 'value': 0, 'code': 0}, {'siid': 4, 'did': '42', 'piid': 39, 'value': 0, 'code': 0}, {'siid': 4, 'did': '43', 'piid': 40, 'value': 2, 'code': 0}, {'siid': 4, 'did': '44', 'piid': 41, 'value': 0, 'code': 0}, {'siid': 4, 'did': '45', 'piid': 46, 'value': 2, 'code': 0}, {'siid': 4, 'did': '46', 'piid': 45, 'value': 0, 'code': 0}, {'siid': 4, 'did': '47', 'piid': 47, 'value': 0, 'code': 0}, {'siid': 4, 'did': '48', 'piid': 48, 'value': '[]', 'code': 0}, {'siid': 4, 'did': '49', 'piid': 49, 'value': 0, 'code': 0}], 'exe_time': 11}
hass  | 2025-04-03T09:53:56.623213869Z 2025-04-03 11:53:56.622 DEBUG (SyncWorker_7) [miio.miioprotocol] 192.168.1.21:54321 >>: {'id': 5, 'method': 'get_properties', 'params': [{'did': '50', 'siid': 4, 'piid': 50}, {'did': '51', 'siid': 4, 'piid': 51}, {'did': '52', 'siid': 4, 'piid': 52}, {'did': '53', 'siid': 4, 'piid': 53}, {'did': '54', 'siid': 5, 'piid': 1}, {'did': '55', 'siid': 5, 'piid': 2}, {'did': '56', 'siid': 5, 'piid': 3}, {'did': '57', 'siid': 5, 'piid': 4}, {'did': '64', 'siid': 6, 'piid': 7}, {'did': '65', 'siid': 6, 'piid': 8}, {'did': '66', 'siid': 6, 'piid': 9}, {'did': '70', 'siid': 6, 'piid': 14}, {'did': '72', 'siid': 7, 'piid': 1}, {'did': '73', 'siid': 7, 'piid': 2}, {'did': '76', 'siid': 8, 'piid': 1}]}
hass  | 2025-04-03T09:53:58.625351063Z 2025-04-03 11:53:58.624 DEBUG (SyncWorker_7) [miio.miioprotocol] Retrying with incremented id, retries left: 1
hass  | 2025-04-03T09:53:58.629938097Z 2025-04-03 11:53:58.628 DEBUG (SyncWorker_7) [miio.miioprotocol] Got a response: Container: 
hass  | 2025-04-03T09:53:58.629983676Z     data = Container: 
hass  | 2025-04-03T09:53:58.630027561Z         data = b'' (total 0)
hass  | 2025-04-03T09:53:58.630038936Z         value = b'' (total 0)
hass  | 2025-04-03T09:53:58.630049050Z         offset1 = 32
hass  | 2025-04-03T09:53:58.630059265Z         offset2 = 32
hass  | 2025-04-03T09:53:58.630090666Z         length = 0
hass  | 2025-04-03T09:53:58.630101218Z     header = Container: 
hass  | 2025-04-03T09:53:58.630111357Z         data = b"!1\x00 \x00\x00\x00\x00+\x0f\x98'\x00\x00c\xd6" (total 16)
hass  | 2025-04-03T09:53:58.630123174Z         value = Container: 
hass  | 2025-04-03T09:53:58.630133111Z             length = 32
hass  | 2025-04-03T09:53:58.630142894Z             unknown = 0
hass  | 2025-04-03T09:53:58.630152730Z             device_id = unhexlify('2b0f9827')
hass  | 2025-04-03T09:53:58.630162732Z             ts = 1970-01-01 07:05:58
hass  | 2025-04-03T09:53:58.630172806Z         offset1 = 0
hass  | 2025-04-03T09:53:58.630182700Z         offset2 = 16
hass  | 2025-04-03T09:53:58.630192466Z         length = 16
hass  | 2025-04-03T09:53:58.630202748Z     checksum = b'\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff' (total 16)
hass  | 2025-04-03T09:53:58.631774663Z 2025-04-03 11:53:58.629 DEBUG (SyncWorker_7) [miio.miioprotocol] Discovered 2b0f9827 with ts: 1970-01-01 07:05:58, token: b'ffffffffffffffffffffffffffffffff'
hass  | 2025-04-03T09:53:58.631801803Z 2025-04-03 11:53:58.630 DEBUG (SyncWorker_7) [miio.miioprotocol] 192.168.1.21:54321 >>: {'id': 106, 'method': 'get_properties', 'params': [{'did': '50', 'siid': 4, 'piid': 50}, {'did': '51', 'siid': 4, 'piid': 51}, {'did': '52', 'siid': 4, 'piid': 52}, {'did': '53', 'siid': 4, 'piid': 53}, {'did': '54', 'siid': 5, 'piid': 1}, {'did': '55', 'siid': 5, 'piid': 2}, {'did': '56', 'siid': 5, 'piid': 3}, {'did': '57', 'siid': 5, 'piid': 4}, {'did': '64', 'siid': 6, 'piid': 7}, {'did': '65', 'siid': 6, 'piid': 8}, {'did': '66', 'siid': 6, 'piid': 9}, {'did': '70', 'siid': 6, 'piid': 14}, {'did': '72', 'siid': 7, 'piid': 1}, {'did': '73', 'siid': 7, 'piid': 2}, {'did': '76', 'siid': 8, 'piid': 1}]}
hass  | 2025-04-03T09:54:00.633774899Z 2025-04-03 11:54:00.632 ERROR (SyncWorker_7) [miio.miioprotocol] Got error when receiving: timed out
hass  | 2025-04-03T09:54:00.640662119Z 2025-04-03 11:54:00.639 WARNING (MainThread) [custom_components.dreame_vacuum] Integration start failed: Traceback (most recent call last):
hass  | 2025-04-03T09:54:00.640676766Z   File "/usr/local/lib/python3.13/site-packages/miio/miioprotocol.py", line 193, in send
hass  | 2025-04-03T09:54:00.640681135Z     data, addr = s.recvfrom(4096)
hass  | 2025-04-03T09:54:00.640684559Z                  ~~~~~~~~~~^^^^^^
hass  | 2025-04-03T09:54:00.640687845Z TimeoutError: timed out
hass  | 2025-04-03T09:54:00.640691109Z 
hass  | 2025-04-03T09:54:00.640694558Z During handling of the above exception, another exception occurred:
hass  | 2025-04-03T09:54:00.640698070Z 
hass  | 2025-04-03T09:54:00.640701383Z Traceback (most recent call last):
hass  | 2025-04-03T09:54:00.640704737Z   File "/usr/local/lib/python3.13/site-packages/miio/miioprotocol.py", line 193, in send
hass  | 2025-04-03T09:54:00.640708229Z     data, addr = s.recvfrom(4096)
hass  | 2025-04-03T09:54:00.640711470Z                  ~~~~~~~~~~^^^^^^
hass  | 2025-04-03T09:54:00.640714723Z TimeoutError: timed out
hass  | 2025-04-03T09:54:00.640729771Z 
hass  | 2025-04-03T09:54:00.640733341Z The above exception was the direct cause of the following exception:
hass  | 2025-04-03T09:54:00.640736861Z 
hass  | 2025-04-03T09:54:00.640740040Z Traceback (most recent call last):
hass  | 2025-04-03T09:54:00.640743407Z   File "/config/custom_components/dreame_vacuum/coordinator.py", line 326, in _async_update_data
hass  | 2025-04-03T09:54:00.640747129Z     await self.hass.async_add_executor_job(self.device.update)
hass  | 2025-04-03T09:54:00.640750546Z   File "/usr/local/lib/python3.13/concurrent/futures/thread.py", line 59, in run
hass  | 2025-04-03T09:54:00.640753974Z     result = self.fn(*self.args, **self.kwargs)
hass  | 2025-04-03T09:54:00.640757304Z   File "/config/custom_components/dreame_vacuum/dreame/device.py", line 996, in update
hass  | 2025-04-03T09:54:00.640760752Z     self.connect_device()
hass  | 2025-04-03T09:54:00.640764046Z     ~~~~~~~~~~~~~~~~~~~^^
hass  | 2025-04-03T09:54:00.640767282Z   File "/config/custom_components/dreame_vacuum/dreame/device.py", line 733, in connect_device
hass  | 2025-04-03T09:54:00.640770776Z     self._request_properties()
hass  | 2025-04-03T09:54:00.640774036Z     ~~~~~~~~~~~~~~~~~~~~~~~~^^
hass  | 2025-04-03T09:54:00.640777304Z   File "/config/custom_components/dreame_vacuum/dreame/device.py", line 262, in _request_properties
hass  | 2025-04-03T09:54:00.640780817Z     result = self._protocol.get_properties(props[:15])
hass  | 2025-04-03T09:54:00.640784217Z   File "/config/custom_components/dreame_vacuum/dreame/protocol.py", line 541, in get_properties
hass  | 2025-04-03T09:54:00.640787763Z     return self.send("get_properties", parameters=parameters, retry_count=retry_count)
hass  | 2025-04-03T09:54:00.640791357Z            ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
hass  | 2025-04-03T09:54:00.640794761Z   File "/config/custom_components/dreame_vacuum/dreame/protocol.py", line 534, in send
hass  | 2025-04-03T09:54:00.640798235Z     return self.device.send(method, parameters=parameters, retry_count=retry_count)
hass  | 2025-04-03T09:54:00.640801616Z            ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
hass  | 2025-04-03T09:54:00.640805587Z   File "/usr/local/lib/python3.13/site-packages/miio/miioprotocol.py", line 233, in send
hass  | 2025-04-03T09:54:00.640809038Z     return self.send(
hass  | 2025-04-03T09:54:00.640812297Z            ~~~~~~~~~^
hass  | 2025-04-03T09:54:00.640815607Z         command,
hass  | 2025-04-03T09:54:00.640818906Z         ^^^^^^^^
hass  | 2025-04-03T09:54:00.640822170Z     ...<2 lines>...
hass  | 2025-04-03T09:54:00.640825621Z         extra_parameters=extra_parameters,
hass  | 2025-04-03T09:54:00.640828945Z         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
hass  | 2025-04-03T09:54:00.640832258Z     )
hass  | 2025-04-03T09:54:00.640835495Z     ^
hass  | 2025-04-03T09:54:00.640838726Z   File "/usr/local/lib/python3.13/site-packages/miio/miioprotocol.py", line 241, in send
hass  | 2025-04-03T09:54:00.640842174Z     raise DeviceException("No response from the device") from ex
hass  | 2025-04-03T09:54:00.640848970Z miio.exceptions.DeviceException: No response from the device
hass  | 2025-04-03T09:54:00.640852434Z 
hass  | 2025-04-03T09:54:00.640855739Z 2025-04-03 11:54:00.639 INFO (MainThread) [custom_components.dreame_vacuum.dreame.device] Disconnect
hass  | 2025-04-03T09:54:00.640859345Z 2025-04-03 11:54:00.640 DEBUG (MainThread) [custom_components.dreame_vacuum] Finished fetching dreame_vacuum data in 4.910 seconds (success: False)

Thanks for the help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working question Further information is requested
Projects
None yet
Development

No branches or pull requests

7 participants