This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Maximum datarate configuration with NRF52832

Hello,

In my application (based on app_nus_uart example, with two NRF52832 boards), one of the cases is uploading/downloading files with sizes up to 10MBytes.

In my app I configured the next things (peripheral and central have the same configurations):

#define MIN_CONN_INTERVAL               MSEC_TO_UNITS(20, UNIT_1_25_MS)
#define MAX_CONN_INTERVAL               MSEC_TO_UNITS(75, UNIT_1_25_MS)
#define SLAVE_LATENCY                   0
#define CONN_SUP_TIMEOUT                MSEC_TO_UNITS(4000, UNIT_10_MS)
#define FIRST_CONN_PARAMS_UPDATE_DELAY  APP_TIMER_TICKS(5000)
#define NEXT_CONN_PARAMS_UPDATE_DELAY   APP_TIMER_TICKS(30000)
#define MAX_CONN_PARAMS_UPDATE_COUNT    3
#define NRF_SDH_BLE_TOTAL_LINK_COUNT    1
#define NRF_SDH_BLE_GAP_EVENT_LENGTH    120
#define NRF_SDH_BLE_GATT_MAX_MTU_SIZE   247

The files sent by packets of 200 bytes.

When two devices are connected, I see that the PHY set to 2Mbit/sec and the maximum packet length set to 247 (data up to 244 bytes)

But when I test the transmitting of the file (1,194,277 bytes) it takes 1minut, 50 seconds. According to my calculation is about 10.8 Kbyte/sec.

What am I doing wrong?

Thanks a lot!

Related