Я разработал приложение BLE для openwrt
с помощью BLUEZV5.30
, Мне удалось создать приложение путем извлечения исходного кода gatttool
а также hcitool
, Я также добавил немного больше функциональности, чем эти инструменты (например, чтение rssi
).
Тем не менее, я обновил свой bluez
укладывать в 5.42
и я планирую использовать DBUS
интерфейс для всех операций, связанных с BLE. Функциональность, которую я хочу:
Я смог выполнить все вышеперечисленные операции (кроме соединения и спаривания), используя мой код, написанный на C ++. Однако из-за некоторых проблем с моим существующим кодом и невозможностью сопряжения / соединения я хочу перейти на интерфейс dbus. Тем не менее, я не уверен насчет ошибок в BLUEZ DBUS API
и функциональность, предоставляемая API. Я прочитал это API Doc но он не дал четкого представления об интерфейсе DBUS.
У меня вопрос, я не уверен, смогу ли я получить все необходимые функции с dbus api
? Я прочитал документацию (bluez dbus api), но все еще не уверен.
Как вы упоминаете в другом сообщение Я обновил gattlib для поддержки Bluez DBUS API.
gattlib
написано на C. Если вы не хотите использовать его, то посмотрите на его код, который поможет вам прогрессировать.
Sinve Bluez v5.42, GATT D-BUS API больше не помечается как экспериментальный.
DBUS API описывается здесь: https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc. Есть также (питон) Примеры которые демонстрируют API.
Других решений пока нет …