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

How do you implement bypass discovery to access a feature?

It's NRF52832 and NRF52810.

The BLE connection process is to establish a physical connection first and then discover the service to obtain the characteristic word information.

I want to reduce the time of connection so I want to get rid of the discovery service.

Because these features are consistent.

I have now made it possible for the host to send the data from the machine, but it can't receive the reply host from the machine to the host.

Because I always report busy when I can notif.

So now you can't have notif.

Parents
  • The reason for the behavior is that the GATT module initiates a MTU exchange upon the event BLE_GAP_EVT_CONNECTED. When trying to enable notifications,the MTU exchange is ongoing,and hence,ble_nus_c_tx_notif_enable() returns NRF_ERROR_BUSY.

    Enabling notifications when the MTU exchange has finished,solves the problem.(Upon the event BLE_GATTC_EVT_EXCHANGE_MTU_RSP).

Reply
  • The reason for the behavior is that the GATT module initiates a MTU exchange upon the event BLE_GAP_EVT_CONNECTED. When trying to enable notifications,the MTU exchange is ongoing,and hence,ble_nus_c_tx_notif_enable() returns NRF_ERROR_BUSY.

    Enabling notifications when the MTU exchange has finished,solves the problem.(Upon the event BLE_GATTC_EVT_EXCHANGE_MTU_RSP).

Children
Related