Skip to content
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

Bluetooth адаптер становится недоступен #49

Closed
alexsudakov opened this issue Sep 7, 2023 · 26 comments · Fixed by #53
Closed

Bluetooth адаптер становится недоступен #49

alexsudakov opened this issue Sep 7, 2023 · 26 comments · Fixed by #53

Comments

@alexsudakov
Copy link

Добрый день. Интеграция работает примерно сутки, после чего в лог пишет, что не может соединиться с устройством. При этом сам адаптер bluetooth перестаёт работать, и оживает только после физического ребута rasbery. Готов все логи прислать, какие нужны :)

@ClusterM
Copy link
Owner

ClusterM commented Sep 8, 2023

Привет. Хм. Это больше похоже на аппаратную проблему самого адаптера.

@alexsudakov
Copy link
Author

Другая интеграция (Passive BLE monitor) работает без сбоев больше года, ничего не отваливалось. Так что вряд ли аппаратная проблема. В телеге в канале предположили, что может быть конфликт с этой интеграцией.

@ChapayTv
Copy link

ChapayTv commented Sep 8, 2023

После обновления Core HAOS на 2023.9.0 интеграция перестала корректно работать, все сущности недоступны

@alexsudakov
Copy link
Author

Добавил ещё один BT адаптер, интеграцию BLE Monitor перенастроил на неё. Добавил заново чайник. Устройство проработало 2 минуты, в лог пишет следующее:
Эта ошибка возникла в пользовательской интеграции.

Logger: py.warnings
Source: custom_components/skykettle/kettle_connection.py:109
Integration: SkyKettle (documentation, issues)
First occurred: 12:08:02 (1 occurrences)
Last logged: 12:08:02

/config/custom_components/skykettle/kettle_connection.py:109: RuntimeWarning: coroutine 'HaBleakClientWrapper.disconnect' was never awaited self._client.disconnect()

Эта ошибка возникла в пользовательской интеграции.

Logger: py.warnings
Source: custom_components/skykettle/kettle_connection.py:282
Integration: SkyKettle (documentation, issues)
First occurred: 12:08:12 (1 occurrences)
Last logged: 12:08:12

/config/custom_components/skykettle/kettle_connection.py:282: RuntimeWarning: coroutine 'KettleConnection._disconnect' was never awaited self._disconnect()

Logger: homeassistant
Source: components/bluetooth/util.py:78
First occurred: 9 сентября 2023 г. в 23:30:04 (2248 occurrences)
Last logged: 12:10:51

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/bluetooth/scanner.py", line 348, in _async_restart_scanner
await self._async_reset_adapter()
File "/usr/src/homeassistant/homeassistant/components/bluetooth/scanner.py", line 364, in _async_reset_adapter
result = await async_reset_adapter(self.adapter, self.mac_address)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/bluetooth/util.py", line 78, in async_reset_adapter
return await recover_adapter(adapter_id, mac_address)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/bluetooth_auto_recovery/recover.py", line 393, in recover_adapter
if adapter and await _power_cycle_adapter(adapter):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/bluetooth_auto_recovery/recover.py", line 468, in _power_cycle_adapter
return await _execute_reset(adapter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/bluetooth_auto_recovery/recover.py", line 554, in _execute_reset
power_state_before_reset = await adapter.get_powered()
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/bluetooth_auto_recovery/recover.py", line 265, in get_powered
response = await self.protocol.send("ReadControllerInformation", self.idx)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/bluetooth_auto_recovery/recover.py", line 153, in send
with asyncio_timeout(self.timeout):
TypeError: 'Timeout' object does not support the context manager protocol

Эта ошибка возникла в пользовательской интеграции.

Logger: custom_components.skykettle.kettle_connection
Source: custom_components/skykettle/kettle_connection.py:243
Integration: SkyKettle (documentation, issues)
First occurred: 12:08:11 (3 occurrences)
Last logged: 12:10:56

Can't update status, OSError: Receive timeout
Can't update status, BleakDBusError: [org.bluez.Error.NotConnected] Not Connected

@ArchelonU
Copy link

ArchelonU commented Sep 12, 2023

Аналогичная проблема, тоже проявилась после обновления HA 2023.9.0 и, к сожалению, после обновления на 2023.9.1 проблема осталась(
После отката до версии 2023.8.4 - снова работает нормально. В новых версиях поменялся внешний вид water heater dialog - чайником, конечно стало приятней пользоваться, но не долго :) И, похоже, если это продолжать игнорировать, на новой версии моя малинка (HA docker) вешается наглухо - видимо там что-то пухнет (утекает память?)

@LexMrack
Copy link

Не знаю у кого как, У меня стоит esp32-bluetooth-proxy на чайник (далеко от сервака). Работало всё прекрасно до сентября. Всё бы было ничего, но боюсь, редмонд виноват. Чайник при установке замечательно видится, но после интеграции все контролируемые параметры недоступны. Тоже самое происходит если подключить напрямую к телефону. Чайник есть, а управлять невозможно. Если на чайнике нажать нагрев - то в телефоне показывает, что чайник включился, но выключить по прежнему нельзя. Только вручную.

Тут 3 варианта:

  1. Редмонд запрограммировал искусственное старениу, что чайником невозможно управлять больше двух лет.
  2. В Редмонде, как я прочитал в какой то статье, переругались собственники, разделились и один из них требует лицензию на удаленное управление.
  3. Банально погорел блюпуп в чайнике или сбой прошивки.

Судя по симптомам, больше подходят пункты 1 и 2. Чайник видится и определяется правильно, но все функции не работают даже с родным приложением.

@ChapayTv
Copy link

Не знаю у кого как, У меня стоит esp32-bluetooth-proxy на чайник (далеко от сервака). Работало всё прекрасно до сентября. Всё бы было ничего, но боюсь, редмонд виноват. Чайник при установке замечательно видится, но после интеграции все контролируемые параметры недоступны. Тоже самое происходит если подключить напрямую к телефону. Чайник есть, а управлять невозможно. Если на чайнике нажать нагрев - то в телефоне показывает, что чайник включился, но выключить по прежнему нельзя. Только вручную.

Тут 3 варианта:

  1. Редмонд запрограммировал искусственное старениу, что чайником невозможно управлять больше двух лет.
  2. В Редмонде, как я прочитал в какой то статье, переругались собственники, разделились и один из них требует лицензию на удаленное управление.
  3. Банально погорел блюпуп в чайнике или сбой прошивки.

Судя по симптомам, больше подходят пункты 1 и 2. Чайник видится и определяется правильно, но все функции не работают даже с родным приложением.

После отката версии HAOS все прекрасно работает, а траблы с родным приложением от этой г**но фирмы были у меня сразу же после покупки чайника. Слава богу я сделал себе HAOS и могу наконец-то пользоваться умным чайником, а не как обычным светильником)

@LexMrack
Copy link

LexMrack commented Sep 18, 2023

После отката версии HAOS все прекрасно работает, а траблы с родным приложением от этой г**но фирмы были у меня сразу же после покупки чайника. Слава богу я сделал себе HAOS и могу наконец-то пользоваться умным чайником, а не как обычным светильником)

Спасибо, откатил до 8,4. И правда, работает!
Только не понятно, Почему с родным приложением не работает?!

@HEMO74
Copy link

HEMO74 commented Sep 25, 2023

Аналогично.
На 2023.4.6 - работает, на 2023.9.1 - нет.
Симптомы - приведены выше.
Плюс в логах ESPHome (Ble proxy) фиксируются постоянно попытки переподключения, хотя соединение уже установлено

@dima81rus
Copy link

dima81rus commented Sep 27, 2023

Тоже самое: после недавних обновлений перестал работать. все переключалки сервые.
Tсли удалить интеграцию чайника и попытаться подключить снова в HOAS - с первого раза не связывается. Связывается раза с 3-4, но переключалки попрежнему серые.

В логе sp32-bluetooth-proxy постоянный спам:

[18:43:02][W][bluetooth_proxy:246]: [0] [F2:03:6C:25:00:68] Connection already established
[18:43:09][W][bluetooth_proxy:246]: [0] [F2:03:6C:25:00:68] Connection already established
[18:43:11][W][bluetooth_proxy:246]: [0] [F2:03:6C:25:00:68] Connection already established
[18:43:13][W][bluetooth_proxy:246]: [0] [F2:03:6C:25:00:68] Connection already established
[18:43:16][D][esp32_ble_tracker:246]: Starting scan...
[18:43:20][W][bluetooth_proxy:246]: [0] [F2:03:6C:25:00:68] Connection already established
[18:43:22][W][bluetooth_proxy:246]: [0] [F2:03:6C:25:00:68] Connection already established
[18:43:25][W][bluetooth_proxy:246]: [0] [F2:03:6C:25:00:68] Connection already established

график успешных подключений
изображение

HOAS: 2023.9.3
ESPHome: 2023.9.0 (прокси той же версии)
чайник: rk-g240s

к сожалению не могу проверить версию с откатом на старю версию - нет бакапов старых.

@Niorix
Copy link

Niorix commented Sep 28, 2023

к сожалению не могу проверить версию с откатом на старю версию - нет бакапов старых.

Просто же. ha core update --version 2023.8.4
И все заработает. У себя проверил, на 8.4 нормально, на 9.0 и выше - не работает.

@dima81rus
Copy link

@Niorix спасибо.
откатился до 2023.8.4 - сразу не сработало. удалил интеграцию. добавил снова - заработало.

@ChapayTv
Copy link

ChapayTv commented Oct 2, 2023

Ребят а на 9.3 версии не заработало? Автор будет поддерживать танную интеграцию дальше?

@Niorix
Copy link

Niorix commented Oct 3, 2023

А дело то похоже не в бобине...
Поднес чайник непосредственно к серверу (расстояние полметра наверно) и отключил на всякий случай ESP'ху с блютуз прокси. И чайник видится HA. И работает стабильно (ну как минут 10 потетстил, снял поставил на подставку несколько раз). Со своего места на кухне не видится совсем.
Оч странно, что давным давно он работал нормально. Потом, пару тройку месяцев назад начал замечать что периодически он отваливается, ради теста добавил прокси. А с обновлением на 2023.9.0 отваливается совсем. Как обновление может повлиять на качество сигнала? Может в самом HA что то можно подкрутить?

UP. Всключил esp32 с прокси, чайник перестал реагировать на команды HA и начал отваливаться, esp спамит сообщениями "Connection already established". Стоит при этом чайник там же, возле сервера, а esp32 висит на кухне (недалеко, метра 4 от сервера через гисокартоновую стену, так что чайник она видит).

@HEMO74
Copy link

HEMO74 commented Oct 3, 2023

Возможно нарушилась работа именно через прокси, а напрямую со свистком работает.
У меня, кстати, через встроенный свисток через две стены до чайника не достает, а через ЕСП, который лежит тут же, рядом с сервером, все путем.

@JampireX
Copy link

JampireX commented Oct 3, 2023

Подтверждаю. Нарушена работа исключительно через bluetooth_proxy. Без него как-то пытается с плохим сигналом соединятся, но если рядом запущен прокси - чайник совсем перестает выходить на связь.

Лог прокси:

[22:12:29][D][esp32_ble_tracker:246]: Starting scan...
[22:12:30][I][bluetooth_proxy:282]: [0] [C5:16:08:C3:45:45] Connecting v3 without cache
[22:12:30][D][esp32_ble_tracker:214]: Pausing scan to make connection...
[22:12:30][I][esp32_ble_client:064]: [0] [C5:16:08:C3:45:45] 0x01 Attempting BLE connection
[22:12:40][W][bluetooth_proxy:264]: [0] [C5:16:08:C3:45:45] Connection request ignored, already connecting
[22:12:51][W][bluetooth_proxy:264]: [0] [C5:16:08:C3:45:45] Connection request ignored, already connecting
[22:13:00][D][esp-idf:000]: W (206579) BT_APPL: gattc_conn_cb: if=3 st=0 id=3 rsn=0x100

[22:13:00][D][esp-idf:000]: W (206583) BT_APPL: gattc_conn_cb: if=4 st=0 id=4 rsn=0x100

[22:13:00][D][esp-idf:000]: W (206585) BT_APPL: gattc_conn_cb: if=5 st=0 id=5 rsn=0x100

[22:13:00][W][esp32_ble_client:134]: [0] [] Connection failed, status=133
[22:13:00][D][esp32_ble_tracker:246]: Starting scan...
[22:13:00][I][bluetooth_proxy:282]: [0] [C5:16:08:C3:45:45] Connecting v3 without cache
[22:13:00][D][esp32_ble_tracker:214]: Pausing scan to make connection...
[22:13:00][I][esp32_ble_client:064]: [0] [C5:16:08:C3:45:45] 0x01 Attempting BLE connection
[22:13:11][W][bluetooth_proxy:264]: [0] [C5:16:08:C3:45:45] Connection request ignored, already connecting
[22:13:16][D][sensor:094]: 'Uptime': Sending state 222.00500 s with 0 decimals of accuracy
[22:13:22][W][bluetooth_proxy:264]: [0] [C5:16:08:C3:45:45] Connection request ignored, already connecting
[22:13:31][D][esp-idf:000]: W (237191) BT_APPL: gattc_conn_cb: if=3 st=0 id=3 rsn=0x100

[22:13:31][D][esp-idf:000]: W (237195) BT_APPL: gattc_conn_cb: if=4 st=0 id=4 rsn=0x100

[22:13:31][D][esp-idf:000]: W (237197) BT_APPL: gattc_conn_cb: if=5 st=0 id=5 rsn=0x100

[22:13:31][W][esp32_ble_client:134]: [0] [] Connection failed, status=133
[22:13:31][D][esp32_ble_tracker:246]: Starting scan...
[22:13:31][I][bluetooth_proxy:282]: [0] [C5:16:08:C3:45:45] Connecting v3 without cache
[22:13:31][D][esp32_ble_tracker:214]: Pausing scan to make connection...
[22:13:31][I][esp32_ble_client:064]: [0] [C5:16:08:C3:45:45] 0x01 Attempting BLE connection
[22:13:42][W][bluetooth_proxy:264]: [0] [C5:16:08:C3:45:45] Connection request ignored, already connecting
[22:13:53][W][bluetooth_proxy:264]: [0] [C5:16:08:C3:45:45] Connection request ignored, already connecting
[22:14:01][D][esp-idf:000]: W (267916) BT_APPL: gattc_conn_cb: if=3 st=0 id=3 rsn=0x100

[22:14:01][D][esp-idf:000]: W (267920) BT_APPL: gattc_conn_cb: if=4 st=0 id=4 rsn=0x100

[22:14:01][D][esp-idf:000]: W (267922) BT_APPL: gattc_conn_cb: if=5 st=0 id=5 rsn=0x100

[22:14:01][W][esp32_ble_client:134]: [0] [] Connection failed, status=133
[22:14:01][D][esp32_ble_tracker:246]: Starting scan...
[22:14:02][I][bluetooth_proxy:282]: [0] [C5:16:08:C3:45:45] Connecting v3 without cache
[22:14:02][D][esp32_ble_tracker:214]: Pausing scan to make connection...
[22:14:02][I][esp32_ble_client:064]: [0] [C5:16:08:C3:45:45] 0x01 Attempting BLE connection
[22:14:12][W][bluetooth_proxy:264]: [0] [C5:16:08:C3:45:45] Connection request ignored, already connecting
[22:14:16][D][sensor:094]: 'Uptime': Sending state 282.00500 s with 0 decimals of accuracy
[22:14:23][W][bluetooth_proxy:264]: [0] [C5:16:08:C3:45:45] Connection request ignored, already connecting
[22:14:32][D][esp-idf:000]: W (298640) BT_APPL: gattc_conn_cb: if=3 st=0 id=3 rsn=0x100

[22:14:32][D][esp-idf:000]: W (298646) BT_APPL: gattc_conn_cb: if=4 st=0 id=4 rsn=0x100

[22:14:32][D][esp-idf:000]: W (298648) BT_APPL: gattc_conn_cb: if=5 st=0 id=5 rsn=0x100

[22:14:32][W][esp32_ble_client:134]: [0] [] Connection failed, status=133
[22:14:32][D][esp32_ble_tracker:246]: Starting scan...
[22:14:33][I][bluetooth_proxy:282]: [0] [C5:16:08:C3:45:45] Connecting v3 without cache
[22:14:33][D][esp32_ble_tracker:214]: Pausing scan to make connection...
[22:14:33][I][esp32_ble_client:064]: [0] [C5:16:08:C3:45:45] 0x01 Attempting BLE connection
[22:14:35][I][ota:117]: Boot seems successful, resetting boot loop counter.
[22:14:35][D][esp32.preferences:114]: Saving 1 preferences to flash...
[22:14:35][D][esp32.preferences:143]: Saving 1 preferences to flash: 0 cached, 1 written, 0 failed
[22:15:03][D][esp-idf:000]: W (329248) BT_APPL: gattc_conn_cb: if=3 st=0 id=3 rsn=0x100

[22:15:03][D][esp-idf:000]: W (329253) BT_APPL: gattc_conn_cb: if=4 st=0 id=4 rsn=0x100

[22:15:03][D][esp-idf:000]: W (329254) BT_APPL: gattc_conn_cb: if=5 st=0 id=5 rsn=0x100

[22:15:03][W][esp32_ble_client:134]: [0] [] Connection failed, status=133
[22:15:03][D][esp32_ble_tracker:246]: Starting scan...

Сложно сказать, что там изменили в ядре - но что-то после этого пошло не так. Вероятно дело даже не в интеграции, а где-то в ядре.

@ChapayTv
Copy link

ChapayTv commented Oct 8, 2023

Сложно сказать, что там изменили в ядре - но что-то после этого пошло не так. Вероятно дело даже не в интеграции, а где-то в ядре.
А на последней версии HAOS 2023.10.0 не проверяли?

@ArchelonU
Copy link

ArchelonU commented Oct 8, 2023

Нарушена работа исключительно через bluetooth_proxy

У меня HA в докере на Raspberry - использует встроенный bt через dbus, а не через прокси. чайник отлетает в течении суток.
Попробовал новое обновление 2023.10.1 - не починилось

UPD: снизил периодичность опроса до 10 (а было 5) - пару дней отработал без проблем, вернул на значение 5 - опять пошло по бороде... Выставил обратно 10, посмотрим, что будет.

UPD2: С таким значением периодичности опроса работает от 1 до 2-х дней, а потом всё так же отлетает. Однако, теперь хоть не вешает малинку при этом. И если снять чайник, долить водички, поставить на платформу и включить - снова коннектится.

UPD3: прошло ещё немного времени, всё же малинка подвисает. Попробовал убрать галочку постоянного подключения. - так чайник очень быстро перестаёт быть виден

@7leman7
Copy link

7leman7 commented Oct 26, 2023

Подключил bluetooth proxy на esp32, через нее чайник не смог спарить с HA. При настройке интеграции чайник видит, в режиме спаривания чайник быстро перестает мигать, но HA выдает ошибку, что-то вроде "connected, but not paired". От сервера HA чайник далековато, встроенный BT сервера (если BT proxy отключить) не видит чайник от слова совсем.

HA 2023.10.3. Я правильно понимаю, что через BT proxy толком не работает интеграция на свежих версиях HA (и не ясно дело в интеграции или в HA)? И правильно ли я понимаю, что для работы через BT proxy спаривать чайник надо тоже именно через BT proxy?

@ChapayTv
Copy link

Подключил bluetooth proxy на esp32, через нее чайник не смог спарить с HA. При настройке интеграции чайник видит, в режиме спаривания чайник быстро перестает мигать, но HA выдает ошибку, что-то вроде "connected, but not paired". От сервера HA чайник далековато, встроенный BT сервера (если BT proxy отключить) не видит чайник от слова совсем.

HA 2023.10.3. Я правильно понимаю, что через BT proxy толком не работает интеграция на свежих версиях HA (и не ясно дело в интеграции или в HA)? И правильно ли я понимаю, что для работы через BT proxy спаривать чайник надо тоже именно через BT proxy?

Я переделал вот на это , проект активно поддерживается. Работает шткарно, все данные подтягиваются к mqtt.

@ClusterM
Copy link
Owner

Ребят, проект опенсорсный. Кто-нибудь, помогите с ним. У меня сейчас вот совсем нет времени на него.

@dima81rus
Copy link

Ребят, проект опенсорсный. Кто-нибудь, помогите с ним. У меня сейчас вот совсем нет времени на него.

эх... ктоб бы тут умел - думаю, давно бы уже помогли =(

@QuAzI
Copy link

QuAzI commented Oct 30, 2023

Тоже вот столкнулся, HP Chromebook на антресольке со встроенным bt и Home Assistant 2023.10.5
Чайник перестаёт быть виден в HA часа через пол, но полностью доступен в мобильном приложении (мобилка монопольно забрала?)
И да, чайник RK-216S, может этот костылёк поможет

@ChapayTv
Copy link

ChapayTv commented Oct 30, 2023

Тоже вот столкнулся, HP Chromebook на антресольке со встроенным bt и Home Assistant 2023.10.5 Чайник перестаёт быть виден в HA часа через пол, но полностью доступен в мобильном приложении (мобилка монопольно забрала?) И да, чайник RK-216S, может этот костылёк поможет

Воспользуйтесь решением что я написал выше, все будет работать без проблем.

@7leman7
Copy link

7leman7 commented Oct 30, 2023

Подключил bluetooth proxy на esp32, через нее чайник не смог спарить с HA. При настройке интеграции чайник видит, в режиме спаривания чайник быстро перестает мигать, но HA выдает ошибку, что-то вроде "connected, but not paired". От сервера HA чайник далековато, встроенный BT сервера (если BT proxy отключить) не видит чайник от слова совсем.
HA 2023.10.3. Я правильно понимаю, что через BT proxy толком не работает интеграция на свежих версиях HA (и не ясно дело в интеграции или в HA)? И правильно ли я понимаю, что для работы через BT proxy спаривать чайник надо тоже именно через BT proxy?

Я переделал вот на это , проект активно поддерживается. Работает шткарно, все данные подтягиваются к mqtt.

Спасибо! Тоже переделал. Пока полет нормальный, мультиварка тоже подцепилась.

@QuAzI
Copy link

QuAzI commented Oct 31, 2023

Как-то сильно много проблем с RK-216S.

  • Чайник перестаёт нагреваться при переподключениях. Когда у телефона в родном приложении отваливался сигнал было не важно, чайник продолжал работать в заданном режиме
    image
  • Иногда интеграция показывает что чайник онлайн, но по факту показывает неактуальные данные и чайник оффлайн, абсолютно не управляется.
  • В опциях у родного приложения можно было задать как долго собственно кипятить (Boil)
    image
  • Когда запускаешь кипячение кнопкой появился какой-то новый звук, будто реле переключает режимы, хотя раньше он просто начинал греться.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.