Не удается запустить сценарий примера сервера RFCOMM python-bluez

Я пытаюсь построить связь Bluetooth-связи между моим Android-приложением и малиной Pi 3. Я пытаюсь использовать pybluez на моей малиновой пи. Моя проблема в том, что когда я пытаюсь запустить пример-код, включенный в pybluez (см. Ниже), я получаю следующее сообщение об ошибке:

Traceback (most recent call last): File "/usr/share/doc/python-bluez/examples/simple/rfcomm-server.py", line 20, in <module> profiles = [ SERIAL_PORT_PROFILE ], File "/usr/lib/python2.7/dist-packages/bluetooth/bluez.py", line 176, in advertise_service raise BluetoothError (str (e)) BluetoothError: (2, 'No such file or directory') 

Это сценарий, который я пытаюсь запустить: похоже, проблема в методе advert_service …

 # file: rfcomm-server.py # auth: Albert Huang <albert@csail.mit.edu> # desc: simple demonstration of a server application that uses RFCOMM sockets # # $Id: rfcomm-server.py 518 2007-08-10 07:20:07Z albert $ from bluetooth import * server_sock=BluetoothSocket( RFCOMM ) server_sock.bind(("",PORT_ANY)) server_sock.listen(1) port = server_sock.getsockname()[1] uuid = "94f39d29-7d6d-437d-973b-fba39e49d4ee" advertise_service( server_sock, "SampleServer", service_id = uuid, service_classes = [ uuid, SERIAL_PORT_CLASS ], profiles = [ SERIAL_PORT_PROFILE ], # protocols = [ OBEX_UUID ] ) print "Waiting for connection on RFCOMM channel %d" % port client_sock, client_info = server_sock.accept() print "Accepted connection from ", client_info try: while True: data = client_sock.recv(1024) if len(data) == 0: break print "received [%s]" % data except IOError: pass print "disconnected" client_sock.close() server_sock.close() print "all done" 

Интересно, что следующий скрипт работает безупречно, но я не могу подключиться к Android, потому что я не могу установить порт и т. Д. Для сокета в Android.

 import bluetooth server_sock=bluetooth.BluetoothSocket( bluetooth.RFCOMM ) port = 1 server_sock.bind(("",port)) server_sock.listen(1) client_sock,address = server_sock.accept() print("Accepted connection from ",address) data = client_sock.recv(1024) print("received [%s]" % data) client_sock.close() server_sock.close() 

Что может быть причиной сообщения об ошибке, которое я получаю для официального сценария примера ??? Я уже выполнил описанные здесь шаги: https://stackoverflow.com/a/14827036/6149322

Спасибо за вашу помощь!

    Этот вопрос может быть старым, но, возможно, это помогает кому-то: я думаю, у вас просто нет всего, что вам нужно. Чтобы pybluez работал правильно, вам нужны два пакета bluetooth и libbluetooth-dev .

     sudo apt-get install bluetooth libbluetooth-dev