尝试第一次连接(参考:入坑树莓派(2)——树莓派4B与手机蓝牙通信_树莓派蓝牙连接_取不到名字的Z先生的博客-CSDN博客
树莓派之蓝牙编程_树莓派蓝牙编程_科技虾的博客-CSDN博客
)
首先进行蓝牙配对打开vnc viewer登陆进入树莓派,左上角图标打开蓝牙
然后点击Make Discoverable,打开手机蓝牙找到树莓派的蓝牙名称,进行配对
打开terminal 安装蓝牙相关包
sudo apt-get install pi-bluetooth bluez bluez-firmware blueman
安装成功
添加用户到蓝牙组(我这里的用户名是raspberrypi,要根据自己的用户名进行选择)
sudo usermod -G bluetooth -a raspberry
没报错应该添加成功
sudo reboot 重启
重启之后,有时画面会出现问题,再重启一下试试,之后启动或者添加SSP(serial port profile),打开蓝牙配置文件
sudo nano /etc/systemd/system/dbus-org.bluez.service
按照位置添加画红线的两句话
第一行添加-C,第二行直接添加:
ExecStart=/usr/libexec/bluetooth/bluetoothd -C
ExecStartPost=/usr/bin/sdptool add SP
之后点击Ctrl+X,输入y,回车就可以保存
重启树莓派:sudo reboot
在手机端下载一个蓝牙调试器(链接:)(我用的是安卓手机)
在树莓派的terminal输入命令(作用:等待蓝牙设备连接)
首先输入命令hciconfig来查看自己的蓝牙名称
名称为默认的hci0,然后输入
sudo rfcomm watch hci0等待蓝牙设备连接
第一个蓝牙调试助手:蓝牙调试宝APP下载-蓝牙调试宝安卓版下载v2.2.7_电视猫
打开手机蓝牙调试器,搜索并且连接树莓派,然后手机给树莓派发送数据
出现问题,一直搜索不到树莓派设备,树莓派终端也一直等待连接:
多次尝试,取消树莓派之前在手机端的配对,尝试搜索链接,还是无法搜索得到,在终端Ctrl+C可以中断指令运行
发现错误:蓝牙开启异常,在输入命令查看sudo systemctl status bluetooth之后看到下面情况:无法解决,
先不用理会,因为在树莓派4b当中使用的时低功耗的蓝牙模块,这个功能是用不到的
在树莓派终端运行sudo hciconfig hci0 piscan或者
输入sudo rfcomm watch hci0等待蓝牙设备连接
在手机端的蓝牙调试宝中等待一会搜索到树莓派蓝牙,点击连接,如果不能连接,重新在蓝牙调试器中扫描树莓派设备再连接,连接时耐心一些,等待一会,大约1-2分钟,连接完毕,在树莓派终端输入ls /dev可以看到下面内容:
在手机端发送信息会出现:可以看到,发送一个数据后面就会自动回复数据
之后在树莓派终端安装minicom:sudo apt-get install minicom
树梅派串口工具 minicom_jiangchao3392的博客-CSDN博客
配置树莓派串口为rfcomm0 :sudo minicom-s ,选择serial port也就是第三项
之后推出minicom,点击右上角x号关闭终端
之后再重新打开终端,输入:sudo minicom
等待一段时间,由手机端蓝牙调试宝输入数据后不自动回复,直接在minicom界面输入数据就可以在手机端看到,并且我们打入的字符是不显示在minicom界面窗口的
输入数据也是这样,什么都没有,在手机端显示输入的数据。在手机端输入数据不在自动回复数据,下面图片中蓝色是手机端发送的数据,绿色是树莓派终端minicom界面输入的数据
尝试第二个蓝牙调试工具(链接:蓝牙调试器app下载-蓝牙调试器专业版下载v1.95 安卓版-100手游网)效果更好:
打开工具蓝牙调试器,进行设备连接,首先搜索,若果没有,在树莓派终端输入:udo hciconfig hci0 piscan,再搜索,还不行就输入:输入sudo rfcomm watch hci0等待蓝牙设备连接
等待搜索,点击连接,然后按照上面第一个蓝牙调试工具的步骤就行了
只不过这个是双向显示,在手机端输入的数据可以在minicom界面显示,一开始没打开minicom时就会出现:在手机端输入对应的数据,后面就会自动回复相同的数据
在minicom界面,手机端输入的数据可以在minicom界面显示,电脑端输入的数据在手机上显示,
但是不可以在minicom界面显示:
在minicom界面接收到的手机端发送来的信息数据: