Hello,
I did data transmission through QN908xcdk using SDK example: "qn908xcdk_wireless_examples_bluetooth_private_profile_server_bm". It works fine, and USB dongle get data well through connectivity QTool.
Now I want to do this work in my own PCB board on which MCU(QN9080) is mounted. I succeed BLE pairing between my own PCB board and USB dongle. So, I try to get a data-stream through QPPC(private profile client) in connectivity QTool. Only a few first seconds, it gets a data well. However, it suddenly stops while receiving data and does not proceed afterwards. (The same job is done well through QN908xcdk.)
My QTool setting, PCB design is attached. And this question is a continuation of my question: QN9080cdk Bluetooth example pin setting, so please refer to it.
Is this a pairing issue because I use the other antenna('2450AT18A100') with DK? Is it possible to solve this problem by changing the code in IDE SDK or setup in QTool? Or is there any other good SDKs (not QPP) to send data wirelessly through my PCB board MCU to USB dongle?
Thanks,
Solved! Go to Solution.
Hello,
Thank you for sharing your ApplMain.c, but I still have some question related on how you implemented the BleAPP_Start().
This function BleAPP_Start() is used in the private_profile_server.c and defined on the private_profile_server.h, I don’t know where did you define the BleAPP_Start, I would recommend that instead of using the BleAPP_Start(), in the ApplMain, create another task and remove the Handel Keys function to start the advertising process as it is on the private_profile_server.c .
This could be causing troubles and malfunction on the project logic.
Is qn9090/30 compatible with Bluetooth ® 5 & NFC?
Hello,
The QN9090/30(T) does have support for the following features:
Please let me know if there is anything else where I can help you.
Hello,
Thank you for contacting NXP support.
I appreciate the information proportionated, in this case in specific there should not be a problem when using the 2450AT18A100 as in the BLE Antenna Design Guide is mentioned that it is supported on the QN9080 device. But I would recommend in this case, as it is also mentioned on the design guide to consult directly with the manufacturer in case there could be any detail that is not mentioned in the manual.
I just review you pcb settings and everything seems to be fine, if it is possible can you please share with me your schematics.
Thank you for your reply.
I upload the PCB schematic of mine, but I wonder you cannot open it because there are many different kinds of PCB tool programs. So, I also send you a screen picture of my PCB MCU parts, too.
There is one more difference with DK and my PCB. DK use 32MHz XTAL, but I use 16MHz XTAL. So I modify...
clock_config.h -> BOARD_XTAL0_CLK_HZ -> 32000000U ==> 16000000U
clock_config.c -> k32M_to_XTAL_CLK ==> k16M_to_XTAL_CLK
Could there be a problem in this part?
If there is no error in hardware, why this kind of problem happen? Can I handle it in IDE MCUxpresso software?
Best regards,
Hello,
Thank you for providing the schematic, I already check this out and verified this with the Hardware Design guide, and everything seems to be fine.
Can you please help me with the following information as I think this could be a software implementation trouble:
Thank you for your reply.
1. When the device (QN9080) suddenly stops sending data do you receive a disconnect event? If so can you please share with me and image.
2. Can you please also help me by debugging this example, to see in what part the device could be stop sending messages.
3. Also If it is possible can you please help me with some sniffer captures just to have a better view of the packets.
I also upload the attachments: SDK file which I debugged, and the videos of my procedure. It might help your understanding. (The reason I insert BleApp_Start() is there is no Button1 on my PCB board. And my XTAL is 16MHz)
Best regards,
Hello,
Thank you in advance for the information provided I really appreciated.
Can you please help me with another test case:
Please test the example on your custom board, but instead of connecting this to the USB Dongle can you please test this directly with your mobile phone. This test case would be really helpful as we will notice if this problem can really on something related to the Dongle.
Thank you for the continued help. This is an important problem that the success of my project depends on, so I really appreciate your continuing help. As you mentioned, I tried to receive the data, not from the USB dongle but from mobile phone.
DK -> USB dongle or mobile phone : paring well, data transmission well
my PCB board -> USB dongle or mobile phone: pairing well, but data transmission stops suddenly.
Therefore, I think this is not a problem from USB dongle. I don't think there's any problem with the hardware, as pairing seems to work out well immediately. Is there any other reason in the software why data transmission suddenly stops? If it's because of unstable connection due to antenna, is there a way to keep sending data even if there's some kind of little delay?
Also, I just want to send the byte stream data from QN9080 on my PCB board to PC wirelessly(through Bluetooth) in any way, so I also really appreciate that if you recommend a new method other than private profile server (QPPS).
Best regards,
Hello,
Thank you for confirming that the data transmission also present troubles and that this is not just focused on the USB Dongle side. Therefore I think that this community post explain in a more detailed way how to implement a Custom Profile this is oriented for QN9090, but you can use this as a guidance for the QN9080. I also agree that the problem seems not to be related with the hardware issues.
Please let me know if this alternative is useful.
Thank you for your continuous response. First of all, I apologize for not delivering accurate information due to my experimental mistake. Here is a new one.
In ApplMain.c, when I insert BleApp_Start() in main_task(), same problem happens even if I test with DK board.
I think I need to do something different (not just insert BleApp_Start()) to start private server module immediately after debug running. Would you please help?
Best regards,
Hello,
Thank you for sharing your ApplMain.c, but I still have some question related on how you implemented the BleAPP_Start().
This function BleAPP_Start() is used in the private_profile_server.c and defined on the private_profile_server.h, I don’t know where did you define the BleAPP_Start, I would recommend that instead of using the BleAPP_Start(), in the ApplMain, create another task and remove the Handel Keys function to start the advertising process as it is on the private_profile_server.c .
This could be causing troubles and malfunction on the project logic.