我有一個Linux C應用程序,它需要與BLE設備建立多個連接。該應用程序使用從gatttool剝離的庫。 BLE設備的廣告費率非常低,因此需要很長時間才能建立連接。因此,我需要能夠同時發出多個gatt_connect請求。使用BlueZ同時建立多個BLE連接
gatt_connect使用標準套接字/連接來建立到設備的L2CAP連接。雖然此方法允許您擁有多個活動連接,但它只允許您一次建立一個連接。使用HCI接口,您可以同時建立多個接口(即hcitool lecc --whitelist),但是我無法想出一個方法使它與gattool庫L2CAP套接字/連接一起工作。
任何人都可以提出一種方法來集成gattool L2CAP套接字/連接與hci接口(hci_open_dev/hci_le_create_conn)處理使用的「hcitool lecc --whitelist」,或一種方法來同時建立多個連接?
爲什麼不使用DBUS接口的任何原因?這是支持的接口,並且很容易同時建立多個連接(一旦你通過DBUS學習曲線)。 – kaylum
不幸的是,我必須在標準的ubuntu 14.04.03 LTS(bluez 4.101)和Intel Edison(bluez 5.x)上運行代碼。 Ubuntu的bluez版本是4.101,據我的理解,它不能正確支持藍色的dbus(或者至少不支持5.x的相同方式)。我也明白,關貿總協定仍然是試驗性和經常變化的。 –
@mw。 :我也在嘗試類似的東西。我想知道你的項目的狀態。 – abhiarora