Bluetooth Python extension module

pip install PyBluez==0.23



Python extension module allowing access to system Bluetooth resources.


# 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 =

for address, name in devices.items():
    print("name: {}, address: {}".format(name, address))

GNU/Linux and Windows XP examples:

GNU/Linux only examples:

GNU/Linux experimental BLE support:


Please use the mailing list at


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 install

for Bluetooth Low Energy support:

pip install -e .[ble]



  • 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


  • 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):


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