2017-12-06 19 views
0

みなさんこんにちは!python:bluetootherror:(111、 'connection refused')

携帯電話をBluetooth経由でラズベリーパイ3に接続すると問題が発生しているようです。 私のコードに問題があると思います。

は、ここに私のコード

私はラズベリーパイに携帯電話からの値を受け取りたい
import bluetooth 

from bluetooth import * 

serverMAC = 'xx:xx:xx:xx:xx:xx' 

port = 1 

s = blutooth.BluetoothScocket(bluetooth.RFCOMM) 

s.connnect((serverMAC, port) 

です。以下のコードをしようとする前に

bluetooth.btcommon.BluetoothError: (111, 'Connection refused') 

答えて

1

、必ずあなたのスクリプト実行しているデバイス上のBTアダプタをオンにすると、ターゲットBluetoothデバイスが検出モードになっている(それのアダプタがオンになり、それが発見に機能を放送しています作ります)。

ターゲットデバイスに正しいポートを使用していることを確認してください。利用可能なデバイス上で検出を実行し、MACを検出されたデバイスの1つに一致させ、アドレス上でfind_serviceを発行することによって、これを行うことができます。出典:Sending messages or datas with bluetooth via python

変更されますMACを気にし、ローカルマシン上でこれをしようとしましたので、意志のプロファイル、あなたはRFCOMMは、お使いのデバイスを接続しようとする前にそれを公開することを確認したいので、もし:

from bluetooth import * 
devices = discover_devices() 
for device in devices: 
    print([_ for _ in find_service(address=device) if 'RFCOMM' in _['protocol'] ]) 
# now manually select the desired device or hardcode its name/mac whatever in the script 
bt_addr = ... 
port = [_ for _ in find_service(address=bt_addr) if 'RFCOMM' in _['protocol']][0]['port'] 
s = BluetoothSocket(bluetooth.RFCOMM) 
s.connect((bt_addr, port)) 
関連する問題