MCUXpresso debug launch problem with PE probe for QN908X-DK

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

MCUXpresso debug launch problem with PE probe for QN908X-DK

2,983 Views
albert_zhou
Contributor III
  • I have two SDK boards -FRDM-KL27Z and QN9080. The MCUXpresso IDE can use PE Debug for FRDM-KL27Z "hello world" and works fine, but it could not find PE Debug probe when launch debug for QN908xcdk_demo_apps_hello_world". instead it uses MCUXpresso's LinkServer Debug.launch and pop up a window says Unable to configure core for probe index 1, Wire not connected. I tried to follow the instruction to recycle the QN9080-DK power or restart MCUXpresso IDE but the problem is the same.
  • the USB cable for FRDM-KL27Z is  Mini-B and the QN908x-DK uses Micro B.
0 Kudos
Reply
13 Replies

2,669 Views
albert_zhou
Contributor III

Hi Estephania,

Follow your instruction, I put jump in JP15. the board debug had launched for "hello world" and works OK!

Now I have question:

1. if I want to run the "qn908xcdk_wireless_examples_bluetooth_heart_rate_sensor_freerots". where to find the two line code you mentioned above and make change?

2. All examples should work without any change even it seems to me NO main() in the source folder?

Thanks,

Albert

0 Kudos
Reply

2,669 Views
estephania_mart
NXP TechSupport
NXP TechSupport

Hello, 

You can find the lines in the app_preinclude.h file line 54 aprox.

I believe you are talking about the projects with RTOS, the examples should work even though you do not have a main() function in the source folder. You do have a main() function in the project, you can find it in the fsl_os_abstraction_free_rtos.c file where you are initializing the scheduler and tasks

Something that you need to take into account, it's that you need to know how the examples you are testing work, there are some examples that have low power enabled, some others do not have it enabled, other ones need that you press a button that will set an event and start a task after it. 

Regards, 

Estephania 

0 Kudos
Reply

2,669 Views
albert_zhou
Contributor III

Hi Estephania,

After made change of the low power define, I tested two function with qn908xcdk demo examples-heart_rate and blood_pressure followed demo application user's guide, both worked well.

Now I have question:

1. if I like to test wireless_Uart, could I use the qn9080 Bluetooth dongle as another board? if can, how?

2. when I start my own application, I would like to put the main() in the source folder. what should I do with the main in fsl_os_abstraction_free_rtos.c and the main_tasks in AppIMain.c?

Thanks,

Albert

0 Kudos
Reply

2,669 Views
estephania_mart
NXP TechSupport
NXP TechSupport

Hello, 

About the first question, sorry it is not possible to achieve it like on the board. You can work with the Wireless Uart profile with the dongle while using the Connectivity QTool but it works with FSCI commands. You can check more information about this in the chapter 7.3.7 Wireless UART profile of the UM11085 which you can find in the installation folder of the QTool. 

Is there a specific reason why you want to put the main() in the source folder? I might be more problematic for you than what it can help you as you will need still to add the different functions and settings in either task.

Regards, 
Estephania 

0 Kudos
Reply

2,669 Views
albert_zhou
Contributor III

Hi Esyephania,

Yes, I am reading the UM11085 about how to use Connecting QTool for my application development. Thanks.

My application is sensors like pH, chlorine and conductivity. That required some continuously signal processing and pwm/4-20mA output. So main loop is necessary for data measurement, averaging and convert unit, etc.

Regards,

Albert

0 Kudos
Reply

2,669 Views
estephania_mart
NXP TechSupport
NXP TechSupport

Hello, 

You do not need a main loop to do that, in fact, you can add different events and tasks for the sensors just like it is working for all the examples using Bluetooth LE, you can check the heart rate sensor example as a base for what you are trying to achieve. 

Nonetheless, please take into account that you will need to make sure you do not add any blocking code to the code flow that might cause you trouble.s 

Regards, 

Estephania 

0 Kudos
Reply

2,669 Views
albert_zhou
Contributor III

Hi Estephania,

Should I add events in fsl_os_abstraction_free_rtos.c  or in main_tasks in AppIMain.c? I will add hardware initial. and peripheral functions like UART. and enable the RX interrupt, etc. I may change the code to get something expected happen but I still don't know how the all API and GATT works.

How is the initial time calculated as in blood_pressue_sensor.c line 67:

#define mInitialTime_c (1451606400U) /* initial timestamp - 01/01/2016 00:00:00 GMT */

and how to get the real time instead?

Regards,

Albert 

0 Kudos
Reply

2,669 Views
estephania_mart
NXP TechSupport
NXP TechSupport

Hello, 

Most of the examples have already through the serial manager a UART interface, have you tried using it and checking that part of the code? You can either use that one or use it as a base for your own instance. 

That it's epoch time, you can use a converter to have the date you want for it. 

To understand the GATT and GAP you will need to read about BLE, you can check some of the videos we have for training but those are for the KW41

I believe you will need as well a custom profile, you can check the following posts: 

https://community.nxp.com/docs/DOC-332703 

https://community.nxp.com/docs/DOC-328287

if you have a question regarding those documents, I would recommend you to either create a new post as the comments there will not be followed

Regards, 

Estephania 

0 Kudos
Reply

2,669 Views
albert_zhou
Contributor III

Hi Estephania,

Thanks. It is good to know the epoch time.

Since I did a project with KL27Z64VFM4. I believe I can handle the peripherals of the QN9080 except the Bluetooth communication. Could you please tell me what difference between M0 and M4 core in hardware configuration?

In the blood pressure demo, I have changed struct bpsMeasurement_t type ieee11073_16BitFloat_t to float for systolicValue, diastolicValue, meanArterialPressure and pulseRate in Bluetooth\profiles\blood_pressure\blood_pressure_interface.h. I don't know why the result shown as below:

1. Systolic display will show 0.0 with 120.0-123.0;

2. Diastolic display 7540000.0 - 7580000.0;

3. Mean AP display 0.0;

4. Pulse rate  display 0.

The two posts your recommend are useful, I will spend time to read and understand GATT and GAP before I can use them.

Regards,

Albert

0 Kudos
Reply

2,669 Views
estephania_mart
NXP TechSupport
NXP TechSupport

Hello, 

Do you mean the general hardware differences? You should not have any issues when using the API's to configure the different peripherals, that should be transparent for you. 

Regards, 

Estephania 

0 Kudos
Reply

2,669 Views
estephania_mart
NXP TechSupport
NXP TechSupport

Hello, 

Were you able to flash another type of example before having this situation? Is your device enumerated as a CMSIS-DAP or is it J-Link?  You can try downloading the code by using the QN908x Programming Tool or you can use the ISP to try to debug it and program it. 

Could you please try one of those methods and let me know if you have either a question or issue while doing so? 

Regards, 
Estephania 

0 Kudos
Reply

2,669 Views
albert_zhou
Contributor III

Hi Estephania,

The QN908xCDK board was first tested with IoT Toolbox proximity (iPhone) and works good. Then I imported "qn908xcdk_demo_aps_hello_world" tested with debug, it was good too. I also edited main() for blinking and toggling three LEDs and run the debug, works OK. Until I run the example - "qn908xcdk_wireless_example_bluetooth_heart_rate_sensor_freetos". the debug launched and the program seems could not get connected to IoT Toolbox. After that, the board could not run "qn908xcdk_demo_aps_hello_world". and all the effort seems no use. The device port shown" LCP-LINK2 CMSIS-DAP V5.173".

I did tried to run QN908xprogramming Tool /ISP uploaded with "qn908xcdk_demo_aps_hello_world.bin" file. I checked with all possible COM-ports in setting. Click "start"..., it did not flash programming.

The Board has green LED on and red led blinking. Press the Reset button,  The three-in-one LED light on... It seems the board is not damaged.

Albert

0 Kudos
Reply

2,669 Views
estephania_mart
NXP TechSupport
NXP TechSupport

Hello, 

 It is most likely that the device can't connect to the debugger as it is in low power mode. You can put the device in the ISP mode by adding a Jumper in JP15 until it gets detected by the debugger, and you can remove it after it. 

If you want to check  the capabilities of the different Bluetooth examples and you are not really interested in the Low Power capabilities, for now, I would recommend you to disable it  by changing the following definitions to 0 

#define cPWR_UsePowerDownMode 0
#define cPWR_BLE_LL_Enable 0

Let me know if you were able to debug your device and if you have any other doubt. 

Regards, 

Estephania 

0 Kudos
Reply