QN9080 BLE private profile service or others

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

QN9080 BLE private profile service or others

Jump to solution
1,024 Views
mjkimbravo
Contributor III

Hello,

In these days, I try to do some big project and I choose QN9080 MCU for BLE communication. Here is what I have done:

  1. Make my own PCB board of which FPGA and QN9080 are mounted and communicated through I2C communication. I use SDK: "qn908xcdk_driver_examples_i2c_dma_transfer" and two devices communicates well.
  2. Perform BLE communication between QN9080 and my PC (with USB dongle) through SDK: "qn908xcdk_wireless_examples_bluetooth_private_profile_server_bm". Here, I select QPP(private profile service) because I think it is easy to deal with to beginners like me. I use Connectivity QTool for BLE communication and it works fine well.

 

Now, I want to do both simultaneously: receive data from FPGA to QN9080 through I2C and send the data from QN9080 to PC through BLE QPP. However, here comes a big problem. My I2C speed is near 12kBps(Bytes per second), so BLE communication should be much faster than that (like prevent FIFO overflow).  However, when I test QPP through Connectivity QTool, it is too slow to communicate. Here I want to ask these questions:

 

1. I know that one packets of data Byte length (tx_data[] on code) can goes up to 244(maybe 247 MTU), so I increase it and receive data from Phone IoT toolbox, it has near 15kBps (fine good, it can go even higher near 60kBps). However, I cannot receive more than 20Bytes per one packets from Connectivity QTool (there is no way to control). Is there a way to increase one packets' Byte length in Connectivity QTool (similar with IoT toolbox)?

mjkimbravo_1-1721389570364.png

qpp_phone.jpg

mjkimbravo_2-1721389636057.png

 

2. Data transmission gets start when I press the Notification enable on QTool. Is there any other way to start transmitting without press it?

 

3. I think Connectivity QTool and IoT toolbox is not appropriate to me because: In QTool, Byte length is limited so it is too slow; In IoT toolbox, I cannot extract the data (I have to plot the data in MATLAB or python). Is there any other way to perform QPP communication between QN9080 and PC without using Connectivity QTool or IoT toolbox

 

4. Is there any other better solution than QPP to do data communication between QN9080 and PC? What I want to do is to transfer data faster than I2C speed and plot it on my PC. I also consider wireless UART, but it also have to use Connectivity QTool and the BLE connection is keep disconnected (I don't know the reason why). How can I deal with it? Is there other ways to do WUART without using Connectivity QTool or IoT toolbox?

  • When I run "qn908xcdk_wireless_examples_bluetooth_wireless_uart_bm", if qn9080 is slave (keep advertising) and USB dongle is master (scan device), the connection once perform but it disconnected immediately.
  • When I run "qn908xcdk_wireless_examples_bluetooth_wireless_uart_bm",  if qn9080 is master (keep scanning) and USB dongle is salve (advertising), the qn9080 cannot find the usb dongle (no pairing occurs)

 

Those are very important to me for my project, so I really appreciate if you answer my questions...

 

Thanks,

 

 

 

 

 

 

 

 

Labels (1)
0 Kudos
Reply
1 Solution
928 Views
pengfei_zhen
NXP Employee
NXP Employee

Hi @mjkimbravo ,

Connectivity QTool is not under maintenance, there is another tool can be used "Test Tool for connectivity product"

pengfei_zhen_0-1721890934095.png

if your requirement is data transmission between PC and QN9080, there is a third part Python library bleak can be used, which and drive the BLE on the PC directly. you can develop your PC application based on this python library. On QN9080 side, you can use QPPS, WUART or something else defined by yourself.  

 

 

View solution in original post

0 Kudos
Reply
4 Replies
929 Views
pengfei_zhen
NXP Employee
NXP Employee

Hi @mjkimbravo ,

Connectivity QTool is not under maintenance, there is another tool can be used "Test Tool for connectivity product"

pengfei_zhen_0-1721890934095.png

if your requirement is data transmission between PC and QN9080, there is a third part Python library bleak can be used, which and drive the BLE on the PC directly. you can develop your PC application based on this python library. On QN9080 side, you can use QPPS, WUART or something else defined by yourself.  

 

 

0 Kudos
Reply
970 Views
Ricardo_Zamora
NXP TechSupport
NXP TechSupport

Hello,

 

Hope you are doing well. I apologize for the inconveniences, but there is no way to modify the Qtool.

 

The best would be to create a custom application on your PC with the QPP custom profile.

 

For using Wireless UART custom profile, your PC must support this profile.

 

Regards,

Ricardo

0 Kudos
Reply
955 Views
mjkimbravo
Contributor III

Thank you for the reply. Unfortunately, would you please help me in more detail?

I understand that I cannot modify QTool. Then how can I create a custom application on my PC with the QPP custom profile or UART custom profile without any tool...? How can I make connection and receiving data? I want some exact examples or application tools to communicate with QN9080. Is there any specific way to communicate with QN9080 and my PC with no help of QTool?

 

Please help me in more detail. I beg you...

 

Thanks,

0 Kudos
Reply
939 Views
xing_chang
NXP Employee
NXP Employee

@pengfei_zhen Please help check.

0 Kudos
Reply