资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

linux蓝牙连接命令,linux连接蓝牙耳机

怎样在Linux中使用蓝牙

 一,蓝牙存储设备

创新互联主要从事成都网站设计、成都做网站、外贸网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务长垣,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-86922220

蓝牙适配器: ISSC芯片, USB接口(市面上还有其他的一些品牌,大多没有问题)

蓝牙手机:索爱T628

蓝牙耳机:Jabra BT250(大陆地区型号是FS258,大概照顾中国人对BT的特殊理解和258的吉利数字)

1,加载蓝牙适配器

插入USB口之后,可以使用lsusb命令,看到:

Bus 004 Device 003: ID 1131:1001 Integrated System Solution Corp.

这是,运行hciconfig可以看到:

hci0: Type: USB

BD Address: 00:11:67:02:1A:03 ACL MTU: 678:8 SCO MTU: 48:5

DOWN

RX bytes:142289 acl:884 sco:0 events:823 errors:0

TX bytes:13302 acl:494 sco:0 commands:151 errors:0

运行:

hciconfig hci0 up

可以激活借口(这一步不做,hcitool scan无法运行)

3,配置bluez

默认的配置文件放在/etc/bluetooth目录

hcid.conf和pin不需要修改,安全方式已经被设置成auto,这是为了方便连接,用户可以自己修改,推荐不做修改,以防止有些设备连接不上。

4,重启bluetooth服务。

/etc/rc.d/init.d/bluetooth stop

/etc/rc.d/init.d/bluetooth start

5,扫描设备

运行hcitool scan可以得到:

Scanning ...

00:01:EC:0C:D2:00 Tree's T628

6,修改配置文件:

修改/etc/bluetooth/rfcomm.conf

将里面的:

device 11:22:33:44:55:66;

修改成hcitool scan的结果,也就是:

device 00:01:EC:0C:D2:00

保存退出。

7,创建设备:

运行

rfcomm_create_dev。

8,添加通道:

sdptool add --channel=1 DID SP DUN LAN FAX OPUSH FTP HS HF SAP NAP GN PANU HID CIP CTP A2SRC A2SNK SYNCML NOKID PCSUITE SR1

后面的参数不一定被支持,但是以防有些服务没有被打开,所以,干脆全部打开了。

rfcomm bind /dev/rfcomm0 电话的地址 通道(在rfcomm.conf中配置)

这里的命令应该写成:

rfcomm bind /dev/rfcomm0 00:01:EC:0C:D2:00 1

9,连接手机:

hcitool cc 电话的地址

也就是

hcitool cc 00:01:EC:0C:D2:00

这时候,可以看到手机上的蓝牙连接呈联通状态。

10,从计算机发送文件:

obex-send abc.jpg

操作系统会弹出提示框,让你选择要发送的目标。

同时可以看到手机会弹出提示框,询问是否接受文件。

11,手机的配置:

需要在手机上进行一下配置:

连接-蓝牙-匹配装置-添加装置。

会自动扫描到PC上的适配器。

如果需要填入识别码就填写123。上面已经设置了。

这时候,可以看到手机已经成功的添加蓝牙装置。

12,从手机发送文件。

在PC机上启动obex-server,会看到系统托盘出现一个小图标。

完成上面的工作后,可以进入手机的:

多媒体-我的影集

选择一张图片。

然后,“发送”-“通过蓝牙”

看到有刚才扫描到的蓝牙适配器。

然后,就可以发送文件了。

13,使用软件管理手机信息。

参考gnokii软件的文档

二、蓝牙耳机。

1,同时按住jabra 250上面的“电话键”和“音量增大键”,大约8秒,看到蓝灯常亮

1,扫描耳机,得到bdaddress

hcitool scan

3,配置工作:

modprobe snd_bt_sco

hciconfig hci0 void 0x0060

btsco bdaddress (这里的bdaddress就是扫描出来的结果)

btsco运行后,会弹出对话框,要求输入耳机的pin,jabra 250为0000,可以在说明书上找到。

4,建立联接后,设备被映射成/dev/dsp1。

以beep为例,

插件-输出,选择使用alsa驱动,点开“首选项”,音频设置部分就可以看到btsco:hw0,1之类的信息,选择这个即可。

然后播放一首歌,尝试一下无线的快乐吧。

然后适当的配置你所要使用的播放器之类的就可以了。

解决Linux无法连接蓝牙耳机Bose QuietComfort 35(QC35)的问题

切换到Arch也有一段时间了,一直在用的QC35也又一次遇到了蓝牙配对的问题。以前都是用Blueman,或者直接连接有线,但是问题只是被隐藏了,这次还是好好把这个问题解决了一下。

Linux下连接蓝牙设备的方法可以参照 Arch Wiki:Bluetooth ,我使用的蓝牙设备是USB CSR8510蓝牙适配器,按页面说明安装好软件包后,启动蓝牙服务,进入bluetoothctl,耳机打开配对模式,scan on查找到我的耳机的MAC,pair 04:52:C7:5B:CB:65,出现问题:

如果你在蓝牙设置界面进行配对尝试,不同桌面也有不同的错误提示,反正就是无法完成配对。如果使用Blueman等软件,有机会可以通过多次重试成功连接,但是问题还是间歇出现,并不能治本。

百度是找不到什么好解决方案的,直接Google,不一会就找到了有用的解决方法, Pairing Bose QC 35 over Bluetooth on Fedora ,问题上看基本就是我的问题,最高票的回答也很简单,QC35声称支持低功耗蓝牙(LE)但不支持低功耗模式下的配对,Bluez也还不支持明明配对一个LE设备,却要切换到BR模式来配对(大概是这个意思),除非你在配置文件里指定所有设备都应该工作在BR模式,所以打开配置文件/etc/bluetooth/main.conf(没有的话新建一个),找到下面的

将 # ControllerMode = dual改为ControllerMode = bredr,然后保存,对于新建的文档,直接输入下面的然后保存

然后重启bluetooth服务

现在你应该能在bluetooth里愉快地配对了----才怪,你还需要删除以前的配对设置,否则会出现org.bluez.Error.AuthenticationRejected错误

再次尝试配对,信任,连接,如果连接时出现Failed to connect: org.bluez.Error.Failed错误,那是你没装pulseaudio-bluetooth包,无法支持A2DP协议,装一个再试就可以了。

成功连接后声音输出可能会默认走的是HSP/HFP,音质会极差,在音频设置里切换到A2DP就正常了。更多蓝牙音频设备的设置可以查看 Arch Wiki:Bluetooth headset

关于蓝牙协议可以查看百科,或者这里有简短的科普 蓝牙协议分析(1)_基本概念

关于这里bluetooth和QC35在配对时鸡同鸭讲的问题,给出解决问题的人也表示自己的蓝牙鼠标是LE,为了使用他后来把配置文件里的ControllerMode删掉了,但是耳机和鼠标都没受影响,他猜想可能配对后的设备是不受配置文件的影响的。

linux下有没有用命令直接配对蓝牙设备的命令的

运行hciconfig查看蓝牙信息,

运行hcitool dev可以看到我们的蓝牙设备的硬件地址

运行hcitoo --help 可以查看更多相关命令

然后我们激活它:sudo hciconfig hci0 up

然后我们开始扫描了:hcitool scan

运行rfcomm --help 可以查看用法

接着我们连接它:sudo cat /dev/rfcomm0

简单解决Linux下蓝牙耳机的连接问题

在Ubuntu或Mint下,一些版本的系统会出现蓝牙成功配对耳机,但是音频设置中不会出现蓝牙耳机的输出的选项

此时如果反复重连,重新配对等操作有机会正常连接上,但是一次成功,一旦断开后就再也无可能再连接,问题会诡异地再出现。

简单解决方法,系统缺少pulseaudio-bluetooth服务,安装

$ sudo apt install pulseaudio-bluetooth -y

重启pulseaudio服务

$ pulseaudio -k

重新连接你的蓝牙耳机应该就能解决问题

或者你甚至不用安装pulseaudio-bluetooth服务,安装blueman

使用blueman取代系统的蓝牙管理器来管理你的设备就可以了

Linux下的蓝牙键盘对接

注:以下内容主要来自

1、lsusb看看能不能找到本机的蓝牙/USB蓝牙

2、 bluetoothctl -a

注意,这个指令用root权限,否则可能会找不到设备

进入[bluetooth]#提示符

[bluetooth]# power on激活蓝牙

[bluetooth]# agent KeyboardOnly

[bluetooth]# default-agent

告诉主机去找蓝牙键盘设备

[bluetooth]# pairable on进入配对模式,第一次才需要

[bluetooth]# scan on 开始扫描

[bluetooth]# pair 01:02:03:04:05:06 后面的mac地址是你的键盘mac地址

[bluetooth]# trust 01:02:03:04:05:06 把键盘设置为可信设备

[bluetooth]# connect 01:02:03:04:05:06 进行对接

显示yes就对接成功了。

补充:以下内容针对罗技K系列蓝牙,如k380这种可以对接多个蓝牙设备的

这类设备有多个蓝牙服务,但是mac地址只有一个

因此,如果不是默认连接的linux主机,则每次都需要重新去连接。也就是第一次配对成功之后,每次power on一下,然后scan on,然后键盘切换到对应的F2或者F3。具体原因我也不明白为什么。

如果是一对一的蓝牙键盘,就不会出现这个问题。


当前标题:linux蓝牙连接命令,linux连接蓝牙耳机
文章来源:http://cdkjz.cn/article/hsdpcp.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220