<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>vscode cortex-debug launch.json gdb external configuration, how to have the right parameters</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/95313/vscode-cortex-debug-launch-json-gdb-external-configuration-how-to-have-the-right-parameters</link><description>The goal is to have a remote debug session configured and running from vscode with nrf52840 mcu. 
 I am at the moment configuring a remote debug session on an internal LAN network (out of a docker devcontainer ) with: 
 
 j-link base probe
 
 connected</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 09 Jan 2023 13:59:21 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/95313/vscode-cortex-debug-launch-json-gdb-external-configuration-how-to-have-the-right-parameters" /><item><title>RE: vscode cortex-debug launch.json gdb external configuration, how to have the right parameters</title><link>https://devzone.nordicsemi.com/thread/403868?ContentTypeID=1</link><pubDate>Mon, 09 Jan 2023 13:59:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:812caf16-8217-4a75-b1a6-5e60fbe2e896</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi Matthieu,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user="mattfavre"]As far as i understand, GDB connection to the target and GDB commands are working![/quote]
&lt;p&gt;Yes, gdb is working as it should!&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user="mattfavre"]At the moment, i am flashing the MCU manually with the nrf programmer.
&lt;ul&gt;
&lt;li&gt;how can i automate this with gdb? (load command doesn&amp;#39;t seems to work...)&lt;/li&gt;&lt;/ul&gt;[/quote]
&lt;p&gt;&amp;quot;load&amp;quot; can be problematic&amp;nbsp;if you have multi-image builds (mcuboot + app for instance).&lt;/p&gt;
&lt;p&gt;this is because it only updates the application part, and not the image as a whole.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;nrfjprog should have support for remote connections now, as shown in the release notes for v10.15.0:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;- (nrfjprog.exe) Added option &amp;quot;--ip&amp;quot; and &amp;quot;--port&amp;quot; for connecting to a network enabled debugger.&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;You could try to use that. Alternative can be to use JLink.exe (J-Link commander) to remotely connect and download the binary.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: vscode cortex-debug launch.json gdb external configuration, how to have the right parameters</title><link>https://devzone.nordicsemi.com/thread/403733?ContentTypeID=1</link><pubDate>Mon, 09 Jan 2023 08:06:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:65baeeb5-b65a-45e1-a56a-23755d5aa8f4</guid><dc:creator>mattfavre</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;span&gt;H&amp;aring;kon,&lt;br /&gt;Thanks for the insights it helps a lot, here is what I did and the actual state:&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What I did:&amp;nbsp;&lt;/strong&gt;&lt;span&gt;(All actions are made in the docker devcontainer)&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span&gt;&lt;span&gt;Reinstalled the ARM GNU toolchain (&lt;/span&gt;&lt;/span&gt;x86_64 Linux hosted cross toolchains) from&amp;nbsp;&lt;a id="" href="https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads"&gt;https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Change the compilation optimisation flag in makefile from -O0 to -Og and recompiled everything&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;#OPT_FLAG   := -O0
OPT_FLAG   := -Og
DEBUG_FLAG := -g3&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;Recompiled the firmware and flashed the target&lt;/li&gt;
&lt;li&gt;Tried a remote command line GDB debug session, it seems it works,&amp;nbsp;here is the outputs:&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;Terminal output (from devcontainer)

arm-none-eabi-gdb application.out 
GNU gdb (Arm GNU Toolchain 12.2.Rel1 (Build arm-12.24)) 12.1.90.20221210-git
Copyright (C) 2022 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later &amp;lt;http://gnu.org/licenses/gpl.html&amp;gt;
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type &amp;quot;show copying&amp;quot; and &amp;quot;show warranty&amp;quot; for details.
This GDB was configured as &amp;quot;--host=x86_64-pc-linux-gnu --target=arm-none-eabi&amp;quot;.
Type &amp;quot;show configuration&amp;quot; for configuration details.
For bug reporting instructions, please see:
&amp;lt;https://bugs.linaro.org/&amp;gt;.
Find the GDB manual and other documentation resources online at:
    &amp;lt;http://www.gnu.org/software/gdb/documentation/&amp;gt;.

For help, type &amp;quot;help&amp;quot;.
Type &amp;quot;apropos word&amp;quot; to search for commands related to &amp;quot;word&amp;quot;...
Reading symbols from application.out...
(gdb) target remote host.docker.internal:2331
Remote debugging using host.docker.internal:2331
0xdeadbeee in ?? ()
(gdb) print /x idle_state_handle
$1 = 0x8
(gdb) print /x idle_state_handle
$2 = 0x8
(gdb) print /x idle_state_handle
$3 = 0x8
(gdb) b main
Breakpoint 1 at 0x3b510: file application/application/main.c, line 65.
(gdb) monitor reset
Resetting target
(gdb) c
Continuing.

Breakpoint 1, main () at application/application/main.c:65
65      {
(gdb) backtrace
#0  main () at application/application/main.c:65
(gdb) &lt;/pre&gt;&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;SEGGER J-Link GDB Server Log

Connected to 127.0.0.1
Reading all registers
ERROR: Cannot read register 0 (R0) while CPU is running
ERROR: Cannot read register 1 (R1) while CPU is running
ERROR: Cannot read register 2 (R2) while CPU is running
ERROR: Cannot read register 3 (R3) while CPU is running
ERROR: Cannot read register 4 (R4) while CPU is running
ERROR: Cannot read register 5 (R5) while CPU is running
ERROR: Cannot read register 6 (R6) while CPU is running
ERROR: Cannot read register 7 (R7) while CPU is running
ERROR: Cannot read register 8 (R8) while CPU is running
ERROR: Cannot read register 9 (R9) while CPU is running
ERROR: Cannot read register 10 (R10) while CPU is running
ERROR: Cannot read register 11 (R11) while CPU is running
ERROR: Cannot read register 12 (R12) while CPU is running
ERROR: Cannot read register 13 (R13) while CPU is running
ERROR: Cannot read register 14 (R14) while CPU is running
ERROR: Cannot read register 15 (R15) while CPU is running
ERROR: Cannot read register 16 (XPSR) while CPU is running
ERROR: Cannot read register 17 (MSP) while CPU is running
ERROR: Cannot read register 18 (PSP) while CPU is running
ERROR: Cannot read register 24 (PRIMASK) while CPU is running
ERROR: Cannot read register 25 (BASEPRI) while CPU is running
ERROR: Cannot read register 26 (FAULTMASK) while CPU is running
ERROR: Cannot read register 27 (CONTROL) while CPU is running
ERROR: Cannot read register 32 (FPSCR) while CPU is running
ERROR: Cannot read register 33 (FPS0) while CPU is running
ERROR: Cannot read register 34 (FPS1) while CPU is running
ERROR: Cannot read register 35 (FPS2) while CPU is running
ERROR: Cannot read register 36 (FPS3) while CPU is running
ERROR: Cannot read register 37 (FPS4) while CPU is running
ERROR: Cannot read register 38 (FPS5) while CPU is running
ERROR: Cannot read register 39 (FPS6) while CPU is running
ERROR: Cannot read register 40 (FPS7) while CPU is running
ERROR: Cannot read register 41 (FPS8) while CPU is running
ERROR: Cannot read register 42 (FPS9) while CPU is running
ERROR: Cannot read register 43 (FPS10) while CPU is running
ERROR: Cannot read register 44 (FPS11) while CPU is running
ERROR: Cannot read register 45 (FPS12) while CPU is running
ERROR: Cannot read register 46 (FPS13) while CPU is running
ERROR: Cannot read register 47 (FPS14) while CPU is running
ERROR: Cannot read register 48 (FPS15) while CPU is running
ERROR: Cannot read register 49 (FPS16) while CPU is running
ERROR: Cannot read register 50 (FPS17) while CPU is running
ERROR: Cannot read register 51 (FPS18) while CPU is running
ERROR: Cannot read register 52 (FPS19) while CPU is running
ERROR: Cannot read register 53 (FPS20) while CPU is running
ERROR: Cannot read register 54 (FPS21) while CPU is running
ERROR: Cannot read register 55 (FPS22) while CPU is running
ERROR: Cannot read register 56 (FPS23) while CPU is running
ERROR: Cannot read register 57 (FPS24) while CPU is running
ERROR: Cannot read register 58 (FPS25) while CPU is running
ERROR: Cannot read register 59 (FPS26) while CPU is running
ERROR: Cannot read register 60 (FPS27) while CPU is running
ERROR: Cannot read register 61 (FPS28) while CPU is running
ERROR: Cannot read register 62 (FPS29) while CPU is running
ERROR: Cannot read register 63 (FPS30) while CPU is running
ERROR: Cannot read register 64 (FPS31) while CPU is running
ERROR: Cannot read register 33 (FPS0) while CPU is running
ERROR: Cannot read register 34 (FPS1) while CPU is running
ERROR: Cannot read register 35 (FPS2) while CPU is running
ERROR: Cannot read register 36 (FPS3) while CPU is running
ERROR: Cannot read register 37 (FPS4) while CPU is running
ERROR: Cannot read register 38 (FPS5) while CPU is running
ERROR: Cannot read register 39 (FPS6) while CPU is running
ERROR: Cannot read register 40 (FPS7) while CPU is running
ERROR: Cannot read register 41 (FPS8) while CPU is running
ERROR: Cannot read register 42 (FPS9) while CPU is running
ERROR: Cannot read register 43 (FPS10) while CPU is running
ERROR: Cannot read register 44 (FPS11) while CPU is running
ERROR: Cannot read register 45 (FPS12) while CPU is running
ERROR: Cannot read register 46 (FPS13) while CPU is running
ERROR: Cannot read register 47 (FPS14) while CPU is running
ERROR: Cannot read register 48 (FPS15) while CPU is running
ERROR: Cannot read register 49 (FPS16) while CPU is running
ERROR: Cannot read register 50 (FPS17) while CPU is running
ERROR: Cannot read register 51 (FPS18) while CPU is running
ERROR: Cannot read register 52 (FPS19) while CPU is running
ERROR: Cannot read register 53 (FPS20) while CPU is running
ERROR: Cannot read register 54 (FPS21) while CPU is running
ERROR: Cannot read register 55 (FPS22) while CPU is running
ERROR: Cannot read register 56 (FPS23) while CPU is running
ERROR: Cannot read register 57 (FPS24) while CPU is running
ERROR: Cannot read register 58 (FPS25) while CPU is running
ERROR: Cannot read register 59 (FPS26) while CPU is running
ERROR: Cannot read register 60 (FPS27) while CPU is running
ERROR: Cannot read register 61 (FPS28) while CPU is running
ERROR: Cannot read register 62 (FPS29) while CPU is running
ERROR: Cannot read register 63 (FPS30) while CPU is running
ERROR: Cannot read register 64 (FPS31) while CPU is running
Read 4 bytes @ address 0xDEADBEEE (Data = 0x00000000)
Read 1 bytes @ address 0x0003B4F0 (Data = 0x08)
Read 1 bytes @ address 0x0003B4F0 (Data = 0x08)
Read 1 bytes @ address 0x0003B4F0 (Data = 0x08)
Read 2 bytes @ address 0x0003B510 (Data = 0xB508)
Received monitor command: reset
Resetting target
Setting breakpoint @ address 0x0003B510, Size = 2, BPHandle = 0x0002
Starting target CPU...
...Breakpoint reached @ address 0x0003B510
Reading all registers
Removing breakpoint @ address 0x0003B510, Size = 2
Read 4 bytes @ address 0x0003B510 (Data = 0x4A22B508)
Read 4 bytes @ address 0x000272E2 (Data = 0xF957F023)
Reading 64 bytes @ address 0x00027280
Read 4 bytes @ address 0x000272F4 (Data = 0x20040000)
Read 4 bytes @ address 0x000272EA (Data = 0x00000008)&lt;/pre&gt;&lt;br /&gt;As far as i understand, GDB connection to the target and GDB commands are working!&lt;/li&gt;
&lt;li&gt;I&amp;nbsp;overrid some monitor commands based on
&lt;ul&gt;
&lt;li&gt;the supported monitor commands by J-LinkGDBServer&amp;nbsp;&lt;a id="" href="https://wiki.segger.com/J-Link_GDB_Server"&gt;https://wiki.segger.com/J-Link_GDB_Server&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;a comparison of the commands sent by the marus25 extension when using external type or jlink type
&lt;ul&gt;
&lt;li&gt;&lt;a id="" href="https://github.com/Marus/cortex-debug/blob/1391ae72a3754a54f24466d454e255ac28cbdbd1/src/external.ts"&gt;https://github.com/Marus/cortex-debug/blob/1391ae72a3754a54f24466d454e255ac28cbdbd1/src/external.ts&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a id="" href="https://github.com/Marus/cortex-debug/blob/1391ae72a3754a54f24466d454e255ac28cbdbd1/src/jlink.ts"&gt;https://github.com/Marus/cortex-debug/blob/1391ae72a3754a54f24466d454e255ac28cbdbd1/src/jlink.ts&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a id="" href="https://github.com/Marus/cortex-debug/blob/master/debug_attributes.md"&gt;https://github.com/Marus/cortex-debug/blob/master/debug_attributes.md&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;pre class="ui-code" data-mode="text"&gt;{
            &amp;quot;cwd&amp;quot;: &amp;quot;${workspaceFolder}&amp;quot;,
            &amp;quot;executable&amp;quot;: &amp;quot;${workspaceFolder}/application/_build/pod_application.out&amp;quot;,
            &amp;quot;name&amp;quot;: &amp;quot;Debug devcontainer arm-none-eabi-gdb&amp;quot;,
            &amp;quot;request&amp;quot;: &amp;quot;launch&amp;quot;,
            &amp;quot;type&amp;quot;: &amp;quot;cortex-debug&amp;quot;,
            &amp;quot;servertype&amp;quot;: &amp;quot;external&amp;quot;,
            &amp;quot;gdbPath&amp;quot;: &amp;quot;/opt/gcc-arm-none-eabi/bin/arm-none-eabi-gdb&amp;quot;,
            &amp;quot;gdbTarget&amp;quot;: &amp;quot;host.docker.internal:2331&amp;quot;,
            &amp;quot;device&amp;quot;: &amp;quot;NRF52840_XXAA&amp;quot;,
            &amp;quot;runToEntryPoint&amp;quot;: &amp;quot;main&amp;quot;,
            &amp;quot;svdFile&amp;quot;: &amp;quot;${workspaceRoot}/nrf5_sdk/modules/nrfx/mdk/nrf52840.svd&amp;quot;,
            &amp;quot;overrideRestartCommands&amp;quot;: [
                &amp;quot;monitor halt&amp;quot;,
                &amp;quot;monitor reset&amp;quot;
            ],
            &amp;quot;overrideResetCommands&amp;quot;: [
                &amp;quot;monitor reset&amp;quot;
            ],
            &amp;quot;preLaunchCommands&amp;quot;: [
                &amp;quot;monitor reset&amp;quot;
            ],
            &amp;quot;postLaunchCommands&amp;quot;: [
            ],
            &amp;quot;showDevDebugOutput&amp;quot;: &amp;quot;both&amp;quot;
        },&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;With those adaptations, I can debug step by steps from the vscode interface&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Question:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;At the moment, i am flashing the MCU manually with the nrf programmer.
&lt;ul&gt;
&lt;li&gt;how can i automate this with gdb? (load command doesn&amp;#39;t seems to work...)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Any other suggestions to add functionalities, script automation or other way to do?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Matthieu&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: vscode cortex-debug launch.json gdb external configuration, how to have the right parameters</title><link>https://devzone.nordicsemi.com/thread/403001?ContentTypeID=1</link><pubDate>Tue, 03 Jan 2023 14:31:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:55a8c8f1-bf84-4e34-9aaa-463a5802fece</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Your log shows:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;Cortex-Debug: VSCode debugger extension version 1.6.9 git(4c381ef). Usage info: https://github.com/Marus/cortex-debug#usage
Reading symbols from /usr/bin/objdump-multiarch --syms -C -h -w /workspaces/fw-pod/application/_build/pod_application.out
Reading symbols from /usr/bin/nm-multiarch --defined-only -S -l -C -p /workspaces/fw-pod/application/_build/pod_application.out
Launching GDB: /usr/bin/gdb-multiarch -q --interpreter=mi2
1-gdb-version
Error: /usr/bin/nm-multiarch failed! statics/global/functions may not be properly classified: Error: spawn /usr/bin/nm-multiarch ENOENT
    Expecting `nm` next to `objdump`. If that is not the problem please report this.
Error: objdump failed! statics/globals/functions may not be properly classified: Error: spawn /usr/bin/objdump-multiarch ENOENT    ENOENT means program not found. If that is not the issue, please report this problem.Finished reading symbols from objdump: Time: 15 ms
Finished reading symbols from nm: Time: 13 ms
-&amp;gt; =thread-group-added,id=&amp;quot;i1&amp;quot;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I would recommend that you use arm-none-eabi instead of multiarch, to avoid such problems.&lt;/p&gt;
&lt;p&gt;It seems that you initially break here:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;GDB -&amp;gt; App: {&amp;quot;output&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;outOfBandRecord&amp;quot;:[{&amp;quot;isStream&amp;quot;:true,&amp;quot;type&amp;quot;:&amp;quot;console&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;73\t    APP_SCHED_INIT(SCHED_MAX_EVENT_DATA_SIZE, SCHED_QUEUE_SIZE);\n&amp;quot;}]}
73	    APP_SCHED_INIT(SCHED_MAX_EVENT_DATA_SIZE, SCHED_QUEUE_SIZE);&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;But, you do not show any info on how this is shown in vscode, so it is hard to say what can be the issue, given that you mention single-stepping and stopping on breakpoints as a problem.&lt;/p&gt;
[quote user=""]Some GDB commands are somehow not expected by the J-Link GDB server as seen in the logs:
&lt;ul&gt;
&lt;li&gt;Received monitor command: reset halt&lt;br /&gt;Expected an decimal digit (0-9)&lt;/li&gt;
&lt;li&gt;Any ideas regarding that?&lt;/li&gt;&lt;/ul&gt;[/quote]
&lt;p&gt;Looks like the cortex m debug plugin issues a &amp;quot;monitor reset halt&amp;quot;&lt;/p&gt;
[quote user=""]&lt;ul&gt;&lt;li&gt;Do you have any inputs regarding the launch.json configuration and tools chosen?
&lt;ul&gt;
&lt;li&gt;Is it a good option, should I change something?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Is there some pre/post debug sequences I should add/adapt?
&lt;div&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;preLaunchCommands?&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;postLaunchCommands?&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span&gt;overrideResetCommands?&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span&gt;overrideRestartCommands?&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span&gt;postAttachCommands?&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span&gt;postLaunchCommands?&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span&gt;postResetCommands?&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;ect...&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Any other inputs?&lt;/li&gt;&lt;/ul&gt;[/quote]
&lt;p&gt;First I would recommend that you, from the container, connect manually using gdb:&lt;/p&gt;
&lt;p&gt;my-gdb path/to/.elf&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;And in gdb:&lt;/p&gt;
&lt;p&gt;target remote ip:port&lt;/p&gt;
&lt;p&gt;backtrace&lt;/p&gt;
&lt;p&gt;print /x some_variable&lt;/p&gt;
&lt;p&gt;b main # set breakpoint at main()&lt;/p&gt;
&lt;p&gt;monitor reset&lt;/p&gt;
&lt;p&gt;c # continue until breakpoint it hit&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;This is to verify that your debug connection is working. I haven&amp;#39;t used multiarch-gdb myself, so I cannot verify if it actually works as intended with cortex m.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: vscode cortex-debug launch.json gdb external configuration, how to have the right parameters</title><link>https://devzone.nordicsemi.com/thread/402943?ContentTypeID=1</link><pubDate>Tue, 03 Jan 2023 12:18:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:cc77e305-5840-40be-8946-dae177e11c9b</guid><dc:creator>mattfavre</dc:creator><description>&lt;p&gt;One more main issue is that&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;step by step debugging and&lt;/li&gt;
&lt;li&gt;stop at main after debug launch&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;don&amp;#39;t work.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>