日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > Ubuntu >内容正文

Ubuntu

命令行 蓝牙_Ubuntu使用BlueZ驱动蓝牙dongle

發(fā)布時(shí)間:2023/12/13 Ubuntu 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 命令行 蓝牙_Ubuntu使用BlueZ驱动蓝牙dongle 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

藍(lán)牙dongle即藍(lán)牙適配器,一般為USB接口,通過(guò)USB連接到PC等設(shè)備。連接dongle后,PC即可使用驅(qū)動(dòng)程序控制dongle連接其它藍(lán)牙設(shè)備。本文主要介紹在Ubuntu系統(tǒng)中安裝BlueZ的方法及藍(lán)牙的使用。

01

獲取BlueZ

BlueZ是Linux系統(tǒng)的官方藍(lán)牙協(xié)議棧,提供對(duì)核心藍(lán)牙層和協(xié)議的支持。

當(dāng)前的BlueZ由許多獨(dú)立的模塊組成:

  • 藍(lán)牙內(nèi)核子系統(tǒng)

  • L2CAP和SCO音頻內(nèi)核層

  • RFCOMM,BNEP,CMTP和HIDP內(nèi)核實(shí)現(xiàn)

  • HCI?UART,USB,PCMCIA和虛擬設(shè)備驅(qū)動(dòng)

  • 通用藍(lán)牙以及SDP庫(kù)以及守護(hù)進(jìn)程

  • 配置和測(cè)試程序

  • 協(xié)議解碼及分析工具

BlueZ軟件包可以直接在官網(wǎng)獲取,BlueZ源碼可以在Git倉(cāng)庫(kù)獲取。

BlueZ網(wǎng)站:

http://www.bluez.org/

Git倉(cāng)庫(kù):

https://git.kernel.org/pub/scm/bluetooth/bluez.git

02

編譯安裝

解壓軟件包

在BlueZ網(wǎng)站下載的軟件包為.tar.xz后綴的壓縮文件,可以通過(guò)tar Jxvf命令進(jìn)行解壓。

tar Jxvf bluez-5.54.tar.xz

????-J?????? --處理xz格式的壓縮文件

????-x?????? --從壓縮包中提取文件

????-v?????? --打印處理信息

????-f?????? --使用壓縮文件作為輸入

解壓后可以查看軟件包目錄下的README文件了解BlueZ軟件包的使用方法。

安裝依賴庫(kù)

編譯BlueZ需要以下軟件包:

????-GCC編譯器

????-GLib庫(kù)

????-D-Bus庫(kù)

????-udev庫(kù)(可選)

????-readline(命令行客戶端)

在基于debian的系統(tǒng)中,可以通過(guò)以下命令安裝上述庫(kù)。

sudo apt-get build-dep bluez

安裝時(shí)提示以下信息表示缺少源碼鏈接。

Reading package lists... Done

E: You must put some 'source' URIs in your sources.list

可以在UI界面中打開(kāi)“Software & Updates”。勾選“Source code”,然后點(diǎn)擊“Close”。

在彈出窗口中點(diǎn)擊“Reload”,重新加載軟件列表。

更新完成后再次執(zhí)行安裝命令即可。

也可以直接修改/etc/apt/sources.list文件,在文件中添加deb-src開(kāi)頭的軟件源。

配置安裝目錄

解壓軟件包后進(jìn)入軟件包目錄,通過(guò)configure文件配置安裝目錄。

./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var

????--prefix=/usr????????????????將/usr設(shè)為默認(rèn)目錄

????--mandir=/usr/share/man????????設(shè)置文檔目錄

????--sysconfdir=/etc? ? ? ? ?設(shè)置只讀數(shù)據(jù)目錄

????--localstatedir=/var??????設(shè)置可編輯數(shù)據(jù)目錄

編譯及安裝

設(shè)置完成后通過(guò)make和make install命令進(jìn)行編譯和安裝。

make && sudo make install

安裝過(guò)程會(huì)創(chuàng)建/usr/libexec/bluetooth目錄,藍(lán)牙程序會(huì)存放至該目錄中。

安裝完成后系統(tǒng)會(huì)直接啟動(dòng)藍(lán)牙進(jìn)程。

ps aux | grep bluetooth

查看藍(lán)牙進(jìn)程信息。

03

使用dongle

選擇“Setting”,進(jìn)入“Bluetooth”界面,系統(tǒng)中沒(méi)有藍(lán)牙設(shè)備時(shí),會(huì)提示插入適配器以使用藍(lán)牙功能。

此時(shí)接入藍(lán)牙適配器將會(huì)自動(dòng)開(kāi)始掃描,找到待連接的設(shè)備后點(diǎn)擊連接即可。

查看USB設(shè)備

lsusb

查看接入的USB設(shè)備,打印信息如下:

Bus 002 Device 007: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)

查看無(wú)線設(shè)備

rfkill list

查看可用的無(wú)線設(shè)備,打印信息如下:

3: hci0: Bluetooth

?????? Soft blocked: no

?????? Hard blocked: no

如果藍(lán)牙設(shè)備顯示為blocked,則需要先啟用藍(lán)牙設(shè)備。

3: hci0: Bluetooth

?????? Soft blocked: yes

?????? Hard blocked: no

rfkill unblock [identifier]

啟用藍(lán)牙設(shè)備,identifier為設(shè)備的標(biāo)識(shí),此處為3。

配置HCI設(shè)備

hciconfig為HCI設(shè)備配置程序,直接發(fā)送hciconfig命令可以查看hci設(shè)備的信息。

hciconfig -a

查看HCI設(shè)備的詳細(xì)信息。

hciconfig hciX up

啟用hciX(hci0, hci1, ...),需要管理員權(quán)限。

hciconfig hciX down

關(guān)閉hciX(hci0, hci1, ...),需要管理員權(quán)限。

參考素材:

BlueZ網(wǎng)站

http://www.bluez.org/about/

ARM平臺(tái)上藍(lán)牙協(xié)議棧Bluez的移植使用和配置

https://blog.csdn.net/gatieme/article/details/48751743

https://blog.csdn.net/colorant/article/details/2590654

總結(jié)

以上是生活随笔為你收集整理的命令行 蓝牙_Ubuntu使用BlueZ驱动蓝牙dongle的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。