wrapper around different bluetooth low energy backends


Keywords
bluetooth, low-energy, ble, bluepy, bluetooth-le, bluetooth-low-energy, gatttool, hacktoberfest, python, python3
License
MIT
Install
pip install btlewrap==0.1.1

Documentation

btlewrap

Bluetooth LowEnergy wrapper for different python backends. This gives you a nice API so that you can use different Bluetooth implementations on different platforms.

This library was initially implemented as part of the miflora library, but then refactored out, so that it can be used on other projects as well.

contribution

https://travis-ci.org/ChristianKuehnel/btlewrap.svg?branch=master https://coveralls.io/repos/github/ChristianKuehnel/btlewrap/badge.svg?branch=master

Backends

As there is unfortunately no universally working Bluetooth Low Energy library for Python, the project currently offers support for three Bluetooth implementations:

  • bluepy library (recommended library)
  • bluez tools (via a wrapper around gatttool)
  • pygatt for Bluegiga BLED112-based devices

bluepy

To use the bluepy library you have to install it on your machine, in most cases this can be done via:

pip3 install bluepy

This is the recommended backend to be used. In comparision to the gatttool wrapper, it is much faster in getting the data and also more stable.

bluez/gatttool wrapper

To use the bluez wrapper, you need to install the bluez tools on your machine. No additional python libraries are required. Some distrubutions moved the gatttool binary to a separate package. Make sure you have this binaray available on your machine.

pygatt

If you have a Blue Giga based device that is supported by pygatt, you have to install the bluepy library on your machine. In most cases this can be done via:

pip3 install pygatt

Usage

See the depending projects below on how to use the library.

Depending projects

These projects are using btlewrap: