我的电脑上有一个 RPi 和一个普通的 Debian,两者都使用蓝牙 Python 模块进行通信。两者都有一些蓝牙 USB 适配器。
我可以使用电脑作为服务器,RPi作为客户端,这种连接效果很好。但是我无法反之亦然,我检查了我的 rfcomm.conf
和 main.conf
,但两者似乎都没问题。
还有其他陷阱吗?
#Server.py
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()
#Client.py
import bluetooth
bd_addr = #myspecificmacaddress
port = 1
sock=bluetooth.BluetoothSocket( bluetooth.RFCOMM )
sock.connect((bd_addr, port))
sock.send("hello!!")
sock.close()
更准确地说:在 RPi 上运行 Client.py
和在 PC 上运行 Server.py
工作正常,反之亦然,显然使用正确的 MAC,简单地说: bluetooth.btcommon.BluetoothError:(112,'主机已关闭')
最佳答案
我知道这是一篇旧帖子,但对于其他可能需要它的人来说,同样的事情也发生在我身上,所以我必须这样做:
$ sudo hciconfig hci0 piscan
现在它变得可被发现并能够发送和接收数据
关于python - 与 RPi 成功建立蓝牙连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31123540/