Python extension module allowing access to system Bluetooth resources.
https://github.com/karulis/pybluez
EXAMPLES:
# simple inquiry example
import bluetooth
nearby_devices = bluetooth.discover_devices(lookup_names=True)
print("found %d devices" % len(nearby_devices))
for addr, name in nearby_devices:
print(" %s - %s" % (addr, name))
# bluetooth low energy scan
from bluetooth.ble import DiscoveryService
service = DiscoveryService()
devices = service.discover(2)
for address, name in devices.items():
print("name: {}, address: {}".format(name, address))
GNU/Linux and Windows XP examples:
- examples/simple/inquiry.py - Detecting nearby Bluetooth devices
- examples/simple/sdp-browse.py - Browsing SDP services on a Bluetooth device.
- examples/simple/rfcomm-server.py - establishing an RFCOMM connection.
- examples/simple/rfcomm-client.py - establishing an RFCOMM connection.
- examples/advanced/read-local-bdaddr.py - provides the local Bluetooth device address.
GNU/Linux only examples:
- examples/simple/l2capserver.py
- examples/simple/l2capclient.py
- examples/simple/asynchronous-inquiry.py
- examples/bluezchat
- examples/advanced/inquiry-with-rssi.py
- examples/advanced/l2-unreliable-server.py
- examples/advanced/l2-unreliable-client.py
GNU/Linux experimental BLE support:
CONTACT:
- Please use the mailing list at
INSTALLATION:
Use pip(there are also binaries for Windows platform on PyPi):
pip install pybluez
For experimental Bluetooth Low Energy support(only for Linux platform - for additional dependencies please take look at: ble-dependencies):
pip install pybluez[ble]
For source installation:
python setup.py install
for Bluetooth Low Energy support:
pip install -e .[ble]
BUILD REQUIREMENTS:
GNU/Linux:
- Python 2.3 or more recent version
- Python distutils (standard in most Python distros, separate package python-dev in Debian)
- BlueZ libraries and header files
Windows:
- Microsoft Windows XP SP1 or Windows Vista/7/8/8.1
- Visual C++ 2010 Express for build for Python 3.3 or newer
- Visual C++ 2008 Express for build for Python 3.2 or older
- In order to build 64-bit debug and release executables, Visual Studio 2008/2010 Standard Edition is required
- Widcomm BTW development kit 5.0 or later (Optional)
- Python 2.3 or more recent version
Mac OS X (Unstable - tested only on OS X 10.10/10.11):
- Python 2.3 or later
- Xcode
- PyObjc 3.1b or later (https://pythonhosted.org/pyobjc/install.html#manual-installation)
LICENSE:
PyBluez is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
PyBluez is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with PyBluez; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA