-
Notifications
You must be signed in to change notification settings - Fork 304
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
Adjust read timeout with corebluetooth to 10s #891
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
5s would result in quite a few random failures with HomeKit BLE devices because the device would have to process a large dump of fragments which make it slow to respond Fixes Jc2k/aiohomekit#111 Example of code that slows down the device with many encrypted writes before waiting for a read https://github.com/Jc2k/aiohomekit/blob/0e22b4e0a16d6b01da2e65bfce99fb01b4c1c7f3/aiohomekit/controller/ble/client.py#L117
Merged, thanks! |
dlech
added a commit
that referenced
this pull request
Jul 29, 2022
Added ----- * Added new ``assigned_numbers`` module and ``AdvertisementDataType`` enum. * Added new ``bluez`` kwarg to ``BleakScanner`` in BlueZ backend. * Added support for passive scanning in the BlueZ backend. Fixes #606. * Added option to use cached services, characteristics and descriptors in WinRT backend. Fixes #686. * Added ``PendingDeprecationWarning`` to use of ``address_type`` as keyword argument. It will be moved into the ``winrt`` keyword instead according to #623. * Added better error message when adapter is not present in BlueZ backend. Fixes #889. Changed ------- * Add ``py.typed`` file so mypy discovers Bleak's type annotations. * UUID descriptions updated to 2022-03-16 assigned numbers document. * Replace use of deprecated ``asyncio.get_event_loop()`` in Android backend. * Adjust default timeout for ``read_gatt_char()`` with CoreBluetooth to 10s. Merged #891. * ``BleakScanner()`` args ``detection_callback`` and ``service_uuids`` are no longer keyword-only. * ``BleakScanner()`` arg ``scanning_mode`` is no longer Windows-only and is no longer keyword-only. * All ``BleakScanner()`` instances in BlueZ backend now use common D-Bus object manager. * Deprecated ``filters`` kwarg in ``BleakScanner`` in BlueZ backend. * BlueZ version is now checked on first connection instead of import to avoid import side effects. Merged #907. Fixed ----- * Documentation fixes. * On empty characteristic description from WinRT, use the lookup table instead of returning empty string. * Fixed detection of first advertisement in BlueZ backend. Merged #903. * Fixed performance issues in BlueZ backend caused by calling "GetManagedObjects" each time a ``BleakScanner`` scans or ``BleakClient`` is connected. Fixes #500. * Fixed not handling "InterfacesRemoved" in ``BleakClient`` in BlueZ backend. Fixes #882. * Fixed leaking D-Bus socket file descriptors in BlueZ backend. Fixes #805.
Merged
dlech
added a commit
that referenced
this pull request
Jul 29, 2022
Added ----- * Added new ``assigned_numbers`` module and ``AdvertisementDataType`` enum. * Added new ``bluez`` kwarg to ``BleakScanner`` in BlueZ backend. * Added support for passive scanning in the BlueZ backend. Fixes #606. * Added option to use cached services, characteristics and descriptors in WinRT backend. Fixes #686. * Added ``PendingDeprecationWarning`` to use of ``address_type`` as keyword argument. It will be moved into the ``winrt`` keyword instead according to #623. * Added better error message when adapter is not present in BlueZ backend. Fixes #889. Changed ------- * Add ``py.typed`` file so mypy discovers Bleak's type annotations. * UUID descriptions updated to 2022-03-16 assigned numbers document. * Replace use of deprecated ``asyncio.get_event_loop()`` in Android backend. * Adjust default timeout for ``read_gatt_char()`` with CoreBluetooth to 10s. Merged #891. * ``BleakScanner()`` args ``detection_callback`` and ``service_uuids`` are no longer keyword-only. * ``BleakScanner()`` arg ``scanning_mode`` is no longer Windows-only and is no longer keyword-only. * All ``BleakScanner()`` instances in BlueZ backend now use common D-Bus object manager. * Deprecated ``filters`` kwarg in ``BleakScanner`` in BlueZ backend. * BlueZ version is now checked on first connection instead of import to avoid import side effects. Merged #907. Fixed ----- * Documentation fixes. * On empty characteristic description from WinRT, use the lookup table instead of returning empty string. * Fixed detection of first advertisement in BlueZ backend. Merged #903. * Fixed performance issues in BlueZ backend caused by calling "GetManagedObjects" each time a ``BleakScanner`` scans or ``BleakClient`` is connected. Fixes #500. * Fixed not handling "InterfacesRemoved" in ``BleakClient`` in BlueZ backend. Fixes #882. * Fixed leaking D-Bus socket file descriptors in BlueZ backend. Fixes #805.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Adjust read timeout with corebluetooth to 10s
5s would result in quite a few random failures with
HomeKit BLE devices because the device would have to
process a large dump of fragments which make it slow
to respond
Fixes Jc2k/aiohomekit#111
Example of code that slows down the device with many
encrypted writes before waiting for a read
https://github.com/Jc2k/aiohomekit/blob/0e22b4e0a16d6b01da2e65bfce99fb01b4c1c7f3/aiohomekit/controller/ble/client.py#L117