David Buezas
112b2c22f7
Expose async_scanner_devices_by_address from the bluetooth api ( #83733 )
...
Co-authored-by: J. Nick Koston <nick@koston.org>
fixes undefined
2023-01-08 14:06:32 -10:00
J. Nick Koston
070aa714a0
Switch to a different local Bluetooth adapter when one runs out of connection slots ( #84331 )
2022-12-23 08:58:33 -10:00
J. Nick Koston
9008006ac8
Restore remote discovered devices between remote scanner restarts ( #83699 )
2022-12-11 09:02:55 -10:00
J. Nick Koston
d6e287f47a
Add manufacturer and model to bluetooth adapter device ( #82769 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-11-27 15:44:44 -05:00
J. Nick Koston
a7caa038be
Accept advertisements from alternate scanners when a scanner stops scanning ( #82448 )
2022-11-21 21:23:07 -05:00
J. Nick Koston
3f5649092e
Break out bluetooth apis into api.py ( #82416 )
...
* Break out bluetooth apis into api.py
Like #82291 this is not a functional change.
* cleanups
2022-11-20 12:33:03 -05:00
J. Nick Koston
7801cd96de
Split bluetooth models into base_scanner and wrappers ( #82291 )
2022-11-20 08:44:28 -06:00
J. Nick Koston
47c66dbed4
Offload platform specific bluetooth code to bluetooth-adapters ( #82196 )
...
* Offload platform specific bluetooth code to bluetooth-adapters
* adjust
* fix some more patch targets
* more test fixes
* almost there
* may not be setup yet
* more fixes
* fixes
* fix test
* fix merge
2022-11-17 14:34:19 -05:00
J. Nick Koston
f584efa0c2
Move bluetooth remote scanner implementation into a base class ( #82012 )
2022-11-13 14:18:36 -06:00
J. Nick Koston
89959e7cda
Reduce complexity of bluetooth scanners for local adapters ( #81940 )
...
This is a small refactor to align the bluetooth scanner class
to the same design used in the esphome scanner to pass the
callback for new service infos in the constructor.
The original thinking was that multiple callbacks would
be needed to send the service infos to different paths,
however with the creation of a central manager, this
designed turned out to not be needed and can be
simplified
2022-11-11 14:59:06 +01:00
J. Nick Koston
78180b2ad8
Fix bluetooth adapters with missing firmware patch files not being discovered ( #81926 )
2022-11-10 14:14:37 -06:00
J. Nick Koston
0c76e3a97e
Automatically determine the advertising interval for bluetooth devices ( #79669 )
2022-10-14 14:39:18 -04:00
J. Nick Koston
2768b2445a
Remove call to deprecated bleak register_detection_callback ( #79558 )
2022-10-03 21:15:09 -04:00
J. Nick Koston
1b144c0e4d
Update to bleak 0.18.0 ( #79008 )
2022-09-23 15:09:28 -10:00
J. Nick Koston
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 Koston
18eef5da1f
Restore history from bluetooth stack at startup ( #78612 )
2022-09-17 16:58:19 -05:00
J. Nick Koston
085abc74ee
Reduce overhead to update passive bluetooth devices ( #78545 )
2022-09-16 12:24:20 +02:00
J. Nick Koston
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 Koston
61d5ed1dcf
Index bluetooth matchers to resolve performance concerns with many adapters/remotes ( #77372 )
2022-08-26 23:07:51 -04:00
J. Nick Koston
d1486d04d9
Add support for bleak passive scanning on linux ( #75542 )
2022-08-24 12:17:28 -05:00
J. Nick Koston
c76dec138a
Discover new bluetooth adapters when they are plugged in ( #77006 )
2022-08-22 15:45:08 -10:00
J. Nick Koston
3938015c93
Add support for scanners that do not provide connectable devices ( #77132 )
2022-08-22 14:02:26 -04:00
J. Nick Koston
ced8278e32
Auto recover when the Bluetooth adapter stops responding ( #77043 )
2022-08-20 11:58:14 -10:00
J. Nick Koston
18246bb8c8
Improve bluetooth logging when there are multiple adapters ( #77007 )
2022-08-20 13:22:42 -04:00
J. Nick Koston
cd59d3ab81
Add support for multiple Bluetooth adapters ( #76963 )
2022-08-18 21:41:07 -04:00
J. Nick Koston
3bcc274dfa
Rework bluetooth to support scans from multiple sources ( #76900 )
2022-08-17 10:51:56 -10:00
J. Nick Koston
6f3cdb6db1
Reorganize bluetooth integration to prepare for remote and multi-adapter support ( #76883 )
2022-08-16 14:52:53 -10:00
J. Nick Koston
4890785299
Fix bluetooth callback registration not surviving a reload ( #76817 )
2022-08-15 10:19:37 -10:00
J. Nick Koston
eeb9a9f058
Make sure all discovery flows are using the helper ( #76641 )
2022-08-12 09:25:23 -04:00
J. Nick Koston
1fe44d0997
Ensure bluetooth recovers if Dbus gets restarted ( #76249 )
2022-08-07 11:03:56 -04:00
Joakim Plate
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 Koston
5d7cef6416
Fix race in bluetooth async_process_advertisements ( #76176 )
2022-08-04 17:58:15 +02:00
J. Nick Koston
bf931f1225
Handle additional bluetooth start exceptions ( #76096 )
2022-08-02 13:46:43 -10:00
J. Nick Koston
56050e9fbe
Lower bluetooth startup timeout to 9s to avoid warning ( #76050 )
2022-08-02 08:46:22 +02:00
Franck Nijhof
fc399f21e9
Guard imports for type hinting in Bluetooth ( #75984 )
2022-08-01 17:54:06 +02:00
J. Nick Koston
80a9659524
Update to bleak 0.15 ( #75941 )
2022-07-29 17:53:33 -07:00
J. Nick Koston
702cef3fc7
Add startup timeout to bluetooth ( #75848 )
...
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-07-28 11:14:13 -10:00
Jc2k
10356b9379
Fix Xiaomi BLE not detecting encryption for some devices ( #75851 )
2022-07-28 19:10:37 +01:00
J. Nick Koston
a813cf987b
Add bluetooth options flow to pick the adapter ( #75701 )
2022-07-25 16:52:35 +02:00
J. Nick Koston
22ca28b93d
Ensure bluetooth can be reloaded when hot plugging a bluetooth adapter ( #75699 )
2022-07-24 19:23:23 -05:00
J. Nick Koston
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 Koston
240bbfa080
Retry later if bluetooth fails to start ( #75647 )
2022-07-23 12:00:34 -05:00
J. Nick Koston
326e05dcf1
Fix async_get_scanner to return the correct bluetooth scanner ( #75637 )
2022-07-22 18:12:08 -05:00
J. Nick Koston
38bccadaa6
Add support for setting up and removing bluetooth in the UI ( #75600 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-07-22 13:19:53 -05:00
J. Nick Koston
90ca3fe350
Improve availability tracking and coordinator setup in bluetooth ( #75582 )
2022-07-21 19:16:45 -05:00
Marc Mueller
51ed9ee59d
Fix bluetooth service_info typing ( #75477 )
...
* Fix bluetooth service_info typing
* Remove additional type ignores
* Remove pylint disable
2022-07-20 05:46:18 +02:00
J. Nick Koston
0f81d1d14a
Drop RSSI update workaround from bluetooth on linux ( #75467 )
...
It turns out we do not need these are we can check the discovered
device list to see if bluez is still seeing the device
2022-07-20 04:14:31 +02:00
J. Nick Koston
41e4b38c3a
Add device and advertisement to BluetoothServiceInfoBleak ( #75381 )
2022-07-18 17:58:08 -05:00
J. Nick Koston
91f2550bc3
Change manufacturer_data_first_byte to manufacturer_data_start ( #75379 )
2022-07-17 17:25:45 -05:00
J. Nick Koston
ecc219fbc1
Include the source in the bluetooth service info ( #75112 )
2022-07-16 11:02:08 -05:00