簡體   English   中英

有沒有辦法找出哪個藍牙設備插入哪個USB端口?

[英]Is there a way to find out which Bluetooth device is plugged into which USB port?

我在 BlueZ 上使用了兩個藍牙適配器,兩者都是相同的設備,但天線類型不同,有什么方法可以找出 BlueZ (hci0/hci1) 上的標識符指的是哪個 USB 端口?

我可以通過 hcitool dev 發現設備的 MAC 地址,所以如果有辦法發現具有該 MAC 地址的適配器連接到哪個 USB 端口,那也可以解決我的問題。

由於兩個適配器的型號相同,因此 lsusb 不提供我可以使用的任何識別信息。

使用 Ubuntu 16.04。 我正在尋找任何形式的解決方案,無論是 shell 命令還是 java/C/python/etc。

我不知道這是否是您所需要的,但是您應該可以通過以下命令找到有關所連接設備的詳細信息:-

hciconfig -a

這將為您提供足夠的詳細信息來識別特定設備。 您可以將其添加到 shell 腳本中,並使用一些字符串操作和條件來確定您的設備。

就我而言,我連接了一個 BT 加密狗,並運行hciconfig -a給出以下輸出:-

hci0:   Type: BR/EDR  Bus: USB
    BD Address: 00:16:A4:06:AC:E6  ACL MTU: 310:10  SCO MTU: 64:8
    UP RUNNING 
    RX bytes:670 acl:0 sco:0 events:46 errors:0
    TX bytes:2495 acl:0 sco:0 commands:46 errors:0
    Features: 0xff 0xff 0xcf 0xfe 0xdb 0xff 0x5b 0x87
    Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 
    Link policy: RSWITCH HOLD SNIFF PARK 
    Link mode: SLAVE ACCEPT 
    Name: 'youssif'
    Class: 0x0c0000
    Service Classes: Rendering, Capturing
    Device Class: Miscellaneous, 
    HCI Version: 4.0 (0x6)  Revision: 0x22bb
    LMP Version: 4.0 (0x6)  Subversion: 0x22bb
    Manufacturer: Cambridge Silicon Radio (10)

如果這還不夠,您還可以使用lsusbhciconfig命令的組合來確定哪個設備連接到哪個端口。

該答案應該為您指明正確的方向,但並未為您提供完整的解決方案。

您應該能夠使用/sys/class/bluetooth下的“sys”文件系統的內容:

$ ls -lA /sys/class/bluetooth/
total 0
lrwxrwxrwx  1 root root 0 Dec  8 09:35 hci0 -> ../../devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3:1.0/bluetooth/hci0
lrwxrwxrwx  1 root root 0 Dec  8 09:35 hci1 -> ../../devices/platform/soc/3f201000.serial/tty/ttyAMA0/hci1

那是來自我的 Raspberry Pi,在 /dev/ttyAMA0 UART 接口上有一個內置適配器,在 USB 上有一個附加的藍牙適配器。 符號鏈接目標中的信息在技術上告訴您適配器插入的物理端口。

如果您不熟悉 USB 設備編號的約定(它形成節點樹,因為一個端口可以有一個帶有多個附加端口的 USB 集線器等),請查看 /sys/bus/usb/devices,並匹配加上“lsusb”輸出,你應該弄清楚。 就我而言,“lsusb”將該適配器顯示為“Bus 001 Device 004: ID 0a5c:21e8 Broadcom Corp. BCM20702A0 Bluetooth 4.0”,如果我記得它對應於 /sys/class/bluetooth 中的“1-3”內容路徑(不幸的是,總線值使用索引原點 1,而設備號使用索引原點 0,因此 4 在那里變成了 3)。

如果您嘗試將 USB 適配器移動到不同的物理端口,您應該能夠計算出該模式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM