This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

s130-how to check if norification is enabled?

Hi all:
I modified DFU-BLE to make it suitable for S130 on nRF51822. I made the following modifications: On "dfu-ctr1_pt_add"

ble_gatts_attr_md_t cccd_md;

memset(&cccd_md, 0, sizeof(cccd_md));

BLE_GAP_CONN_SEC_MODE_SET_OPEN(&cccd_md.read_perm);
BLE_GAP_CONN_SEC_MODE_SET_OPEN(&cccd_md.write_perm);
cccd_md.vloc = BLE_GATTS_VLOC_STACK;

char_md.p_cccd_md                   = &cccd_md;

But on function "static bool is_cccd_configured(ble_dfu_t * p_dfu)" , sd_ble_gatts_value_get(p_dfu->dfu_ctrl_pt_handles.cccd_handle, 0, &cccd_len, cccd_val_buf) return error_code "0x03".

I don't know what is going wrong? Any suggestion about this?

Parents
  • This is actually a bug in s120 and s130. It happens when you try to read the value of CCCD while having several clients connected to the same server, so you have several CCCDs for the same characteristic. It was fixed in the v2 release of s120, but not in s130 yet. A DFU example for s130 will be uploaded to github soon.

    You should be able to get it working if you comment out static bool is_cccd_configured()

Reply
  • This is actually a bug in s120 and s130. It happens when you try to read the value of CCCD while having several clients connected to the same server, so you have several CCCDs for the same characteristic. It was fixed in the v2 release of s120, but not in s130 yet. A DFU example for s130 will be uploaded to github soon.

    You should be able to get it working if you comment out static bool is_cccd_configured()

Children
Related