cancel
Showing results for 
Search instead for 
Did you mean: 

Till my last session all was working well. Today when I invoke the debugger, I get an error message which is persisting - as shown in the picture attached. Could anyone please suggest a way out?

NAnand1
Associate III
 
16 REPLIES 16
NAnand1
Associate III

Hi Mattias.

Everything was working fine till now with the Version 1.5, till today - however today when I started to debug, the same problem has now started with Ver 1.5 also. I get exactly the same message as the screenshot given earlier in my thread.

"An internal error occurred during: "Launching SensorNodeV4 SN103".

java.lang.NullPointerException"

I am seriously at a loss what to do. Please help!

Did you "today" (17 days ago) also make another Update of CubeIDE? Is it working?

In case of problems a new full re-install is the best bet. The update mechanism has some known issues:

  • Up until now we have not been able to update the JRE bundled with CubeIDE since it has not been packaged as a plug-in and therefore not possible to with Eclipse update mechanism.
  • Now we move to Java11, this will resolve issues with some 3rd party Eclipse Marketplace plug-ins depending on later Java version / JRE.

People "should" not run into these kind of issues. If you do, then consider a full re-install. Only takes 5-10 minutes. Yes - annoying as #¤%&*... but better then being stuck. And your workspaces and projects are not touched by the re-install so there should be minimal re-configuration of the tool!

NAnand1
Associate III

Hi Mattias

Yes, I ran into the same issue again 18 days ago, but thankfully sorted it out with some struggle spanning over days, in which I got a bit fed up with the complexities in CubeIDE and decided to change over to KEIL uVision, which is much simpler to use for a starter like me.

  1. The first thing I did was to uninstall 1.5.1 and reinstall it, but the problem persisted as before.
  2. Finally I traced it to a Debug profile which was no longer existent on my machine, but the IDE seemed to look for it, I am not sure how and from where that profile entered the system. It would have helped to get a "missing profile" error message, rather than "Unknown Error" which leaves you nowhere.
  3. Another very disturbing feature of the Cube-IDE debugger is that it re-compiles and re-programs the uC each time you hit a reset button during debugging. Which means that if you need to execute a program to the breakpoint again, you need to go through the build cycle again. Makes the entire process extremely inefficient. The reset button should simply put the PC at the starting PM address)

Thanks for the interest..

Naveen

0693W000007ZSdkQAG.jpgHi Mattias

5 hours ago I messaged you that I solved the problem by reconfiguring the Debug Profile.

It seems I was wrong. The error is happening again, DESPITE changing the Debug Profile!!

Stuck Again!!

Pl help!

NA

Hi,

Yes, the learning curve for CubeIDE is a bit steeper than for some other IDEs. Some things could be simplified wil other things are a balance simplicity vs flexibility. In those cases we tend to go for flexibility as a first step, and if later required we can try to add layers on top to simplify stuff...

Anway, just to come back to you 3 points:

  1. OK
  2. debug configurations can be stored either in the workspace or in the project. There maybe issues if creating a new workspace and importing project from an old workspace when the debug configs are not stored inside the projects. But does not sound like your issue.
  3. In the Debugger GUI there are 2 different buttons:
    1. Terminate and relaunch <-- this is the one you used
    2. Reset <-- this is the one you actually wanted to use.

Well good luck in Keil, and welcome back should you later want to switch back ;)

Hi Mattias

Many thanks for your response which I truly appreciate. Based on your advice, I tried to work again on the STM32CubeIDE, but soon ran into a number of difficulties! But first, to answer your Point 3 on reset: I meant that when I press the RESET button (Not Terminate and relaunch), it goes through the cycle of re-compiling and reloading the program before reverting to the Debug mode. Whereas actually I simply want to re-run the loaded program only. This is so in most of my earlier IDE experiences with Microchip as also KEIL.

Is there a setting which simply resets the pre-loaded program to start?

Now the fresh issues:

  1. I tried an old working project in which I had written some serial commands, which had worked perfectly when I used the ST-Link Mini on a virtual COM port. I ported the project from my board to my Nucleo (, which uses LPUART though the onboard ST-Link. It compiled without errors, but the serial comm is not happening. I have checked and double checked port settings etc..
  2. I started from a given LPUART serial example on ST site for Nucleo board NUCLEO-L552ZE-Q and tried to check the same. Surprisingly it didnt compiled with several errors, which I couldnt understand. It is obviously not able to find some system file.

Shall I raise a new ticket for this new issue?

N

Hi N,

About reset vs terminate and re-launch. I better check that we are talking about the same thing here :)

  • The button encircled to the left does what you are looking for. It only moves PC back to Reset_Handler(). Since Reset_Handler is exected the .data and .bss is again initialized, then we continue to main(). You can modify the behavior using "Restart Configurations" and setup your own customer scenario with GDb commands...
  • The button to the right does what you experience. That is, re-compile, re-download, ... This is intended to be a convenient button to make a quick bug fix and re-launch to verify the fix...

About the fresh issues:

  1. Hmmm... Can you verify using the SFR-views that LPUART is sending data, any abnormal flags in the LPUART raised? Are you able to scope the TX pin and see the data?
  2. Have not heard of such issue. All example projects are at least imported and built for deployment in a new CubeFW version. Which CubeFW version and which exact example? If we confirm the issue we will create a new ticket...