Hi,
I found some thing not seems to be right in SDK 16. I wonder if this is intentional or a bug. Bluetooth 5 max MTU can be up to 512 bytes. I found the definitions in the structures bellow that MTU size is uint16_t but data length is uint8_t. This seems not rights also nrf_ble_gatt sets a hardcoded max data length to 251. Which is Bluetooth 4.2 max data length. That too is bad. So how did the Bluetooth 5 throughput test demo able to set data length to 512 bytes when it is hard coded in nrf_ble_gatt to 251 ?
Data length defined as uint8_t in nrf_ble_gatt.h which is max at 255. So cannot use 512 bytes of Bluetooth 5.
Data length is hardcoded inside nrf_ble_gatt.c