Привет, я пытаюсь разработать приложение для часов Gear S3, работающих под управлением Tizen 4.0.0.4 Кратко говоря, проблема в том, что я не знаю, как включить уведомления о характеристиках. Когда я пробую обычный подход, т.е. записываю x01 x00 в дескриптор 0x2902, я получаю ошибку -1 и в логах получаю:
bt-gatt-client.c: __bluetooth_get_att_error_code(901) > Error : GDBus.Error:org.bluez.Error.NotPermitted: Write not permitted [/dev_4C_65_A8_DC_A1_F7/service002d/char002e/desc0030]
Я попытался немного заглянуть в blueZ, чтобы понять, что не так, но я только начал.
svc, char и desc выглядят так (это пользовательские символы от датчика Temp&Hum Xiaomi):
SRVC:(1/7) uuid: [0000fe95-0000-1000-8000-00805f9b34fb]
CHAR: (1/6) uuid: [00000001-0000-1000-8000-00805f9b34fb]
DESC: (1/1) uuid: [00002902-0000-1000-8000-00805f9b34fb]
(разрешение на CHAR пишет notify) Делаю обычное дело (после подключения и тд, бонда не делал так как вроде не нужно для девайса, ну разве что стек тизена какой-то магии с blueZ под капот с проклейкой...). Итак, я делаю примерно так: в обратном вызове connect после создания клиента я вызываю трио
bt_gatt_client_get_service()
bt_gatt_service_get_characteristic()
bt_gatt_characteristic_get_descriptor()
а затем я устанавливаю значение 0x01 0x00 как массив символов с
bt_gatt_set_value()
а потом, наконец, позвони
bt_gatt_client_write_value()
в bt_gatt_client_write_value() обратный вызов я получаю сбой записи с кодом ошибки -1 и в журнале вышеупомянутая ошибка от bluez сильный>
Я должен признать, что застрял ... Есть ли в Tizen другой способ включить уведомления о характеристиках, кроме записи x01 x00 в дескриптор CCCD? Возможно, я упускаю какое-то предварительное условие или что-то в этом роде. Честно говоря, я просто следил за учебным пособием на странице Sammys и подумал, что это должно работать ... просто так ... Просто упомянем, что с использованием rpi0 и python это работает ... спасибо. UPDATE: Забыл упомянуть, что, в принципе, я могу писать и в другие характеристики, я их уведомления не пробовал ставить, но вообще проблема только в дескрипторе CCCD сейчас. Привилегии установлены.
<privilege>http://tizen.org/privilege/bluetooth</privilege>
в файлеtizen-manifest.xml
?? - person UmFraWJ1bCBJc2xhbQ   schedule 30.09.2019