Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

AIROC™ Bluetooth

JackW
Level 1
First reply posted First question asked Welcome!
Level 1

Hi everyone,

I'm trying to test max throughput of CYBLE-343072-EVAL-M2B development kit and have some problem.

I test with the program introduced in this tutorial: 

https://github.com/Infineon/mtb-example-btsdk-ble-throughput

I use two CYBLE-343072 DK, one as server and another as client.

In this github, the image in section Operation step 5, the TX/RX throughput is about 1300kbps.

 

However, the throughput of my local test is only about 70 kbps which is quiet low compared to the tutorial.

I have checked the PHY(2M), Connection interval(26.25ms) and the ATT MTU(247) setting is same to the tutorial.

The result is shown below:

JackW_0-1652963784598.png

I built the program with ModusToolBox with BTSDK v3.2.

Is there any setting I forgot to set?

Please help me about it.

 

By the way, I also try to use iPhone with CySmart App as client and connect to the CYBLE343072 that set as server.

The throughput could up to 350kbps, but it's still lower than the result in tutorial.

JackW_1-1652964092777.png

 

Many thanks,

JackW

0 Likes
3 Replies
DheerajPK_41
Moderator
Moderator 750 replies posted 500 likes received 500 replies posted
Moderator

Hi,

Are you using a modified code for the above throughput example? Please share if it is so. 

Also, could you please share your logs with us.

 

i will try to go through it and check the throughput.

Thanks,

-Dheeraj.P.K

0 Likes
JackW
Level 1
First reply posted First question asked Welcome!
Level 1

Hi Dheeraj.P.K,

Is there any update or the result of you check the throughput?

Thanks a lot!

 

Best regards,

JackW

0 Likes
JackW
Level 1
First reply posted First question asked Welcome!
Level 1

Hi Dheeraj.P.K,

Thanks for your quick reply.

 

> Are you using a modified code for the above throughput example?

No, I didn't modify the code.

 

>Also, could you please share your logs with us.

The log is same to the image I attached, the two devices connected successfully and just repeating the throughput value.


I thought the problem is related to the number of packets in a connection interval.

Now the connection interval is 26.25ms, and data within one packet is 244 Bytes.

And it's only transfer about 38 packet(1000/26.25 ~= 38.09) with 244*38*8 = 74176 bits (~74kbps, close to result shown on screen).

I tried to shorten connection interval to 7.5ms, and the throughtput increase to 260Kbps.

It seems to transfer 133 packet (1000/7.5 ~= 133.33) in a second, and got a result 244*133*8 = 259616 bits (259Kbps).

It's how I change the connection interval, in GATT_server/tput_server_le.h:

***************

https://github.com/Infineon/mtb-example-btsdk-ble-throughput/blob/master/GATT_server/tput_server_le..../*

Actual Connection interval: (21 * 1.25) = 26.25ms */

#define CONNECTION_INTERVAL (21u) // change to (6u), meanhs 6*1.25 = 7.5ms

***************

But I think it should transfer multiple packets in one connection interval.

Any idea about it?

Thanks for your help!

 

Best regards,

JackW

0 Likes