How to find visible bluetooth devices in Python?

Ufoguy picture Ufoguy · Jan 8, 2014 · Viewed 29.6k times · Source

I need to find the list of visible Bluetooth devices with their respective details in the range of my Bluetooth modem. I only need to do Bluetooth 2.0 and below. I don't need to do Bluetooth 4.0.

Like you do on an Android phones using "Search for devices".

I'm sorry I can't give any code I tried because I don't know how to do Bluetooth with python.

Answer

Kobi K picture Kobi K · Jan 8, 2014

PyBluez:

from bluetooth import *

print "performing inquiry..."

nearby_devices = discover_devices(lookup_names = True)

print "found %d devices" % len(nearby_devices)

for name, addr in nearby_devices:
     print " %s - %s" % (addr, name)

See also Programming Bluetooth using Python

The important thing is you can use lookup_names = True

from bluez Docs:

if lookup_names is False, returns a list of bluetooth addresses.
if lookup_names is True, returns a list of (address, name) tuples