Hi, NRF52832, SDK 15.2, SD 132 6.1.0
1. How to verify if connection event length extension is enabled (or supported)?
In ble_app_att_mtu_throughput in function conn_evt_len_ext_set you are using err_code = sd_ble_opt_set(BLE_COMMON_OPT_CONN_EVT_EXT, &opt). It is mentioned in documentation that sd_ble_opt_get is not supported for BLE_COMMON_OPT_CONN_EVT_EXT. I tried sd_ble_opt_set method with smartphones supporting and not supporting BLE 4.2 and on both phones this function returns without any errors. Also in ble_app_att_mtu_throughput example you are just setting the new value with sd_ble_opt_set and saying that connection event length was enabled without any read back.
Not sure if this is related but in In BLE 5 specification (BLUETOOTH SPECIFICATION Version 5.0 | Vol 6, Part F) page 2781 I found there is some LE test status event returning byte if packet length extension as well as 2M PHY is supported, but I was unable to find something like this in SDK.
2. Do I need to enable Data length extension (DLE) separately? How to verify it is supported?
In the same ble_app_att_mtu_throughput you are setting connection event length extension but naming it Data length extension:
NRF_CLI_CMD(conn_evt_len_ext, &m_cele_cmd, "Enable or disable Data Length Extension (on or off)", default_cmd),
even though it is clear that it is connection event length extension.
In nrf528xx-ble-throughput-demo-master which is for SDK 13 you had two different parameters: connection event length extension and data length extension.
static test_params_t m_test_params = { .att_mtu = 247, .conn_interval = 400.0f, .data_len_ext_enabled = true, .conn_evt_len_ext_enabled = true,
I know the difference between those two, but I am very confused if these two options are still separate in SDK 15 and how to enable and verify DLE.