Metadata-Version: 2.4 Name: bleak Version: 3.0.2 Summary: Bluetooth Low Energy platform Agnostic Klient Author: Henrik Blidh Author-email: Henrik Blidh License-Expression: MIT License-File: LICENSE Classifier: Framework :: AsyncIO Classifier: Operating System :: Microsoft :: Windows :: Windows 11 Classifier: Operating System :: POSIX :: Linux Classifier: Operating System :: MacOS :: MacOS X Classifier: Operating System :: Android Requires-Dist: async-timeout>=3.0.0 ; python_full_version < '3.11' Requires-Dist: typing-extensions>=4.7.0 ; python_full_version < '3.12' Requires-Dist: pyobjc-core>=10.3 ; sys_platform == 'darwin' Requires-Dist: pyobjc-framework-corebluetooth>=10.3 ; sys_platform == 'darwin' Requires-Dist: pyobjc-framework-libdispatch>=10.3 ; sys_platform == 'darwin' Requires-Dist: winrt-runtime>=3.1 ; sys_platform == 'win32' Requires-Dist: winrt-windows-devices-bluetooth>=3.1 ; sys_platform == 'win32' Requires-Dist: winrt-windows-devices-bluetooth-advertisement>=3.1 ; sys_platform == 'win32' Requires-Dist: winrt-windows-devices-bluetooth-genericattributeprofile>=3.1 ; sys_platform == 'win32' Requires-Dist: winrt-windows-devices-enumeration>=3.1 ; sys_platform == 'win32' Requires-Dist: winrt-windows-devices-radios>=3.1 ; sys_platform == 'win32' Requires-Dist: winrt-windows-foundation>=3.1 ; sys_platform == 'win32' Requires-Dist: winrt-windows-foundation-collections>=3.1 ; sys_platform == 'win32' Requires-Dist: winrt-windows-storage-streams>=3.1 ; sys_platform == 'win32' Requires-Dist: dbus-fast>=1.83.0 ; sys_platform == 'linux' Requires-Dist: bleak-pythonista>=0.1.1 ; extra == 'pythonista' Requires-Python: >=3.10 Project-URL: Homepage, https://github.com/hbldh/bleak Project-URL: Documentation, https://bleak.readthedocs.io Project-URL: Changelog, https://github.com/hbldh/bleak/blob/develop/CHANGELOG.rst Project-URL: Support, https://github.com/hbldh/bleak/discussions Project-URL: Issues, https://github.com/hbldh/bleak/issues Provides-Extra: pythonista Description-Content-Type: text/x-rst ===== Bleak ===== .. image:: https://github.com/hbldh/bleak/workflows/Build%20and%20Test/badge.svg :target: https://github.com/hbldh/bleak/actions?query=workflow%3A%22Build+and+Test%22 :alt: Build and Test .. image:: https://img.shields.io/pypi/v/bleak.svg :target: https://pypi.python.org/pypi/bleak .. image:: https://img.shields.io/pypi/dm/bleak.svg :target: https://pypi.python.org/pypi/bleak :alt: PyPI - Downloads .. image:: https://readthedocs.org/projects/bleak/badge/?version=latest :target: https://bleak.readthedocs.io/en/latest/?badge=latest :alt: Documentation Status .. image:: https://img.shields.io/badge/code%20style-black-000000.svg :target: https://github.com/psf/black .. container:: .. image:: Bleak_logo2.png :target: https://github.com/hbldh/bleak :alt: Bleak Logo Bleak is an acronym for Bluetooth Low Energy platform Agnostic Klient. * Free software: MIT license * Documentation: https://bleak.readthedocs.io. Bleak is a GATT client software, capable of connecting to BLE devices acting as GATT servers. It is designed to provide a asynchronous, cross-platform Python API to connect and communicate with e.g. sensors. Installation ------------ .. code-block:: bash $ pip install bleak Features -------- * Supports Windows 11, version 22000 and greater * Supports Linux distributions with BlueZ >= 5.55 * OS X/macOS support via Core Bluetooth API, from at least OS X version 10.15 * Android backend compatible with python-for-android Bleak supports reading, writing and getting notifications from GATT servers, as well as a function for discovering BLE devices. Usage ----- To discover Bluetooth devices that can be connected to: .. code-block:: python import asyncio from bleak import BleakScanner async def main(): devices = await BleakScanner.discover() for d in devices: print(d) asyncio.run(main()) Connect to a Bluetooth device and read its model number: .. code-block:: python import asyncio from bleak import BleakClient address = "24:71:89:cc:09:05" MODEL_NBR_UUID = "2A24" async def main(address): async with BleakClient(address) as client: model_number = await client.read_gatt_char(MODEL_NBR_UUID) print(f"Model Number: {model_number.decode()}") asyncio.run(main(address)) DO NOT NAME YOUR SCRIPT ``bleak.py``! It will cause a circular import error. See examples folder for more code, for instance example code for connecting to a `TI SensorTag CC2650 `_