Con l'ultima versione di BlueZ (5.30) l'evidenziazione è stata il completamento degli apis GATT D-Bus. Il mio obiettivo è quello di programmazione (in C), come un client BLE:BlueZ 5.30: API GATT D-Bus - Scoperta e connessione semplice a un dispositivo BLE in C
- scansione per dispositivi ble (che posso fare con lo strato di HCI)
- Connettersi a una pubblicità dispositivo BLE
- I UUID
- eseguire leggere e scrivere le maniglie
la comunità BlueZ è fortemente suggerendo di utilizzare l'API GATT-dbus per raggiungere questo obiettivo. Dopo ricerche multiple e grattacapo non sono riuscito a trovare un modo corretto o un esempio che avrebbe funzionato attraverso l'API di GATT-DBU. Sembra più complicato di usare direttamente il livello GATT. Sfortunatamente BlueZ ha rimosso l'accesso diretto per effettuare chiamate a gatt.
Sono molto vicino a estrarre i file di origine GATT da Bluez, compilarlo come se fosse una libreria indipendente e utilizzare direttamente il livello GATT e le chiamate per connettere ed eseguire le letture/scritture sul server del dispositivo. So che non è il modo consigliato rispetto all'API DBUS-GATT, ma ho esaurito le opzioni.
Se qualcuno ha qualche input su questo o suggerimento (con qualche codice di esempio) si prega di avvisare.
grazie in anticipo!
Accordo sperimentale è per questo che sto discutendo il percorso di estrazione del codice sorgente GATT e chiamando direttamente quel livello invece di passare attraverso la rotta DBUS. – s2c97
In questo caso, tutto ciò che serve è qui: http://git.kernel.org/cgit/bluetooth/bluez.git/tree/attrib –
Da quale versione di BlueZ è stata estratta? – s2c97