QN908x-DK: How to set 2M Phy?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

QN908x-DK: How to set 2M Phy?

Jump to solution
1,568 Views
syd
Contributor III

Use board: QN9080-DK
FW: qn908xcdk_wireless_examples_bluetooth_private_profile_server_freertos

Test environment:
- Peripheral: DK Board
- Central: LG G7 Cell Phone
In the above environment, throughput test with Qpp service yields about 450kbps.(MTU size: 244)

Question 1. Is there a way to check if the using Phy is 1M or 2M?
Question 2. Is there any functions to set 2M Phy?
Question 3. What is the maximum throughput when using 2M Phy? (Qn9080-DK to qn9080-DK)

                    Can you tell me the settings to get the above throughput?

Labels (3)
1 Solution
1,324 Views
Sebastian_Del_Rio
NXP Employee
NXP Employee

Hi Jinjee Seo, I hope you're doing well!

 

1.- You can read the PHY's current configuration, Tx and Rx by using the Gap_LeReadPhy function included in the gap_interface.h header file.

 

2.- To configure the PHY for 2M mode in the example you're using, you can set the gBleUseHSClock2MbpsPhy_c macro, which in turn, will enable a code section which calls the Gap_LeSetPhy function included in the gap_interface.h header file.

 

3.- The theoretical maximum throughput you can get by using the 2M PHY will depend on different factors, including bytes per packet, packets per connection and connection interval. Bluetooth SIG specifies that the connection interval has to be longer than 7.5 ms, so that would be your lower limit.

 

For a connection time of 7.5 ms, theoretically you could expect a maximum throughput of approximately 1.2 mbps, but in practice, it may be a bit lower. To increase throughput, your best bet might be to change the Connection Interval, as that seems to be the mayor factor in this calculation.

pastedImage_2.png

 

Please let me know if you need more information.

 

Best regards,

Sebastian

View solution in original post

1 Reply
1,325 Views
Sebastian_Del_Rio
NXP Employee
NXP Employee

Hi Jinjee Seo, I hope you're doing well!

 

1.- You can read the PHY's current configuration, Tx and Rx by using the Gap_LeReadPhy function included in the gap_interface.h header file.

 

2.- To configure the PHY for 2M mode in the example you're using, you can set the gBleUseHSClock2MbpsPhy_c macro, which in turn, will enable a code section which calls the Gap_LeSetPhy function included in the gap_interface.h header file.

 

3.- The theoretical maximum throughput you can get by using the 2M PHY will depend on different factors, including bytes per packet, packets per connection and connection interval. Bluetooth SIG specifies that the connection interval has to be longer than 7.5 ms, so that would be your lower limit.

 

For a connection time of 7.5 ms, theoretically you could expect a maximum throughput of approximately 1.2 mbps, but in practice, it may be a bit lower. To increase throughput, your best bet might be to change the Connection Interval, as that seems to be the mayor factor in this calculation.

pastedImage_2.png

 

Please let me know if you need more information.

 

Best regards,

Sebastian