cancel
Showing results for 
Search instead for 
Did you mean: 

Low throughput in p2p server example

akarp.2161
Associate III

Hi there!

I added 3 characteristics to the p2p server example, with lengths of 2, 2 and 64 bytes. Event processing occurs directly in the p2p_stm_app_notification (p2p_server_app.c) function. The Client performs 16 iterations a La:

{ 
    char1.write(2 byte);
    char2.write(2 byte);
    delay(100 ms);
    char1.read(64 byte);
}

It takes about 12 seconds, it's too slow. The client application was implemented on flutter(android) and on the script for BLEConsole(Win 10), running on different devices, the execution time is unchanged, so I think that the problem is in my implementation of the application on STM32WB. 

The first thing I tried to change was Slave_Conn_Interval_Min and Slave_Can_Interval_Max in the aci_gap_set_discoverable function at 6, and 80 (accordingly 7.5 ms min and 100 ms max). 

In the EVT_LE_COQ_COMPLETE handler, the value

connection_complete_event - >Count_Interval = 39 ( accordingly 50 ms). 

But it didn't increase the speed. 

Tell me please, what can be the reason for such a long time of execution of transfer operations?

Thanks!

1 REPLY 1
DHunt.1
Associate II

Hi!

I have the same issue.

I used the tips from AN5289, but it didn't solve a problem. Throughput remains low for about 20 kbit/s.

If you got a result, could you please let me know what did you do?

Best Regards

Den