GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - hbldh/bleak: A cross platform Bluetooth Low Energy Client for Python using asyncio

BranchesTags
Open more actions menu

Latest commit

 

History

1,811 Commits
1,811 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
.vscode
.vscode
 
 
bleak
bleak
 
 
docs
docs
 
 
examples
examples
 
 
testbed
testbed
 
 
tests
tests
 
 
typings
typings
 
 
.editorconfig
.editorconfig
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
.readthedocs.yml
.readthedocs.yml
 
 
AUTHORS.rst
AUTHORS.rst
 
 
Bleak_logo.png
Bleak_logo.png
 
 
Bleak_logo2.png
Bleak_logo2.png
 
 
CHANGELOG.rst
CHANGELOG.rst
 
 
CONTRIBUTING.rst
CONTRIBUTING.rst
 
 
LICENSE
LICENSE
 
 
README.rst
README.rst
 
 
mypy-android.ini
mypy-android.ini
 
 
pyproject.toml
pyproject.toml
 
 
pyrightconfig-android.json
pyrightconfig-android.json
 
 
setup.cfg
setup.cfg
 
 
uv.lock
uv.lock
 
 

Repository files navigation

Bleak

Build and Test PyPI - Downloads Documentation Status
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

$ 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:

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

About

A cross platform Bluetooth Low Energy Client for Python using asyncio

Topics

asyncioblebluetoothbluetooth-low-energycross-platformplatform-independentpythonpython3

Resources

Readme
MIT license

Contributing

Contributing
Activity

Stars

2.6k stars

Watchers

30 watching

Forks

377 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.