Skip to main content

Bluetooth Low Energy platform Agnostic Klient

Project description

Build and Test https://img.shields.io/pypi/v/bleak.svg PyPI - Downloads Documentation Status https://img.shields.io/badge/code%20style-black-000000.svg

Bleak is an acronym for Bluetooth Low Energy platform Agnostic Klient.

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

$ pip install bleak

Features

  • Supports Windows 10, version 16299 (Fall Creators Update) or 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:

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:

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bleak-3.0.1.tar.gz (124.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bleak-3.0.1-py3-none-any.whl (144.7 kB view details)

Uploaded Python 3

File details

Details for the file bleak-3.0.1.tar.gz.

File metadata

  • Download URL: bleak-3.0.1.tar.gz
  • Upload date:
  • Size: 124.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for bleak-3.0.1.tar.gz
Algorithm Hash digest
SHA256 c8ff077519f8c30a972fd0d22f47a54b981184b2f2a0886d02e55acadbc1045d
MD5 513384cf6ed28ebcad27ed829c4ad3a2
BLAKE2b-256 879fdd19d92309e4a37823210827f0f42460e69603254309b99499622b511294

See more details on using hashes here.

File details

Details for the file bleak-3.0.1-py3-none-any.whl.

File metadata

  • Download URL: bleak-3.0.1-py3-none-any.whl
  • Upload date:
  • Size: 144.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for bleak-3.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 49f93f24ce96610529842da2d9856e7f46597e25966c0f1cfc737f0191566de6
MD5 8a1f3895c8443e43581f40f77051e51c
BLAKE2b-256 d29c839e4ff0393070396c656fa6616d0d2512f60b571c1263183e709db1c365

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page