How to use BLE 2Mbps of QN908x.

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

How to use BLE 2Mbps of QN908x.

3,871 Views
roem
Contributor II

Hello.

I am using QN9080.

The QN9080 datasheet states that it supports 2 Mbps.

However, the register settings only show values for 250k, 500k, and 1M, and there is no explanation for 2M bps.


How can I use 2 Mbps of QN9080?

Labels (1)
  • QN

0 Kudos
Reply
9 Replies

3,765 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi @syd,

I hope you are doing great.

The example enables radio operation using custom GFSK (with configurable BT product, modulation index, and modulation filter coefficients).

In other words, the PHY is sending the bits at 2Mbps, but we have to be aware that the MCU is processing all the information, create the packet , the preamble and also we have to add the IFS that requires all of this process.

Also, the limitation that only a maximum of 35 bytes of data (including header and CRC if available) can be received or transmitted.

The value that you are getting seems to be correct with the PHY that is set.

Regards,

Mario

0 Kudos
Reply

3,745 Views
syd
Contributor III

Hi Mario. Thanks for the detailed answer, but I have another question for the sentence below.

"Also, the limitation that only a maximum of 35 bytes of data (including header and CRC if available) can be received or transmitted."

This sentence means that the QN9080 cannot send or receive more than 35 bytes, but the example provided by NXP is sending up to 64 bytes. What happened?
Does the QN9080 divide 64 bytes into multiple packets?

0 Kudos
Reply

3,725 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Syd,

This sentence means that the QN9080 cannot send or receive more than 35 bytes, but the example provided by NXP is sending up to 64 bytes. What happened?
Does the QN9080 divide 64 bytes into multiple packets?

You are right, the example is fragmented data to transmit.

Regards,

Mario

0 Kudos
Reply

3,709 Views
syd
Contributor III

Thanks Mario. It worked for me.

3,798 Views
syd
Contributor III

Hi, Mario.

I am Yhyun's coworker. I've testing the maximum throughput of QN9080 using QN9080-DK board.

I describe the environment I have tested for your understanding.

The project I used is wireless_examples_genfsk_connectivity_text_bm.

I modified 2 parts of this project, one changed the payload of the send packet to 250 bytes.

Second, after sending the packet, a '+' sign is displayed on the screen.

 

(See attached image)

 

Press the number 2 key to transfer for 10 seconds.

The number of packets transmitted in 10 seconds was 5140.

When converted to bps, it is about 1Mbps.(5140 * 250 * 8 / 10 = 1028000)

What I want to know is whether this result is reasonable and how can I increase the bps.

 

Regards.

0 Kudos
Reply

3,849 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Roem,

Please look at the app_preinclude.h file you will find the next define. That enables the 2Mbps PHY

/* Enable HS Clock to support 2Mbps PHY mode setting */
#define gBleUseHSClock2MbpsPhy_c 1

 

Regards,

Mario

0 Kudos
Reply

3,840 Views
roem
Contributor II

Hi, Mario.
Thank you for your answer.

But there is a problem.
I want to use 2Mbps in "qn908xcdk_wireless_example_genfsk_connectivity_test".
However, in this example, there is no "gBleUseHSClock2MbpsPhy_c" you mentioned.

Instead, I found "gGenFskDataRate_2M".
This is already activated. Nevertheless, it seems that speed of 2Mbps is not coming out.


What should I do?

0 Kudos
Reply

3,818 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi @roem,

 

The 2 Mbps is enabled by default. However, you could double-check the data rate.

            if (mGenfskActiveInstance == instanceId)
            {

            	genfskLocal[instanceId].radioConfig.dataRate = gGenfskDR2Mbps;//[MC]
                PROP_RadioConfig(PROP, radioMode, (prop_data_rate_t)genfskLocal[instanceId].radioConfig.dataRate);

            }

However, you could use the 1 Mbps and compare the results that you are getting. 

How are you measuring the data rate?

Regards,

Mario

0 Kudos
Reply

3,811 Views
roem
Contributor II

Hi, Mario.

 

Thx for your answer.

 

Are you talking about the 'GENFSK_RadioConfig' function in the 'genfsk_ll_qn.c' file?

I'll test it and tell you.

 

Regards,

Yhyun

0 Kudos
Reply