树莓派ubuntu:手机蓝牙连接树莓派开发板,取消配对验证操作,自动完成连接

蓝牙取消配对验证

我们使用 bt-agent tool来实现蓝牙自动配对连接

bt-agent tool:
bt-agent是一个用于对蓝牙设备进行管理和操作的工具。它提供了一组命令行工具,可以控制和配置蓝牙设备的各种功能和特性。bt-agent工具可以在Linux系统上使用,并且需要安装BlueZ蓝牙库。

1. 开启bt-agent

bt-agent --capability=NoInputNoOutput 

2. 查看bt-agent是否已开启

ps -aux | grep bt-agent

3. 创建脚本

sudo vim /usr/local/bin/btagent_auto.sh
#!/bin/sh
bt-agent --capability=NoInputNoOutput

保存并退出

vim(esc :qw!)

4. 添加执行权限

sudo chmod +x /usr/local/bin/btagent_auto.sh

5. 开机自启动

5.1 创建service文件

sudo vim /etc/systemd/system/btagent_auto.service

文件内容

[Unit]
Description=Bt Agent Auto Service
 
[Service]
ExecStart=/usr/local/bin/btagent_auto.sh
 
[Install]
WantedBy=multi-user.target

5.2 启动服务并设置开机自启

sudo systemctl daemon-reload
sudo systemctl start btagent_auto.service
sudo systemctl enable btagent_auto.service

5.3 重启系统检查是否成功自动运行

sudo systemctl status btagent_auto.service

5.4 停止该服务并禁用开机自启

如果要取消自启动可按如下操作:

sudo systemctl stop btagent_auto.service
sudo systemctl disable btagent_auto.service

使用手机蓝牙连接树莓派开发板测试,现在应该可以不需要配对操作就可以连接成功了

6. 介绍其他两种方式替代bt-agent tool

6.1 bluetoothctl内置的agent

bluetoothctl
Agent registered
[bluetooth]# agent off
Agent unregistered
[bluetooth]# agent NoInputNoOutput
Agent registered
[bluetooth]# default-agent
Default agent request successful

6.2 Bluetoothctl options

bluetoothctl --agent=NoInputNoOutput
Agent registered
[bluetooth]# default-agent
Default agent request successful

你可能感兴趣的:(机器人开发,ubuntu,linux,树莓派,蓝牙)