#bluetooth #ble #bluez #dbus


Generated bindings for talking to BlueZ on Linux

3 unstable releases

0.2.1 Jan 8, 2021
0.2.0 Oct 30, 2020
0.1.0 Oct 18, 2020

#500 in Hardware support

Download history 101/week @ 2021-08-08 72/week @ 2021-08-15 153/week @ 2021-08-22 69/week @ 2021-08-29 124/week @ 2021-09-05 120/week @ 2021-09-12 57/week @ 2021-09-19 135/week @ 2021-09-26 53/week @ 2021-10-03 48/week @ 2021-10-10 123/week @ 2021-10-17 87/week @ 2021-10-24 79/week @ 2021-10-31 86/week @ 2021-11-07 91/week @ 2021-11-14 93/week @ 2021-11-21

470 downloads per month
Used in 12 crates (via bluez-async)



Generated bindings for BlueZ

crates.io page docs.rs page

This crate contains async bindings for Bluez.

Bindings are generated from introspection data, using dbus-codegen. This means that it is relatively easy to maintain, but it only covers interfaces that I have the devices for.

Adding Interfaces

If there is an interface that you need which is not generated, it should be reasonably straightforward to generate them and send a pull request. See introspect.sh for details. It's also perfectly reasonable to generate the interfaces you need and vendor them into your project.

Future Direction

Only async bindings are generated. Blocking bindings could also be generated, but I'm unlikely to use them, so they would need to be contributed by someone else.

It would be nice to generate some strongly typed bindings around get_managed_objects() for bulk-fetching properties and add_match() for subscribing to events.


~23K SLoC