Bluetooth Low Energy platform Agnostic Klient
Project description
bleak
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.
Be warned: Bleak is still in an early state of implementation.
Installation
$ pip install bleak
Features
Supports Windows 10, version 16299 (Fall Creators Update)
Supports Linux distributions with BlueZ >= 5.43
Plans on macOS support via Core Bluetooth API (see develop branch for progress)
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 discover
async def run():
devices = await discover()
for d in devices:
print(d)
loop = asyncio.get_event_loop()
loop.run_until_complete(run())
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 = "00002a24-0000-1000-8000-00805f9b34fb"
async def run(address, loop):
async with BleakClient(address, loop=loop) as client:
model_number = await client.read_gatt_char(MODEL_NBR_UUID)
print("Model Number: {0}".format("".join(map(chr, model_number))))
loop = asyncio.get_event_loop()
loop.run_until_complete(run(address, loop))
See examples folder for more code, among other example code for connecting to a TI SensorTag CC2650
History
0.2.0 (2018-04-26)
Project added to Github
First version on PyPI.
Working Linux (BlueZ DBus API) backend.
Working Windows (UWP Bluetooth API) backend.
0.1.0 (2017-10-23)
Bleak created.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for bleak-0.2.2-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28df3306816875748ac3a9ee874d0c987a54db5f76283cf33e60175480b3a010 |
|
MD5 | bd7724a0e15918f551280cace540b5e1 |
|
BLAKE2b-256 | 2dbaada2f7b01be545c2f5f4fd04f77635675e7ab1f56560120f0b068e587b97 |