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

BLE_ERROR_GATTS_SYS_ATTR_MISSING

Hi. I have a problem with HID keyboard example. Function sd_ble_gatts_hvx returns 0x00003401. I know that it's means BLE_ERROR_GATTS_SYS_ATTR_MISSING. But how and where I must set attributes or enable notification. I know that I must restore attributes from storage. But how? I read many posts about this but I can not to fix this problem. Please help me. Thank you in advance.

BLE_ERROR_GATTS_SYS_ATTR_MISSING does not handle

Parents
  • If you get no service discovery then the BLE_GATTS_EVT_SYS_ATTR_MISSING won't come.

    You can try to call sd_ble_gatts_sys_attr_set(NULL) when you receive _CONNECTED event.

    If you test with our ble_app_hid_keyboard do you see the same problem ?

  • Could you let me know the Android device you are testing with ? Also the Android version on the device.

    Are you testing with device manager or peer manager ? If you are using SDK v12 it would be peer manager.

    It might not be a good idea to mix SDK v12 with device manager.

    If you use device manager, please check if the bond information is stored. To check how many master is stored, you can have a look at dm_whitelist_create() function where we find the masters ID to put into whitelist.

    In device manager, we store new bond info when we receive BLE_GAP_EVT_AUTH_STATUS event in dm_ble_evt_handler()

Reply
  • Could you let me know the Android device you are testing with ? Also the Android version on the device.

    Are you testing with device manager or peer manager ? If you are using SDK v12 it would be peer manager.

    It might not be a good idea to mix SDK v12 with device manager.

    If you use device manager, please check if the bond information is stored. To check how many master is stored, you can have a look at dm_whitelist_create() function where we find the masters ID to put into whitelist.

    In device manager, we store new bond info when we receive BLE_GAP_EVT_AUTH_STATUS event in dm_ble_evt_handler()

Children
No Data
Related