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-2.1.1.tar.gz (120.6 kB view details)

Uploaded Source

Built Distribution

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

bleak-2.1.1-py3-none-any.whl (141.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for bleak-2.1.1.tar.gz
Algorithm Hash digest
SHA256 4600cc5852f2392ce886547e127623f188e689489c5946d422172adf80635cf9
MD5 e757918dbfcba6bdfcb69e82048fc3a9
BLAKE2b-256 458a5acbd4da6a5a301fab56ff6d6e9e6b6945e6e4a2d1d213898c21b1d3a19b

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for bleak-2.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 61ac1925073b580c896a92a8c404088c5e5ec9dc3c5bd6fc17554a15779d83de
MD5 1d0a8a40c59e7f644dd413b991f374e9
BLAKE2b-256 99fe22aec895f040c1e457d6e6fcc79286fbb17d54602600ab2a58837bec7be1

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