Hello
Until today, I used the MCUXpresso v11.6.
I have a target NXP MKL33Z256.
I'm using the PEMicro Multilink (RevC)
Without any problem, I can display into the console the result of a "printf".
Today, I installated the MCUXpresso v11.7.
Now, I have the following message when I want debug:
"Could not connect to semihosting port due to connection timeout. Please check that the correct port number is configured."
The configuration is identical because it is the same project. It was just migrated on the first openning of MCUxpresso v11.7 when I pointed to the v11.6 workspace.
I try to create a new workspace and import again the project, create the launch configuration again.
But problem still present.
I open again the workspace with v11.6: All work properly
It is an issue than somebody else have or not?
Regards
To anyone who is experiencing this issue with MCUXpresso 11.7, PEMicro has released a new version of the plugin that resolves the issue.
The plugin version that I installed to fix the issue was:
"GNU ARM PEMicro Interface Debugging Support 5.5.5.202303221907"
PEMicro said the you do not need to check the "PEmicro ARM Device Expansion Plugin" in MCUXpresso.
PEMicro has instructions on how to update the plugins at the following link: https://www.pemicro.com/blog/index.cfm?post_id=124
The original thread is here: https://www.pemicro.com/forums/forum.cfm?forum_topic_id=8449&forum_id=8#c28573
Best Regards,
Peter
I upgraded our codebase to MCUXpresso IDE v11.7.0 [Build 9198] [2023-01-17] and this regression has a big impact to my company because we are using the PE Micro probe to log to file for overnight and weekend test runs. The MCU-Link probe does not log to file.
The fact that NXP did not test this very common use case makes NXP look incompetent.
I have submitted a service request for this and will update with what I get back from NXP.
We're working with PEmicro team to identify the root cause of the issue. It is really machine-dependent, making it quite difficult to reproduce. We don't have test machines to cover all possible configurations, and reports like the ones in this thread are quite isolated cases. We suspect the issue is caused by a mixture of updated Eclipse + JRE + PEmicro software and machine-specific configuration. We'll follow-up on this thread once we have updates.
Regards,
MCUXpresso IDE Support
Yes... JRE = Java Runtime Environment...
MCUXpresso IDE (Eclipse underneath) needs a JRE in order to run, so you cannot uninstall it. It's also worth mentioning that MCUXpresso IDE is shipped with its own JRE.
Regards,
MCUXpresso IDE Support
Hi @p3 ,
I can confirm that I see that P&E issue in 11.7.0 (it works in 11.6.x) too.
But on my side I'm able to use the LinkServer file I/O with 11.7.0, both with Mcu-Link and Mcu-Link Pro (see some results in https://mcuoneclipse.com/2023/03/09/using-semihosting-the-direct-way/ ).
I'm using it with a K22F with newlib-nano (semihost). The device should not matter, but the library does: can you check that you have selected the (semihost) library?
I hope this helps,
Erich
Erich,
We are using redlib and changing to newlib would require some minor code changes and a lot of regression testing so it's considered a non-trivial change. I would probably prefer to be on newlib, but that's beside the point.
We currently use the Eclipse CDT feature to save to file by redirecting the semi-hosting output. I have no idea why it doesn't work with MCU-Link and I have not gone after NXP for that issue as of yet.
If I can get MCU-Link working that would be great because it is faster to debug and much more affordable to purchase than the P&E Multilink.
Regards
Hi @p3 ,
I quickly tested that project from https://mcuoneclipse.com/2023/03/09/using-semihosting-the-direct-way/ with Redlib and my MCU-Link (non-pro) probe in IDE 11.7.0, and I'm can open, read and write files:
Just one thing to mention: do not use the 'nf' variants (I first was thinking it is for 'no-float', but it is for 'no-file'). So if if using the nf variants, you have no standard library file support.
I hope this helps,
Erich
Erich,
This is great information you are providing, but currently I'm trying to use the Eclipse CDT method of redirecting the debug output to file. I have set my library to Redlib (semihost) and I still do not seem to get a populated log file.
To my understanding, that CDT Standard Input and Output file redirection does not work with such a debug probe.
It creates a file, but then expects the GDB server to create an intermediate process to catch stdin and stdout. That works fine for example doing embedded linux debugging with a gdb stub on the target.
If you really want to log things to a file, I recommend to use the approach I had presented in my article.
I hope this helps,
Erich
Hi Peter,
So I tried the console logging with the P&E probe (using 11.6.0), and I can confirm that it does create the file. But what I see is that it logs both the debug and the semihosting console output to a single file.
Is this the same what you have?
Erich
Erich,
I retested this with the new PEMicro plugin with MCUXpresso 11.7 and it does combine the two consoles into one single log file. I got both the semihosting printf() output and the FreeRTOS kernal logging.
-Peter
Hi @arnogir ,
I have published a new article about semihosting (it mentions as well the problem you have seen) here: https://mcuoneclipse.com/2023/03/09/using-semihosting-the-direct-way/
That way you can use semihosting in a different way, and I hope the P&E issue will be resolved soon.
I hope this is useful,
Erich
Hello
Thank for this fast feedback!
"My workaround is to use the J-Link or Multilink instead for semihosting."
Could you explain in details your workarround? I'm using the Multilink. Maybe i'm not an expert on this part.
Regards
Segger J-Link or the NXP LinkServer are alternative probes which work for me.
I'm still hoping that a PEMICRO debug firmware/driver update will fix the issue.
Hi @arnogir ,
I can confirm that I have the same issue and have already reported it to NXP (they are looking into it). My workaround is to use the J-Link or LinkServer instead for semihosting.
For the J-Link, SEGGER just has fixed an issue with Semihosting too, so be sure to download and use the latest J-Link software.
I hope this helps,
Erich