QN9080 - What is the maximum bandwidth in WUART profile

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

QN9080 - What is the maximum bandwidth in WUART profile

1,605 Views
shai_b
Senior Contributor II

Hello Team,

I have a customer who plans to use #QN9080-001-M17 in their next platform design.

he needs to transmit raw data (prefer using WUART profile) at a minimum of 1.25Mbps (I know this device support  2 Mbps mode but not sure if the wuart does).

I did not manage to found on the datasheet the limitations of the UART and the #WUART profile.

please advise if our module can meet these application requirements?

Thanks in advance and take care,

Kind regards,

Shai

Labels (1)
  • QN

Tags (2)
8 Replies

1,395 Views
Sebastian_Del_Rio
NXP Employee
NXP Employee

Hi Shai, I hope you're doing well!

 

The Wireless UART SDK Example is capable of using the 2M PHY by changing the following macro to a 1, in the app_preinclude.h header file:

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

 

We have some SDK examples which can be used to measure the possible throughput of the 2M PHY used by the QN9080, namely the Private Profile Client, and Private Profile Server, which can connect between themselves, constantly transferring data packets between them, and printing the current throughput between the two.

 

This SDK Examples can be found in the following path of the SDK:

<…\SDK_2.2.2_QN908XCDK\boards\qn908xcdk\wireless_examples\bluetooth\private_profile_client>

<…\SDK_2.2.2_QN908XCDK\boards\qn908xcdk\wireless_examples\bluetooth\private_profile_server>

 

Please let me know if you need any more information.

 

Take care, best regards,

Sebastian

1,395 Views
shai_b
Senior Contributor II

Sebastian,

Thank you for your promote answer, can you please advise if it is possible to stream data continuously over WUART, for example, a log file which always gets updated in 1.25mbps of data and then transmit it to cellphone/or other devices via WUART.

if WUART does support, what is the latency/limitation of operating in such use case (maybe there is a need to build a buffer frame and send is multiple chunks)?. 

Waiting for your kindly advise, Thanks in advance. 

KR,

Shai

0 Kudos
Reply

1,395 Views
Sebastian_Del_Rio
NXP Employee
NXP Employee

Hi Shai,

 

It is possible to "automate" the writing of a BLE Characteristic, like the Wireless UART, by setting up a LPTMR to call a callback function which takes the desired information (in this case, I understand you want to transfer a Log File, is that correct?) and writes a certain characteristic's value with this information.

 

Such an example exists in the form of the Private Profile Client, which, after pressing SW2 after the devices are connected, it configures an LPTMR with an interval of 4ms to callback the "QppcTXTimerCallback" function, which then posts a message to call the "QppcTXCallback" function.

By default, the Private Profile SDK Example fills the packages with 244 bytes of sequential numbers, and writes the characteristic, but this can be changed to contain other information.

 

Please let me know if you need any more information.

 

Take care, best regards,

Sebastian

0 Kudos
Reply

1,395 Views
shai_b
Senior Contributor II

nxf53124

Thank you so much for your help, I am just wanted to confirm that our device is capable of performing the following:

The application is mainly to transmit 512 bytes of data (could be in hex) on every transmit.

It is very important to maintain continuous succession, and every transaction should be around 3.6ms.

(the data will be collected by the phone and will combine all the data strings into one big file) 

Can you please advise if it is something that can be achieved?

Thanks in advance and regards,

Shai 

0 Kudos
Reply

1,395 Views
Sebastian_Del_Rio
NXP Employee
NXP Employee

Hi Shai,

 

It is possible to set the length of an attribute's value to up to 512 Bytes, which is called a Long Attribute, and is interacted with using different functions, but managed by the stack like so:

 

The GATT Client module takes care of long characteristics, whose values have a greater length than can fit in a single ATT packet, transparently by issuing repeated ATT Read Blob Requests when needed.

(from the BLE Application Developer's Guide, <…\SDK_2.2.2_QN908XCDK\docs\wireless\Bluetooth\Bluetooth Low Energy Application Developers Guide.pdf>)

 

However, an important thing to note is that the minimum connection interval that can be set, by BLE Core Specification, to 7.5ms, which would be over the 3.6ms I'm understanding you want to achieve. 

 

Please let me know if you need any more information.

 

Take care, best regards,

Sebastian

1,395 Views
shai_b
Senior Contributor II

Hi Sebastian,

thank you for your inputs, I have reviewed the demo code of private profile client/server and I have two additional questions.

1. since there is a limitation on the BLE core regards the minimum connection interval which is 7.5ms.

can I increase the attribute's value even higher than 512 bytes so I will stay longer in transmits and I'll be required less connection interval to achieve the same amount of data?

2. I did not found an android app that supports private client/server in order to demonstrate the customer a working POC of exchange data from the QN9080 module to an android phone.

Can you please advise if such a profile can be supported by android app and if you can share the example code of such an app.

Thanks in advance

Kind regards,

Shai

0 Kudos
Reply

1,395 Views
Sebastian_Del_Rio
NXP Employee
NXP Employee

Hi Shai,

 

1.- By the Bluetooth Core Specification V5.0, Volume 3, Part F, Section 3.2.9 "Long Attribute Values":

The maximum length of an attribute value shall be 512 octets.

2.- The IoT Toolbox Mobile Application for Android and iOS supports the Private Profile SDK examples for the QN9080, allowing the phone to connect to a QN9080 device with the Private Profile Server programmed. Still, unfortunately the application is only available as reference, and the source code is not available to share.

 

Please let me know if you need any more information.

 

Take care, best regards,

Sebastian

1,395 Views
shai_b
Senior Contributor II

Hello Team,

Can you please advise back?, Thanks in advance.

Kind regards,

Shai 

0 Kudos
Reply