Debugging project out of IOT sktechbook

Hello first!

I made my way from void till now without external help.
But now i'm stucked.

I use the JLINK EDU with projects programmed on the local IDE 2.0.
Things are allright.

Now i made my first IOT checkout. Things work as well with the NANO 33 IOT.

Then i shiftet the project from the CLOUD to the local IDE.
Compiles, uploads, works, things are good.

BUT, when i try to debug now the little window beside the "debug triangle"
shows "no configuration" instead of "Arduino" and when i hit "debug" a suggestion in the
launch.json opens showing ... though the launch.json is filled (correctly - hopefully)

{} cortex debug: JLINK
{} cortex debug: OPEN OCD
{} cortex debug: ....

launch.json:
{

"version": "0.2.0",

"configurations": [

{

  "cwd": "${workspaceRoot}",

  "name": "Arduino",

  "request": "launch",

  "type": "cortex-debug",

  "executable": "C:\\Users\\bernh\\AppData\\Local\\Temp\\arduino-sketch-87A6210C4DB38655E65CC5C9EAFE6E5D/nano33iot_1_feb27a.ino.elf",

  "servertype": "jlink",

  "serverpath": "C:/Program Files/SEGGER/JLink_V762a/JLinkGDBServer.exe",

  "armToolchainPath": "C:\\Users\\bernh\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\arm-none-eabi-gcc\\7-2017q4/bin/",

  "configFiles": [

    "C:\\Users\\bernh\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\samd\\1.8.12/variants/nano_33_iot/openocd_scripts/arduino_zero.cfg"

  ],

  "device": "ATSAMD21G18",

  "interface": "SWD"

}

]

}

Can anyone help?
Is further information needed?

THX

Bernardo

Hi @schnber.

Unfortunately, the UI of the Arduino IDE 2.x integrated debugger is still not as user friendly as we would like it to be.

This is the trap with the current debugger UI. The most important thing you must remember is to always use the "Start Debugging" button on the Arduino IDE Toolbar to start the Arduino IDE debugger. DO NOT use the "Debug" icon on the left activity bar:

image

The "Start Debugging" button does three things:

  • Configure the debugger
  • Toggle the "Debug" view in the side panel
  • Start the debugger

The "Debug" icon on the left activity bar only toggles the "Debug " view in the side panel. So if you don't click the "Start Debugging" button then the debugger is never configured.

Once the debugger has been configured, you can use the "Debug" icon o the one on the left activity bar to control the visibility of the debugger, but that is the only thing it can be used for.

If you click the "Start" button in the debugger when it is unconfigured, a launch.json file is added to the sketch. You might think that you can use that to configure the debugger, but you can't. The reason is that, in order to make debugging accessible to the target user, the Arduino IDE automagically generates a launch.json file in the temporary build folder when the debugger is initialized. This file is configured for the board you currently have selected in the Arduino IDE. For this reason, the launch.json file is completely ignored.

Since you are using a J-Link, it is necessary to manually configure the sketch for debugging, but this must be done by adding a debug_custom.json file to the sketch.

Please see this tutorial to learn how to configure your sketch for debugging with the J-Link:

:heart:

That was my fault?! :man_facepalming:
Shame on me and

thanx a lot!

You are welcome. I'm glad if I was able to be of assistance. Enjoy!

Per

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.