===== 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.
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
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