Hi,
I'm trying to achieve high throughput of BLE on connection between two nRF52840 DK.
I've read some articles about it, and configured both Central and Peripheral devices for given settings:
- #define NRF_SDH_BLE_GATT_MAX_MTU_SIZE 247 (sdk_config.h)
- #define NRF_SDH_BLE_GAP_DATA_LENGTH 251 (sdk_config.h)
- #define NRF_SDH_BLE_GAP_EVENT_LENGTH 400 (sdk_config.h)
- main.c of Peripheral:
#define MIN_CONN_INTERVAL MSEC_TO_UNITS(400, UNIT_1_25_MS)
#define MAX_CONN_INTERVAL MSEC_TO_UNITS(400, UNIT_1_25_MS)
But as I see, I receive just about 1800 frames per second. My Peripheral app is based on "ble_app_template" and Central on "ble_usb_central". Did I miss someting in my code (some initiation or something else that's neccesary for extended data or MTU size)? Maybe I am supposed to set PHY manually somehow (I'd prefer to use 1M)?
Whatsmore, is it possible that one frame bring a few values for one characteristic or a few values for a few characteristics? My characteristic is 2 bytes, and ATT MTU is 247, so I'd love to transfer multiple values at one frame.