-
Notifications
You must be signed in to change notification settings - Fork 115
D Bus Bindings for Python
Barry Byford edited this page Jan 24, 2021
·
1 revision
As Bluezero uses the D-Bus API from Bluez, then which Python D-Bus bindings to use is a key element. This list is not in any particular order. It is here just to track what is around as possible alternatives.
Library | URL | Notes |
---|---|---|
dbus-python | https://dbus.freedesktop.org/doc/dbus-python/ | The reference implementation but event they question if it is the right library for people to use |
GDBus | https://developer.gnome.org/gio/stable/gdbus-convenience.html | Is probably on your linux system already. uses the GLib main loop and object model |
pydbus | https://pypi.org/project/pydbus/ | Nicely pythonic for client application. Slightly clunky when needing to publish to the system bus such as BlueZ advertisements or GATT server |
DBussy | https://github.com/ldo/dbussy | Uses Python own “asyncio” event-loop architecture |
python-dbus-next | https://github.com/altdesktop/python-dbus-next | Zero dependencies and pure Python 3. Support for multiple IO backends including asyncio and the GLib main loop |
Tx DBus | https://github.com/cocagne/txdbus | Tx DBus is a native-python implementation of the DBus protocol on top of the Twisted networking engine |
python-adbus | https://github.com/ccxtechnologies/adbus | D-Bus Binding for Python utilizing the Python's asyncio module. |