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 ?

Reply
  • 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 ?

Children
  • Yes, It is. I use your ble_app_hid_keyboard. The same problem. I tried to call sd_ble_gatts_sys_attr_set(NULL) in the _CONNECTED event. But I see the same problem. I have not many experience with bluetooth. So maybe I somewhere I made a mistake. But firstly all works fine. After reconnect I see this problem

  • I don't know how and where I must restore ATTR data

  • It's already handled in gatts_cache_manager.c which part of the peer manager. If you use peer manager, it should be handled, you don't have to do anything. Could you explain what exactly the problem you have with the unmodified ble_app_hid_keyboard ? Please state step by step, also please let me know your SDK version.

  • SDK 12.2.0 .. If I use peer manager: -peer manager event do not come On Raspberry PI connected is stable, but sd_ble_gatts_hvx returns 0x00003401 Android and WIndows do not connect with pin code error If I use unmodified ble_app_hid_keyboard firstly all works fine and after reconnect I can not connect. If I restart NRF51 I can connect but sd_ble_gatts_hvx returns 0x00003401. If I unbound and bound again all repeats

  • Could you capture a sniffer trace when you test with Android/Windows ?

    How did you disconnect when you do "after reconnect I can not connect" ? How did you disconnect to re-connect ?

    If you test with Android/windows after you connect you turn off/on Bluetooth on the phone or turn off or on the nRF51 device do you see it connect automatically ?

    Which Android device did you test with ?

Related