我跟着this tutorial模仿我的Raspberry pi模型B作为蓝牙键盘。我能够在搜索连接时将pi识别为键盘。 配对部分工作正常,我使用以下命令进行配对:
sudo blue-simple-agent hci0 <mac address>
本教程要求在一个终端中运行PiTooth代码,它将初始化所需的端口(控制和中断端口),读取SDP记录,通告sdp记录,它将监听控制和中断端口中的连接。然后打开另一个终端并使用上面的命令与客户端配对。 它正在配对,但它没有反映在另一个终端,它仍然像等待连接。以下是python代码中侦听连接和连接的部分:
class Bluetooth:
HOST = 0 # BT Mac address
PORT = 1 # Bluetooth Port Number...
def listen(self):
# Advertise our service record
self.service_handle = self. service.AddRecord(self.service_record)
print “Service record added”
# Start listening on the server sockets
self.scontrol.listen(1) # Limit of 1 connection
self.sinterrupt.listen(1)
print “Waiting for a connection”
self.ccontrol, self.cinfo = self.scontrol.accept()
print “Got a connection on the control channel from “ + self.cinfo[Bluetooth.HOST]
self.cinterrupt, self.cinfo = self.sinterrupt.accept()
print “Got a connection on the interrupt channel from “ + self.cinfo[Bluetooth.HOST]
整个代码真的很大,我不想扩大问题。请查看此google doc以获取代码: https://docs.google.com/document/d/1hEyprvN1MyFqyczL9Qh07_-pJjRvBIEkomiJhLHcXiQ/edit?usp=sharing
任何人都可以帮我解决这个问题。或者代码有什么问题。有没有其他方法来监听连接。
答案 0 :(得分:3)
问题已解决。实际上这是一个开箱即用的解决方案。问题出在operating power of the pi
上。 pi由笔记本电脑的USB端口供电,电压约为4.4V。 USB端口通常仅提供500 mA,5 V. Raspberry pi需要约4.75至5.25V的电压源和700至1000 mA范围内的电流,以获得最佳性能。确切地说,Raspberry Pi需要多少电流(mA)取决于您连接到它的内容。关于电源的reference。我只是更改了源{I} fetched power via a 1000 mA 5v adapter
并检查了pi中的电压,它大约是4.64V并且工作正常。