Commit Graph
65 Commits
Author SHA1 Message Date
J. Nick KostonandGitHub c798723c27 Fix bluetooth diagnostics on macos (#79680)
* Fix bluetooth diagnostics on macos

The pyobjc objects cannot be pickled which cases dataclasses
asdict to raise an exception when trying to do the deepcopy

We now implement our own as_dict to avoid this problem

* add cover
2022-10-06 04:32:29 +02:00
J. Nick KostonandGitHub 2768b2445a Remove call to deprecated bleak register_detection_callback (#79558) 2022-10-03 21:15:09 -04:00
J. Nick KostonandGitHub 5eb50f63fd Ensure bleak_retry_connector uses HaBleakClientWrapper (#79132) 2022-09-27 14:06:10 -04:00
J. Nick KostonandGitHub 75f6f9b5e2 Improve performance of Bluetooth device fallback (#79078) 2022-09-26 09:12:08 -04:00
J. Nick KostonandGitHub 1b144c0e4d Update to bleak 0.18.0 (#79008) 2022-09-23 15:09:28 -10:00
J. Nick KostonandGitHub d1da6ea04d Fix flapping bluetooth scanner test (#78961) 2022-09-22 23:39:38 -04:00
J. Nick KostonandGitHub 488b04fc8b Handle default RSSI values from bleak in bluetooth (#78908) 2022-09-21 17:03:50 -04:00
12856dea05 Create an issue when Bluetooth is active on old HAOS (#78430)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-09-19 21:02:13 -04:00
J. Nick KostonandGitHub caba202efa Fix failing bluetooth tests (#78757) 2022-09-19 20:59:27 -04:00
J. Nick KostonandGitHub 635c2f3738 Change bluetooth source to be the address of the adapter on Linux (#78795) 2022-09-19 20:58:18 -04:00
epenetandGitHub 747e538172 Apply hass-relative-import to bluetooth tests (#78736) 2022-09-19 12:35:23 +02:00
J. Nick KostonandGitHub 9655f30146 Handle Modalias missing from the bluetooth adapter details on older BlueZ (#78715) 2022-09-18 21:09:45 -04:00
J. Nick KostonandGitHub d4181aa911 Fix bluetooth callback matchers when only matching on connectable (#78687) 2022-09-18 10:22:54 -05:00
J. Nick KostonandGitHub 18eef5da1f Restore history from bluetooth stack at startup (#78612) 2022-09-17 16:58:19 -05:00
J. Nick KostonandGitHub 98dd84f535 Ensure bluetooth callbacks are only fired when advertisement data changes (#78609) 2022-09-17 10:26:02 +02:00
J. Nick KostonandGitHub 085abc74ee Reduce overhead to update passive bluetooth devices (#78545) 2022-09-16 12:24:20 +02:00
J. Nick KostonandGitHub 392548fe6e Bump bleak to 0.17.0 (#78333) 2022-09-13 14:31:34 +02:00
Alex ThompsonandGitHub 45b69618d3 Add iBeacon start byte to allowed Apple Bluetooth advertisements (#78088) 2022-09-08 18:21:58 -05:00
a641bbc352 Less verbose error logs for bleak connection errors in ActiveBluetoothProcessorCoordinator (#77839)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-09-05 10:33:10 -04:00
J. Nick KostonandGitHub 804e4ab989 Prefilter noisy apple devices from bluetooth (#77808) 2022-09-04 20:57:40 -04:00
J. Nick KostonandGitHub 40e8979951 Add bluetooth api to get the count of connectable and non-connectable scanners (#77427) 2022-08-29 10:21:30 -04:00
J. Nick KostonandGitHub a28aeeeca7 Hide bluetooth passive option if its not available on the host system (#77421)
* Hide bluetooth passive option if its not available

- We now have a way to determine in advance if passive
  scanning is supported by BlueZ

* drop string
2022-08-27 19:18:54 -04:00
J. Nick KostonandGitHub 8e88e039f7 Add diagnostics to bluetooth (#77393) 2022-08-27 16:41:49 -05:00
J. Nick KostonandGitHub 61d5ed1dcf Index bluetooth matchers to resolve performance concerns with many adapters/remotes (#77372) 2022-08-26 23:07:51 -04:00
J. Nick KostonandGitHub 109d5c7084 Fix bluetooth discovery when advertisement format changes (#77286) 2022-08-24 17:36:21 -05:00
J. Nick KostonandGitHub d1486d04d9 Add support for bleak passive scanning on linux (#75542) 2022-08-24 12:17:28 -05:00
J. Nick KostonandGitHub c76dec138a Discover new bluetooth adapters when they are plugged in (#77006) 2022-08-22 15:45:08 -10:00
J. Nick KostonandGitHub 3938015c93 Add support for scanners that do not provide connectable devices (#77132) 2022-08-22 14:02:26 -04:00
J. Nick KostonandGitHub f3e432c9c7 Reduce bluetooth logging noise when an adapter is recovered (#77109) 2022-08-21 12:03:14 -10:00
J. Nick KostonandGitHub ced8278e32 Auto recover when the Bluetooth adapter stops responding (#77043) 2022-08-20 11:58:14 -10:00
J. Nick KostonandGitHub cd59d3ab81 Add support for multiple Bluetooth adapters (#76963) 2022-08-18 21:41:07 -04:00
J. Nick KostonandGitHub 071cae2c0b Implement auto switching when there are multiple bluetooth scanners (#76947) 2022-08-17 12:38:04 -10:00
J. Nick KostonandGitHub 7bf13167d8 Prevent bluetooth scanner from being shutdown by BleakClient not using BLEDevice (#76945) 2022-08-17 11:42:12 -10:00
J. Nick KostonandGitHub 3bcc274dfa Rework bluetooth to support scans from multiple sources (#76900) 2022-08-17 10:51:56 -10:00
J. Nick KostonandGitHub 6f3cdb6db1 Reorganize bluetooth integration to prepare for remote and multi-adapter support (#76883) 2022-08-16 14:52:53 -10:00
J. Nick KostonandGitHub 4890785299 Fix bluetooth callback registration not surviving a reload (#76817) 2022-08-15 10:19:37 -10:00
Jc2kandGitHub 0639681991 Add new Bluetooth coordinator helper for polling mostly passive devices (#76549) 2022-08-10 18:56:34 +01:00
Jc2kandGitHub 7d427ddbd4 Allow parsing to happen in PassiveBluetoothProcessorCoordinator (#76384) 2022-08-09 06:36:39 +01:00
J. Nick KostonandGitHub 1fe44d0997 Ensure bluetooth recovers if Dbus gets restarted (#76249) 2022-08-07 11:03:56 -04:00
Joakim PlateandGitHub cdde4f9925 Add bluetooth API to allow rediscovery of address (#76005)
* Add API to allow rediscovery of domains

* Switch to clearing per device

* Drop unneded change
2022-08-05 14:49:34 +02:00
J. Nick KostonandGitHub 5d7cef6416 Fix race in bluetooth async_process_advertisements (#76176) 2022-08-04 17:58:15 +02:00
J. Nick KostonandGitHub bf931f1225 Handle additional bluetooth start exceptions (#76096) 2022-08-02 13:46:43 -10:00
J. Nick KostonandGitHub 80a9659524 Update to bleak 0.15 (#75941) 2022-07-29 17:53:33 -07:00
702cef3fc7 Add startup timeout to bluetooth (#75848)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-07-28 11:14:13 -10:00
Jc2kandGitHub 10356b9379 Fix Xiaomi BLE not detecting encryption for some devices (#75851) 2022-07-28 19:10:37 +01:00
J. Nick KostonandGitHub 1e85ddabfd Fix startup race in BLE integrations (#75780) 2022-07-26 09:29:23 -10:00
J. Nick KostonandGitHub a813cf987b Add bluetooth options flow to pick the adapter (#75701) 2022-07-25 16:52:35 +02:00
J. Nick KostonandGitHub 22ca28b93d Ensure bluetooth can be reloaded when hot plugging a bluetooth adapter (#75699) 2022-07-24 19:23:23 -05:00
J. Nick KostonandGitHub bbb9443b00 Fix bluetooth integration matching with service_data_uuids and service_uuids (#75687)
* Fix bluetooth integration with service_data and service_uuids

We would only dispatch a new flow when the address was seen for
the first time or the manufacturer_data appeared in a followup
advertisement. Its also possible for the service_data and
service_uuids to appear in a followup advertisement so we
need to track these as well

* improve logging to avoid overly large messages

* improve logging to avoid overly large messages

* adjust

* adjsut

* split

* coverage

* coverage

* coverage

* coverage

* fix matcher

* more coverage

* more coverage

* more coverage

* revert switchbot changes and move to seperate PR
2022-07-24 16:39:53 -05:00
J. Nick KostonandGitHub da131beced Split bluetooth coordinator into two classes (#75675) 2022-07-23 19:33:47 -05:00