DavidConnack/xiaomi_vacuum

Connection with robot randomly drops

igorgoc opened this issue · 2 comments

Hi, I am very happy with your custom component. What I notice is random errors in "core" log file :

2021-09-14 03:15:13 ERROR (SyncWorker_10) [custom_components.xiaomi_vacuum.miio.device] Unable to request properties [{'did': 'battery', 'siid': 2, 'piid': 1}, {'did': 'state', 'siid': 2, 'piid': 2}, {'did': 'error', 'siid': 3, 'piid': 1}, {'did': 'status', 'siid': 3, 'piid': 2}, {'did': 'brush_left_time', 'siid': 26, 'piid': 1}, {'did': 'brush_life_level', 'siid': 26, 'piid': 2}, {'did': 'filter_life_level', 'siid': 27, 'piid': 1}, {'did': 'filter_left_time', 'siid': 27, 'piid': 2}, {'did': 'brush_left_time2', 'siid': 28, 'piid': 1}, {'did': 'brush_life_level2', 'siid': 28, 'piid': 2}, {'did': 'operating_mode', 'siid': 18, 'piid': 1}, {'did': 'area', 'siid': 18, 'piid': 3}, {'did': 'timer', 'siid': 18, 'piid': 2}, {'did': 'fan_speed', 'siid': 18, 'piid': 6}]
2021-09-14 03:15:17 ERROR (SyncWorker_10) [custom_components.xiaomi_vacuum.miio.device] Unable to request properties [{'did': 'last_clean', 'siid': 18, 'piid': 13}, {'did': 'total_clean_count', 'siid': 18, 'piid': 14}, {'did': 'total_area', 'siid': 18, 'piid': 15}, {'did': 'total_log_start', 'siid': 18, 'piid': 16}, {'did': 'button_led', 'siid': 18, 'piid': 17}, {'did': 'clean_success', 'siid': 18, 'piid': 18}, {'did': 'water_level', 'siid': 18, 'piid': 20}, {'did': 'life_sieve', 'siid': 19, 'piid': 1}, {'did': 'life_brush_side', 'siid': 19, 'piid': 2}, {'did': 'life_brush_main', 'siid': 19, 'piid': 3}, {'did': 'dnd_enabled', 'siid': 20, 'piid': 1}, {'did': 'dnd_start_time', 'siid': 20, 'piid': 2}, {'did': 'dnd_stop_time', 'siid': 20, 'piid': 3}, {'did': 'map_view', 'siid': 23, 'piid': 1}]
2021-09-14 03:15:19 WARNING (MainThread) [homeassistant.helpers.entity] Update of vacuum.vacuum_cleaner is taking over 10 seconds
2021-09-14 03:15:21 ERROR (SyncWorker_10) [custom_components.xiaomi_vacuum.miio.device] Unable to request properties [{'did': 'audio_volume', 'siid': 24, 'piid': 1}, {'did': 'audio_language', 'siid': 24, 'piid': 3}, {'did': 'timezone', 'siid': 25, 'piid': 1}]
2021-09-14 03:15:33 ERROR (SyncWorker_49) [custom_components.xiaomi_vacuum.miio.device] Unable to request properties [{'did': 'battery', 'siid': 2, 'piid': 1}, {'did': 'state', 'siid': 2, 'piid': 2}, {'did': 'error', 'siid': 3, 'piid': 1}, {'did': 'status', 'siid': 3, 'piid': 2}, {'did': 'brush_left_time', 'siid': 26, 'piid': 1}, {'did': 'brush_life_level', 'siid': 26, 'piid': 2}, {'did': 'filter_life_level', 'siid': 27, 'piid': 1}, {'did': 'filter_left_time', 'siid': 27, 'piid': 2}, {'did': 'brush_left_time2', 'siid': 28, 'piid': 1}, {'did': 'brush_life_level2', 'siid': 28, 'piid': 2}, {'did': 'operating_mode', 'siid': 18, 'piid': 1}, {'did': 'area', 'siid': 18, 'piid': 3}, {'did': 'timer', 'siid': 18, 'piid': 2}, {'did': 'fan_speed', 'siid': 18, 'piid': 6}]
2021-09-14 03:15:37 ERROR (SyncWorker_49) [custom_components.xiaomi_vacuum.miio.device] Unable to request properties [{'did': 'last_clean', 'siid': 18, 'piid': 13}, {'did': 'total_clean_count', 'siid': 18, 'piid': 14}, {'did': 'total_area', 'siid': 18, 'piid': 15}, {'did': 'total_log_start', 'siid': 18, 'piid': 16}, {'did': 'button_led', 'siid': 18, 'piid': 17}, {'did': 'clean_success', 'siid': 18, 'piid': 18}, {'did': 'water_level', 'siid': 18, 'piid': 20}, {'did': 'life_sieve', 'siid': 19, 'piid': 1}, {'did': 'life_brush_side', 'siid': 19, 'piid': 2}, {'did': 'life_brush_main', 'siid': 19, 'piid': 3}, {'did': 'dnd_enabled', 'siid': 20, 'piid': 1}, {'did': 'dnd_start_time', 'siid': 20, 'piid': 2}, {'did': 'dnd_stop_time', 'siid': 20, 'piid': 3}, {'did': 'map_view', 'siid': 23, 'piid': 1}]
2021-09-14 07:46:40 WARNING (MainThread) [homeassistant.helpers.entity] Update of vacuum.vacuum_cleaner is taking over 10 seconds
2021-09-14 07:55:40 WARNING (MainThread) [homeassistant.helpers.entity] Update of vacuum.vacuum_cleaner is taking over 10 seconds
2021-09-14 07:59:40 WARNING (MainThread) [homeassistant.helpers.entity] Update of vacuum.vacuum_cleaner is taking over 10 seconds
2021-09-14 07:59:41 ERROR (SyncWorker_53) [custom_components.xiaomi_vacuum.miio.miioprotocol] Unable to discover a device at address 192.168.1.2
2021-09-14 07:59:41 ERROR (SyncWorker_53) [custom_components.xiaomi_vacuum.miio.device] Unable to request properties [{'did': 'last_clean', 'siid': 18, 'piid': 13}, {'did': 'total_clean_count', 'siid': 18, 'piid': 14}, {'did': 'total_area', 'siid': 18, 'piid': 15}, {'did': 'total_log_start', 'siid': 18, 'piid': 16}, {'did': 'button_led', 'siid': 18, 'piid': 17}, {'did': 'clean_success', 'siid': 18, 'piid': 18}, {'did': 'water_level', 'siid': 18, 'piid': 20}, {'did': 'life_sieve', 'siid': 19, 'piid': 1}, {'did': 'life_brush_side', 'siid': 19, 'piid': 2}, {'did': 'life_brush_main', 'siid': 19, 'piid': 3}, {'did': 'dnd_enabled', 'siid': 20, 'piid': 1}, {'did': 'dnd_start_time', 'siid': 20, 'piid': 2}, {'did': 'dnd_stop_time', 'siid': 20, 'piid': 3}, {'did': 'map_view', 'siid': 23, 'piid': 1}]
2021-09-14 07:59:46 ERROR (SyncWorker_53) [custom_components.xiaomi_vacuum.miio.miioprotocol] Unable to discover a device at address 192.168.1.2
2021-09-14 07:59:46 ERROR (SyncWorker_53) [custom_components.xiaomi_vacuum.miio.device] Unable to request properties [{'did': 'audio_volume', 'siid': 24, 'piid': 1}, {'did': 'audio_language', 'siid': 24, 'piid': 3}, {'did': 'timezone', 'siid': 25, 'piid': 1}]
2021-09-14 08:11:40 WARNING (MainThread) [homeassistant.helpers.entity] Update of vacuum.vacuum_cleaner is taking over 10 seconds
2021-09-14 08:11:40 ERROR (SyncWorker_51) [custom_components.xiaomi_vacuum.miio.miioprotocol] Unable to discover a device at address 192.168.1.2
2021-09-14 08:11:40 ERROR (SyncWorker_51) [custom_components.xiaomi_vacuum.miio.device] Unable to request properties [{'did': 'battery', 'siid': 2, 'piid': 1}, {'did': 'state', 'siid': 2, 'piid': 2}, {'did': 'error', 'siid': 3, 'piid': 1}, {'did': 'status', 'siid': 3, 'piid': 2}, {'did': 'brush_left_time', 'siid': 26, 'piid': 1}, {'did': 'brush_life_level', 'siid': 26, 'piid': 2}, {'did': 'filter_life_level', 'siid': 27, 'piid': 1}, {'did': 'filter_left_time', 'siid': 27, 'piid': 2}, {'did': 'brush_left_time2', 'siid': 28, 'piid': 1}, {'did': 'brush_life_level2', 'siid': 28, 'piid': 2}, {'did': 'operating_mode', 'siid': 18, 'piid': 1}, {'did': 'area', 'siid': 18, 'piid': 3}, {'did': 'timer', 'siid': 18, 'piid': 2}, {'did': 'fan_speed', 'siid': 18, 'piid': 6}]
2021-09-14 08:11:45 ERROR (SyncWorker_51) [custom_components.xiaomi_vacuum.miio.miioprotocol] Unable to discover a device at address 192.168.1.2
2021-09-14 08:11:45 ERROR (SyncWorker_51) [custom_components.xiaomi_vacuum.miio.device] Unable to request properties [{'did': 'last_clean', 'siid': 18, 'piid': 13}, {'did': 'total_clean_count', 'siid': 18, 'piid': 14}, {'did': 'total_area', 'siid': 18, 'piid': 15}, {'did': 'total_log_start', 'siid': 18, 'piid': 16}, {'did': 'button_led', 'siid': 18, 'piid': 17}, {'did': 'clean_success', 'siid': 18, 'piid': 18}, {'did': 'water_level', 'siid': 18, 'piid': 20}, {'did': 'life_sieve', 'siid': 19, 'piid': 1}, {'did': 'life_brush_side', 'siid': 19, 'piid': 2}, {'did': 'life_brush_main', 'siid': 19, 'piid': 3}, {'did': 'dnd_enabled', 'siid': 20, 'piid': 1}, {'did': 'dnd_start_time', 'siid': 20, 'piid': 2}, {'did': 'dnd_stop_time', 'siid': 20, 'piid': 3}, {'did': 'map_view', 'siid': 23, 'piid': 1}]

Anything to do maybe?

thanks

This happens when the communication between the vacuum and the component times out.
Could be fixed with some error handling and retries.
If you want to make a PR that would be break.

If you want to make a PR that would be break.

any advice how to do it, as I am not native programmer. thanks