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

about BLE_HIDS_EVT_NOTIF_ENABLED

Hi Nordic team,

I have a simple HID BLE device which send volume+/- multimedia keys to a Android device, it works well if it is first time to pair with the Android device, but if I switch off Bluetooth in Android's setting menu and switch on again, the volume+/- keys no longer working.

I checked and debugged and found it is caused by the BLE device not getting the BLE_HIDS_EVT_NOTIF_ENABLED from the Android phone, so the HVX return code is 0x8 and failed. I also search the forum and found there's no way to enable the notify on peripheral side, I also found there're solutions is to call "sd_ble_gatts_sys_attr_set(m_conn_handle, NULL, 0, 0)", but I'm not sure where to put this function, I have tried that function in "BLE_GAP_EVT_CONNECTED", "BLE_GATTS_EVT_SYS_ATTR_MISSING" events but none of them works.

Any suggestion where am I doing wrong and how to fix this to enable the notify? Thanks very much..

added main.c here: main.c

Parents
  • Hi,

    i have added my main.c to the initial post, hope this help. another thing i found today, is in the very first time of pairing between Android and my BLE, i see there's a "BLE_GAP_EVT_CONNECTED" event is received, but if i turn off Android's BLuetooth and switch on again, the BLE is re-connect automatically but i didn't see "BLE_GAP_EVT_CONNECTED" event is coming and of course, no "BLE_HIDS_EVT_NOTIF_ENABLED" event, too.

    From my observation, i need to see "BLE_HIDS_EVT_NOTIF_ENABLED" event to let the BLE works, that's why I keep looking for the way to enable notification on BLE side.

    Any suggestion? Thanks in advance.

Reply
  • Hi,

    i have added my main.c to the initial post, hope this help. another thing i found today, is in the very first time of pairing between Android and my BLE, i see there's a "BLE_GAP_EVT_CONNECTED" event is received, but if i turn off Android's BLuetooth and switch on again, the BLE is re-connect automatically but i didn't see "BLE_GAP_EVT_CONNECTED" event is coming and of course, no "BLE_HIDS_EVT_NOTIF_ENABLED" event, too.

    From my observation, i need to see "BLE_HIDS_EVT_NOTIF_ENABLED" event to let the BLE works, that's why I keep looking for the way to enable notification on BLE side.

    Any suggestion? Thanks in advance.

Children
No Data
Related