getsenic / gatt-python

Bluetooth GATT SDK for Python
MIT License
318 stars 86 forks source link

#35 Proposes an extension to access GATT descriptors #36

Closed jlusiardi closed 5 years ago

jlusiardi commented 5 years ago

This proposes an extension to gatt-python to be able to read out the value of GATT descriptors of characteristics as well. Those descriptors can contain metadata and configuration information for their characteristic.

This could fix my request in #35

LionNatsu commented 5 years ago

Is it also possible to write a descriptor? I am developing an Android application. There are functions to read and write characteristics and descriptors in Android SDK https://developer.android.com/reference/android/bluetooth/BluetoothGatt .

I want to do this in Python as a light-weight proof-of-concept demo first. It will be great if both reading and writing will be supported in future versions :)

jlusiardi commented 5 years ago

hey @larsblumberg ,

I am not in a real hurry, but could you merge and release a version with reading descriptors soon? ;) Would be required for the Bluetooth LE part of https://github.com/jlusiardi/homekit_python

Thanks in advance!

Jc2k commented 5 years ago

It would be really handy to have a release with this PR in if anyone can help, thanks!

larsblumberg commented 5 years ago

Hi guys, I'm talking to Senic (where I was working and where I wrote this library) as I would like to push an update soon with working Pull Requests.

Jc2k commented 5 years ago

Thats great news! ❤️

larsblumberg commented 5 years ago

Quick and short update: I met @kelada yesterday who manages Senic's software stack which itself depends on this library. We agreed that I will review and test the open PRs and given they work we can merge them.

We agreed that it's very important to add test coverage to this library before accepting any other new PRs (despite the already opened ones, which will still be merged if functioning). Any support from the community in this direction is welcome, though I will start with the groundwork for test coverage soon.

kelada commented 5 years ago

@larsblumberg when you think the PR is ready; ping me and I'll test it against our stack and make sure it's all good on that side and I'll get @jlusiardi work merged in 👍

jlusiardi commented 5 years ago

Hi, I just wanted to ask for any progress here? Regards Joachim

larsblumberg commented 5 years ago

Sorry for the long silence. Testing the branches is on my to do list for this weekend. Will keep you updated.

jlusiardi commented 5 years ago

Ok cool thanks!

larsblumberg commented 5 years ago

@jlusiardi I just tested your Merge Request using Senic's Nuimo Controller. Everything continued to work, nothing breaks (as expected!).

I've tested with BlueZ version 5.44 on a Raspberry Pi model 3 B+.

@kelada I feel very confident that this MR can be safely merged without affecting performance or functionality of the Nuimo Linux SDK.

kelada commented 5 years ago

@larsblumberg thank you for this testing, I will try and get this merged in before the end of next week.

jlusiardi commented 5 years ago

Thank you!