我正在尝试将树莓pi连接到我的galaxy note,以便使用它进行串行通信。我在这方面有些成功。
首先,我将其配对并通过bluetoothctl
进行信任。然后我运行sudo rfcomm watch hci0
并用cat /dev/rfcomm
打开。我可以使用蓝牙终端连接到树莓皮(只有这个应用程序,其他应用程序都失败了(,从galaxy发送的字符串会显示在cat
窗口中。
我后来不知怎么搞砸了,现在运行sudo rfcomm watch hci0
给了我Can't bind RFCOMM socket: Address already in use
。我不能用sudo rfcomm release hci0
或sudo rfcomm release 0
释放它,因为它给了我不能释放设备:没有这样的设备。同样,cat /dev/rfcomm0
现在也没有给我这样的文件或目录。
我终止了sudo lsof | grep /dev/rfcomm0
列出的进程,这对我使用RFCOMM的能力没有影响。用systemctl daemon-reload
重新加载和用service bluetooth restart
重新启动也没有效果。
我仍然可以扫描其他蓝牙设备,我可以用蓝牙终端连接到树莓皮,但似乎rfcomm
已经不见了。我知道重新启动可以解决这个问题,尽管如果可能的话,我想用程序来完成,而不必使用电源循环。
谢谢你的帮助。
将设备与树莓派配对。。
bluetoothctl
scan on
pair XX:XX:XX:XX:XX:XX
trust XX:XX:XX:XX:XX:XX
agent-on
配置蓝牙设备
hciconfig
要在pi上创建串行,/dev/rfcomm
sudo rfcomm watch hci0
sudo hciconfig hci0 piscan
sudo sdptool add sp
sudo rfcomm watch hci0