Hello my friends,
I am trying to convey a large system file data using my own developed GATT Service where I am using a read characteristic to read the file system.
Specifically, I have a central which does gat read on the discovered attribute handle exposed by the peripheral. (The read characteristic included in the GATT service).
After doing MTU update, I can achieve almost 2.55 KB/s where I have the following related configurations:
CONFIG_BT=y CONFIG_BT_SMP=y CONFIG_BT_TINYCRYPT_ECC=y CONFIG_BT_MAX_PAIRED=2 CONFIG_BT_HOST_CCM=y CONFIG_SETTINGS=y CONFIG_BT_HCI_ACL_FLOW_CONTROL=y CONFIG_BT_L2CAP_DYNAMIC_CHANNEL=y CONFIG_BT_L2CAP_TX_MTU=251 CONFIG_BT_BUF_ACL_RX_SIZE=255 CONFIG_BT_BUF_ACL_TX_SIZE=251 CONFIG_BT_BUF_CMD_TX_SIZE=255 CONFIG_BT_CTLR_DATA_LENGTH_MAX=251
Also, here is the connection parameters I am using:
struct bt_le_conn_param param = { .interval_min = 0x0008, .interval_max = 0x0008, .latency = (0x00008 * 1.25)*1, .timeout = 400, };
However, I have seen posts in devzone like THIS ANSWER or THIS POST where people are talking about transmission rates around 14 KB/s or at least above 10KB/s.
I was wondering how I can increase the download rate of my application to such ranges?
Thanks,
Omid