meross-homeassistant: Devices becoming unavailable often
Describe the bug This happens at least once per day breaking all HA integrations for meross devices. Looks to be timing out on some devices but not sure why all of them go offline and the only way to bring them back is to restart HA - can this be updated for them to just come back online without reboot (like tuya integration for example)
Your environment HomeAssistant version: – 0.118.5 – Hassio Version (if applicable): – 5.7 – Hardware environment: – pi4 –
Logs taken when the issue happened
2020-12-12 16:24:16 ERROR (MainThread) [meross_iot.manager] Timeout occurred while waiting a response for message b'{"header": {"from": "/app/63513-5c8f2ad00fe8972ec8173244740c48e7/subscribe", "messageId": "c1cd3e84bc6c69e616a4d8c945d182e3", "method": "GET", "namespace": "Appliance.Control.Electricity", "payloadVersion": 1, "sign": "dadd08c2ab5e670fc2ad14ca249743fc", "timestamp": 1607790252, "triggerSrc": "Android"}, "payload": {"channel": 0}}' sent to device uuid 1801304134135025130834298f11356b. Timeout was: 5 seconds.
2020-12-12 16:24:16 ERROR (MainThread) [custom_components.meross_cloud.sensor] Error occurred.
-------------------------------------
Component version: 0.4.1.0rc7
Device info:
Name: Garden lights
UUID: 1801304134135025130834298f11356b
Type: mss310
HW Version: 1.0.0
FW Version: 1.1.18
Error Message: "An exception occurred"
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/meross_iot/manager.py", line 630, in _async_send_and_wait_ack
return await asyncio.wait_for(future, timeout, loop=self._loop)
File "/usr/local/lib/python3.8/asyncio/tasks.py", line 498, in wait_for
raise exceptions.TimeoutError()
asyncio.exceptions.TimeoutError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/config/custom_components/meross_cloud/sensor.py", line 322, in async_update
await self._device.async_get_instant_metrics(channel=self._channel_id)
File "/usr/local/lib/python3.8/site-packages/meross_iot/controller/mixins/electricity.py", line 38, in async_get_instant_metrics
result = await self._execute_command(method="GET",
File "/usr/local/lib/python3.8/site-packages/meross_iot/controller/device.py", line 227, in _execute_command
return await self._manager.async_execute_cmd(destination_device_uuid=self.uuid,
File "/usr/local/lib/python3.8/site-packages/meross_iot/manager.py", line 621, in async_execute_cmd
response = await self._async_send_and_wait_ack(future=fut,
File "/usr/local/lib/python3.8/site-packages/meross_iot/manager.py", line 634, in _async_send_and_wait_ack
raise CommandTimeoutError()
meross_iot.model.exception.CommandTimeoutError
2020-12-12 16:24:22 WARNING (MainThread) [custom_components.meross_cloud.sensor] Device Garden lights (mss310) - power sensor (W, 0) reported online event.
2020-12-12 16:24:22 WARNING (MainThread) [custom_components.meross_cloud.sensor] Device Garden lights (mss310) - power sensor (A, 0) reported online event.
2020-12-12 16:24:22 WARNING (MainThread) [custom_components.meross_cloud.sensor] Device Garden lights (mss310) - power sensor (V, 0) reported online event.
2020-12-12 16:24:22 WARNING (MainThread) [custom_components.meross_cloud.switch] Device Garden lights (mss310) - Main channel reported online event.
2020-12-12 16:24:23 WARNING (MainThread) [custom_components.meross_cloud.sensor] Skipping device <Entity Garden lights (mss310) - power sensor (W, 0): 0.0> as it was already added to registry once.
2020-12-12 16:24:23 WARNING (MainThread) [custom_components.meross_cloud.sensor] Skipping device <Entity Garden lights (mss310) - power sensor (A, 0): 0.0> as it was already added to registry once.
2020-12-12 16:24:23 WARNING (MainThread) [custom_components.meross_cloud.sensor] Skipping device <Entity Garden lights (mss310) - power sensor (V, 0): 225.6> as it was already added to registry once.
2020-12-12 16:24:27 ERROR (MainThread) [meross_iot.manager] Timeout occurred while waiting a response for message b'{"header": {"from": "/app/63513-5c8f2ad00fe8972ec8173244740c48e7/subscribe", "messageId": "ee291ec7fd6a85571f53e868e2bc95c4", "method": "GET", "namespace": "Appliance.Control.Electricity", "payloadVersion": 1, "sign": "196d4eeef16b1e5a05c64ff92dc02e32", "timestamp": 1607790263, "triggerSrc": "Android"}, "payload": {"channel": 0}}' sent to device uuid 1801304134135025130834298f11356b. Timeout was: 5 seconds.
2020-12-12 16:24:27 ERROR (MainThread) [custom_components.meross_cloud.sensor] Error occurred.
-------------------------------------
Component version: 0.4.1.0rc7
Device info:
Name: Garden lights
UUID: 1801304134135025130834298f11356b
Type: mss310
HW Version: 1.0.0
FW Version: 1.1.18
Error Message: "An exception occurred"
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/meross_iot/manager.py", line 630, in _async_send_and_wait_ack
return await asyncio.wait_for(future, timeout, loop=self._loop)
File "/usr/local/lib/python3.8/asyncio/tasks.py", line 498, in wait_for
raise exceptions.TimeoutError()
asyncio.exceptions.TimeoutError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/config/custom_components/meross_cloud/sensor.py", line 288, in async_update
await self._device.async_get_instant_metrics(channel=self._channel_id)
File "/usr/local/lib/python3.8/site-packages/meross_iot/controller/mixins/electricity.py", line 38, in async_get_instant_metrics
result = await self._execute_command(method="GET",
File "/usr/local/lib/python3.8/site-packages/meross_iot/controller/device.py", line 227, in _execute_command
return await self._manager.async_execute_cmd(destination_device_uuid=self.uuid,
File "/usr/local/lib/python3.8/site-packages/meross_iot/manager.py", line 621, in async_execute_cmd
response = await self._async_send_and_wait_ack(future=fut,
File "/usr/local/lib/python3.8/site-packages/meross_iot/manager.py", line 634, in _async_send_and_wait_ack
raise CommandTimeoutError()
meross_iot.model.exception.CommandTimeoutError
2020-12-12 16:24:27 ERROR (MainThread) [meross_iot.manager] Timeout occurred while waiting a response for message b'{"header": {"from": "/app/63513-5c8f2ad00fe8972ec8173244740c48e7/subscribe", "messageId": "c99a7e3b14afc60de85572925decf9c7", "method": "GET", "namespace": "Appliance.System.All", "payloadVersion": 1, "sign": "94d1125f5065333650611687a929a8be", "timestamp": 1607790263, "triggerSrc": "Android"}, "payload": {}}' sent to device uuid 1801304134135025130834298f11356b. Timeout was: 5 seconds.
2020-12-12 16:24:27 ERROR (MainThread) [custom_components.meross_cloud.switch] Error occurred.
-------------------------------------
Component version: 0.4.1.0rc7
Device info:
Name: Garden lights
UUID: 1801304134135025130834298f11356b
Type: mss310
HW Version: 1.0.0
FW Version: 1.1.18
Error Message: "An exception occurred"
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/meross_iot/manager.py", line 630, in _async_send_and_wait_ack
return await asyncio.wait_for(future, timeout, loop=self._loop)
File "/usr/local/lib/python3.8/asyncio/tasks.py", line 498, in wait_for
raise exceptions.TimeoutError()
asyncio.exceptions.TimeoutError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/config/custom_components/meross_cloud/switch.py", line 57, in async_update
await self._device.async_update()
File "/usr/local/lib/python3.8/site-packages/meross_iot/controller/mixins/system.py", line 21, in async_update
result = await self._execute_command(method="GET",
File "/usr/local/lib/python3.8/site-packages/meross_iot/controller/device.py", line 227, in _execute_command
return await self._manager.async_execute_cmd(destination_device_uuid=self.uuid,
File "/usr/local/lib/python3.8/site-packages/meross_iot/manager.py", line 621, in async_execute_cmd
response = await self._async_send_and_wait_ack(future=fut,
File "/usr/local/lib/python3.8/site-packages/meross_iot/manager.py", line 634, in _async_send_and_wait_ack
raise CommandTimeoutError()
meross_iot.model.exception.CommandTimeoutError
About this issue
- Original URL
- State: closed
- Created 4 years ago
- Reactions: 3
- Comments: 52 (1 by maintainers)
Yes, they do. Tested and confirmed.
Same issue here.
UPDATE: @Florian-Schmidt that workaround may have worked. Since implementing it, I’ve yet to have my devices become and remain unavailable. In fact, they went offline 3 hours ago and the automations seem to have brought them back. I’ll keep an eye on this for a while and report back.
This is something I would like to test today when I get back to the computer
UPDATE: since I have somehow piggy-backed on this thread, I am moving my comments back to https://github.com/albertogeniola/MerossIot/issues/1
same issue here. I have only 6 light switches and most of the time 1-2 of them are unavailable. I hate Meross and my target is to replace them in the next months. I feel is better to throw them in the garbage instead of giving them as a gift. (Nothing to do with the fine work here)