Hello,
Not sure if this is exactly the same as what is happening in this case,
but the issue of an early disconnect when NRF_SDH_BLE_GATT_MAX_MTU_SIZE = 247,
can simply be replicated using sdk 15.3 ble_app_cts_c, DK832 and Android 8.
This issue is not appearing on the iPhone with CTS.
Because the CTS example has to bond when connecting to work,
the settings first have to be,
#define NRF_SDH_BLE_GAP_DATA_LENGTH 27
#define NRF_SDH_BLE_GATT_MAX_MTU_SIZE 23
to get the Android bonded and connected.
Once connected there is no disconnect soon after by having 27/23.
Then change the settings to,
#define NRF_SDH_BLE_GAP_DATA_LENGTH 251
#define NRF_SDH_BLE_GATT_MAX_MTU_SIZE 247
and flash the DK.
Once connected, a disconnect occurs soon after by having 251/247.
The disconnect reason is 0x22, BLE_HCI_STATUS_CODE_LMP_RESPONSE_TIMEOUT,
but not sure how much this helps.
If the DK is eraseall, and settings are 251/247,
then the DK won't even bond to the Android using the CTS example.
Is this particular to how the CTS Service was coded for the GATT Server on Android,
and can be easily adjusted in code to handle 251/247?
or is this part of the Android standard and has a limit of 27/23 for CTS?
There is a need to have 251/247 on CTS for a NUS TX notification on Android.
thank-you,