Added
- Allow 16-bit UUID string arguments to
get_service()
andget_characteristic()
. - Added
register_uuids()
to augment the uuid-to-description mapping. - Added support for Python 3.10.
- Added
force_indicate
keyword argument for WinRT backend client'sstart_notify
method. Fixes #526. - Added python-for-android backend.
Changed
- Changed from
winrt
dependency tobleak-winrt
. - Improved error when connecting to device fails in WinRT backend. Fixes #647.
- Changed examples to use
asyncio.run()
. - Changed the default notify method for the WinRT backend from
Indicate
toNotify
. - Refactored GATT error handling in WinRT backend.
- Changed Windows Bluetooth packet capture instructions. Fixes #653.
- Replaced usage of deprecated
@abc.abstractproperty
. - Use
asyncio.get_running_loop()
instead ofasyncio.get_event_loop()
. - Changed "service is already present" exception to logged error in BlueZ backend. Merged #622.
Removed
- Removed
dotnet
backend. - Dropped support for Python 3.6.
- Removed
use_cached
kwarg fromBleakClient
connect()
andget_services()
methods. Fixes #646.
Fixed
- Fixed unused timeout in the implementation of BleakScanner's
find_device_by_address()
function. - Fixed BleakClient ignoring the
adapter
kwarg. Fixes #607. - Fixed writing descriptors in WinRT backend. Fixes #615.
- Fixed race on disconnect and cleanup of BlueZ matches when device disconnects early. Fixes #603.
- Fixed memory leaks on Windows.
- Fixed protocol error code descriptions on WinRT backend. Fixes #532.
- Fixed race condition hitting assentation in BlueZ
disconnect()
method. Fixes #641. - Fixed enumerating services on a device with HID service on WinRT backend. Fixes #599.
- Fixed subprocess running to check BlueZ version each time a client is created. Fixes #602.
- Fixed exception when discovering services after reconnecting in CoreBluetooth backend.