ClusterM / skykettle-ha

Redmond SkyKettle integration for Home Assistant
GNU General Public License v3.0
94 stars 15 forks source link

Полностью отвалился чайник Redmond RK-M216S после обновления до 2024.6.0 #62

Open kai-zer-ru opened 5 months ago

kai-zer-ru commented 5 months ago

Несколько дней назад чайник перестал откликаться полностью. Все сенсоры и сущности не доступны.

Система установлена на ProxMox:

Core - 2024.6.0
Supervisor - 2024.06.0
Operating System - 12.3
Пользовательский интерфейс - 20240605.0

В логах ошибка

2024-06-07 14:22:19.258 DEBUG (MainThread) [custom_components.skykettle] Unloading
2024-06-07 14:22:19.309 WARNING (SyncWorker_3) [py.warnings] /config/custom_components/skykettle/kettle_connection.py:285: RuntimeWarning: coroutine 'KettleConnection._disconnect' was never awaited
  self._disconnect()

2024-06-07 14:22:19.309 INFO (SyncWorker_3) [custom_components.skykettle.kettle_connection] Stopped.
2024-06-07 14:22:19.319 DEBUG (MainThread) [custom_components.skykettle] Entry unloaded
2024-06-07 14:22:19.320 INFO (MainThread) [custom_components.skykettle.skykettle] Kettle model: RK-M216S
2024-06-07 14:22:22.402 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Updating
2024-06-07 14:22:22.402 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Connecting to the Kettle...
2024-06-07 14:22:22.407 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Connected to the Kettle
2024-06-07 14:22:22.409 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Subscribed to RX
2024-06-07 14:22:22.409 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Writing command ff, data: [c8 4f 66 ba d3 52 f4 b5]
2024-06-07 14:22:22.517 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Received: 02
2024-06-07 14:22:22.518 DEBUG (MainThread) [custom_components.skykettle.skykettle] Auth: ok=True
2024-06-07 14:22:22.518 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Auth ok
2024-06-07 14:22:22.518 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Writing command 01, data: []
2024-06-07 14:22:22.653 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Received: 04 15
2024-06-07 14:22:22.653 DEBUG (MainThread) [custom_components.skykettle.skykettle] Version: 4.21
2024-06-07 14:22:22.653 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Writing command 6e, data: [1e a7 62 66 80 70 00 00]
2024-06-07 14:22:22.835 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Received: 00
2024-06-07 14:22:22.836 DEBUG (MainThread) [custom_components.skykettle.skykettle] Writed time=1717741342 (2024-06-07 14:22:22), offset=28800 (GMT+8.00)
2024-06-07 14:22:22.836 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Writing command 06, data: []
2024-06-07 14:22:22.969 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Received: 00 00 00 00 01 3c 1e 00 00 00 00 00 00 82 00 00
2024-06-07 14:22:22.969 DEBUG (MainThread) [custom_components.skykettle.skykettle] Status: mode=0 (Boil), is_on=False, target_temp=0, current_temp=60, sound_enabled=True, color_interval=30, boil_time=2
2024-06-07 14:22:22.969 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Writing command 47, data: [00]
2024-06-07 14:22:23.193 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Received: 00 00 4d 05 00 00 3d 03 00 00 52 00 00 00 00 00
2024-06-07 14:22:23.193 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Writing command 50, data: [00]
2024-06-07 14:22:23.328 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Received: 00 00 00 0e 00 00 00 00 00 00 00 00 00 00 00 00
2024-06-07 14:22:23.328 DEBUG (MainThread) [custom_components.skykettle.skykettle] Stats: ontime=0:22:37, energy_wh=829, user_on_count=14, heater_on_count=82
2024-06-07 14:22:23.329 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Writing command 35, data: [00]
2024-06-07 14:22:23.464 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Received: 00 00 01 00 00
2024-06-07 14:22:23.464 DEBUG (MainThread) [custom_components.skykettle.skykettle] Light with type=0 (boiling_light) is on
2024-06-07 14:22:23.464 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Writing command 35, data: [c8]
2024-06-07 14:22:23.598 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Received: c8 00 00 c8 00
2024-06-07 14:22:23.598 DEBUG (MainThread) [custom_components.skykettle.skykettle] Light with type=200 (sync_light) is off
2024-06-07 14:22:23.598 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Writing command 30, data: []
2024-06-07 14:22:23.778 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Received: 08 00
2024-06-07 14:22:23.778 DEBUG (MainThread) [custom_components.skykettle.skykettle] Lamp auto off hours=8
2024-06-07 14:22:23.778 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Writing command 52, data: [00]
2024-06-07 14:22:23.913 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Received: 00 00 30 00 00 00 00 00 00 00 00 00 00 00 00 00
2024-06-07 14:22:23.913 DEBUG (MainThread) [custom_components.skykettle.skykettle] Fresh water notification is off, unknown1=48, water_freshness_hours=0
2024-06-07 14:22:23.913 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Writing command 33, data: [00]
2024-06-07 14:22:24.093 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Received: 00 23 ff 00 00 ff 46 ff 00 ff 00 64 ff ff 00 00
2024-06-07 14:22:24.093 DEBUG (MainThread) [custom_components.skykettle.skykettle] ColorsSet(light_type=0, temp_low=35, brightness=255, r_low=0, g_low=0, b_low=255, temp_mid=70, unknown1=255, r_mid=0, g_mid=255, b_mid=0, temp_high=100, unknown2=255, r_high=255, g_high=0, b_high=0)
2024-06-07 14:22:24.093 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Writing command 33, data: [01]
2024-06-07 14:22:24.228 DEBUG (MainThread) [custom_components.skykettle.kettle_connection] Received: 01 00 ff 00 00 ff 32 ff 88 ff 00 64 ff ff 00 00
2024-06-07 14:22:24.228 DEBUG (MainThread) [custom_components.skykettle.skykettle] ColorsSet(light_type=1, temp_low=0, brightness=255, r_low=0, g_low=0, b_low=255, temp_mid=50, unknown1=255, r_mid=136, g_mid=255, b_mid=0, temp_high=100, unknown2=255, r_high=255, g_high=0, b_high=0)
2024-06-07 14:22:24.230 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved (None)
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/frame.py", line 143, in report
    integration_frame = get_integration_frame(
                        ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/frame.py", line 107, in get_integration_frame
    raise MissingIntegrationFrame
homeassistant.helpers.frame.MissingIntegrationFrame

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

Traceback (most recent call last):
  File "/config/custom_components/skykettle/__init__.py", line 47, in poll
    await hass.async_add_executor_job(async_dispatcher_send, hass, DISPATCHER_UPDATE)
  File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/dispatcher.py", line 214, in async_dispatcher_send
    hass.verify_event_loop_thread("async_dispatcher_send")
  File "/usr/src/homeassistant/homeassistant/core.py", line 447, in verify_event_loop_thread
    frame.report(
  File "/usr/src/homeassistant/homeassistant/helpers/frame.py", line 149, in report
    raise RuntimeError(msg) from err
RuntimeError: Detected code that calls async_dispatcher_send from a thread other than the event loop, which may cause Home Assistant to crash or data to corrupt. For more information, see https://developers.home-assistant.io/docs/asyncio_thread_safety/#async_dispatcher_send. Please report this issue.

Изначально чайник начал отваливаться по утрам. У меня стоит автоматизация подогревать в 7 утра когда просыпаемся. Лечилось перетыканием чайника с подставки. Вчера вообще отвалился полностью, нет реакции ни на что. Удалял интеграцию, удалял BlueTooth, пробовал другой свисток, разницы нет. Все остальные устройства bluetooth работают отлично. Пробовал отключать чайник от HomeAssistant и добавлять в родное приложение - всё работает отлично. Вернул назад - ничего не работает. Расстояние между свистком и чайником около метра без преград. В таком положении уже около года стоит, и проблем не было.

AUkkers commented 5 months ago

Похоже аналогичная проблема ! При перезапуске в логах: Регистратор: homeassistant Источник: helpers/frame.py:149 Первое сообщение: 11:48:56 (1 сообщений) Последнее сообщение: 11:48:56

Error doing job: Task exception was never retrieved (None) Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/frame.py", line 143, in report integration_frame = get_integration_frame( ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/frame.py", line 107, in get_integration_frame raise MissingIntegrationFrame homeassistant.helpers.frame.MissingIntegrationFrame

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

Traceback (most recent call last): File "/config/custom_components/skykettle/init.py", line 47, in poll await hass.async_add_executor_job(async_dispatcher_send, hass, DISPATCHER_UPDATE) File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run result = self.fn(*self.args, **self.kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/dispatcher.py", line 214, in async_dispatcher_send hass.verify_event_loop_thread("async_dispatcher_send") File "/usr/src/homeassistant/homeassistant/core.py", line 447, in verify_event_loop_thread frame.report( File "/usr/src/homeassistant/homeassistant/helpers/frame.py", line 149, in report raise RuntimeError(msg) from err RuntimeError: Detected code that calls async_dispatcher_send from a thread other than the event loop, which may cause Home Assistant to crash or data to corrupt. For more information, see https://developers.home-assistant.io/docs/asyncio_thread_safety/#async_dispatcher_send. Please report this issue.

При просмотре устройства в интеграции ни один сенсор ни один объект не доступны (

kai-zer-ru commented 5 months ago

@AUkkers мне помог только откат на 2024.5.4

AUkkers commented 5 months ago

@AUkkers мне помог только откат на 2024.5.4

Че то откатываться ради чайника как то не очень хотелось бы (

kai-zer-ru commented 5 months ago

@AUkkers может в ближайшее время допилят интеграцию, и будет работать. Вообще обновляться на новую версию HA в первые 2-3 недели нет нужды, потому что могут случаться такие казусы

Olixandyr commented 5 months ago

Подтверждаю, чайник RK-G200S, проблема точно такая же, после обновления отвалился чайник, пробовал поднять новый Home Assistant на x86-64 (HaOS на старом ноутбуке), чайник коннектится, но недоступен. Логи точно такие же как в старт посте.

ClusterM commented 5 months ago

Попробуйте сейчас версию из master, пожалуйста: image

kai-zer-ru commented 5 months ago

@ClusterM работает. Огромное спасибо

ClusterM commented 5 months ago

Зарелизил версию v2.3. Огромное спасибо Toxicity1337 за помощь.

asporykhin commented 5 months ago

Подтверждаю, версия 2.3 работает! Была проблема с таким же чайником, как у топикстартера. @ClusterM большое спасибо!

RJSDevel commented 3 months ago

Не спаривается Redmond RK-M216S на версии 2.5

Steel00 commented 3 weeks ago

Не спаривается Redmond RK-M216S на версии 2.5

Получилось спарить?