I'm using nrf52832DK with seggers studio and SDK 14.2. My settings are following.
#define MIN_CONN_INTERVAL MSEC_TO_UNITS(20, UNIT_1_25_MS) /**< Minimum acceptable connection interval (20 ms), Connection interval uses 1.25 ms units. */
#define MAX_CONN_INTERVAL MSEC_TO_UNITS(30, UNIT_1_25_MS) /**< Maximum acceptable connection interval (75 ms), Connection interval uses 1.25 ms units. */
#define SLAVE_LATENCY 0
I have multiple slaves connected to a master. And every slave sends data only after "BLE_NUS_EVT_TX_RDY" event is generated. But I'm seeing some packets drop as I increase the number of slaves or increase the frequency of transmission.
1. My question is that if I get no error on the "ble_nus_string_send" function, does it mean that packet has been transferred to the master successfully? If not, how can the slave know that the data that it transmitted has been dropped or received by master ? I can implement some sort of handshake between master and slave but that would slow down the communication, I'm looking for some function already implemented in the stack/sdk.
2. Also what does the "sd_ble_gatts_rw_authorize_reply" function do ? Can it solve the issue in question above ?