This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

How do you set CCCD handle to 0x0001?

Apparently you need to set the CCCD handle of your target characteristic to enable notification. Problem is, how do you do that? I now know at least 2 ways to do that, one of them doesn't work at all and they are completely contradictory.

Method 1: You need a central device to do that. Let's say an android device. You must find the right API and call it, and then boom! You are all set. I tried it, it doesn't work. But above everything, you NEED, NEED NEED YOU MUST HAVE a central device to set the handle in order for this to work, like a consent thing. Which is extremely confusing because:

Method 2: You can do it using sd_ble_gatts_sys_attr_set(). According to some answers of this site, you can enable CCCD by calling sd_ble_gatts_sys_attr_set, as long as you correctly identified/located the CCCD handle. Also, these answers make it look like as if you don't need a central device, like, AT ALL!

This is just puzzling. What am I supposed to listen? I'm going with the 2nd one because the first 1 doesn't work. And as always, documents on the fucntion sd_ble_gatts_sys_attr_set is extremely generic, no example, no user-case, just dispassionate monologue-ish description.

Dear NRF, once again I'm down on my knees and begging for help. Please do.

Parents Reply Children
No Data
Related