2009-08-19 189 views
3

有誰知道藍牙設備如何獲取範圍內的可發現設備的設備ID?藍牙UUID發現

我理想的是尋找最簡單的解決方案,涉及最小的藍牙協議實施。

一個起點會很好,我只是希望創建一個能夠以最小的功耗存儲附近藍牙設備的所有設備ID的設備,最好是使用無線電頻率而不是SDP和其他任何設備。

如果你不能幫助我,請幫助我找到低級藍牙(一步一步)通信的好讀物。在線閱讀是如此之高,以至於我無法確定什麼時候發送了什麼。

回答

2

Laalto從Bluetooth規範/堆棧POV中找到了答案,但是您的問題意味着您需要尋找獨立的藍牙設備 - 而不僅僅是掃描周圍設備的筆記本電腦應用程序。

我只能說我所在的公司生產的BT芯片(Cambridge Silicon Radio - CSR),但是我們的芯片可以做得非常好。我們的芯片具有板載虛擬機沙箱,可以訪問芯片的固件功能和藍牙堆棧。您可以輕鬆編寫C代碼應用程序在芯片上的虛擬機沙箱中運行,該程序定期掃描周圍的可發現設備,獲取它們的ID,然後在通過USB或串行連接時下載它們,或者在設備連接到聽衆直接。

www.csr.comwww.csrsupport.com的芯片,DEV-套件,參考設計,等等。等等...

你可能想用額外的硬件模塊(個UART,USB等),以及剛該芯片,但你可以實現這個大小的藍牙USB或可能更小的東西。

這對真正有助於更多地瞭解你想要達到的目標,爲什麼你想要的東西只是掃描周圍的藍牙設備,以及設備需要多大。

對不起,如果這聽起來像廣告。餘額:Broadcom也製造BT芯片!

2

來自http://www.bluetooth.org的藍牙規格是低級信息的良好起點。您需要一個帳戶來訪問規格,但您可以免費創建一個。

基本上,您需要做的是定期進入查詢模式,並在到達時獲取響應數據包。您在查詢模式中花費的時間越多,發現範圍內的設備的可能性就越大:可發現的設備相對較少地進入查詢掃描模式;需要一段時間(至少在舊版藍牙版本中爲10.24s)才能掃描查詢/查詢掃描跳頻方案中的所有可能頻率。即使如此,你也可以擁有不太理想的無線電條件。

爲了實現我建議你至少與現有藍牙庫,如BlueZ開始,不要試圖從頭開始創建你自己的。