cancel
Showing results for 
Search instead for 
Did you mean: 

I just upgraded my IDE to 1.9.0. I am trying to get Segger JLink to work in debug mode. It is able to connect and download the firmware to the MCU but it shuts down straightaway after doing so. How do I stop it from shutting down? It didn't do that 1.6.x.

EAng.1
Associate II

SEGGER J-Link GDB Server V7.62a Command Line Version

JLinkARM.dll V7.62a (DLL compiled Feb 23 2022 17:02:35)

Command line: -port 2331 -s -device STM32L4Q5RG -endian little -speed 4000 -if swd -swoport 2332 -vd

-----GDB Server start settings-----

GDBInit file:         none

GDB Server Listening port:   2331

SWO raw output listening port: 2332

Terminal I/O port:       2333

Accept remote connection:   yes

Generate logfile:       off

Verify download:        on

Init regs on start:      off

Silent mode:          off

Single run mode:        on

Target connection timeout:   0 ms

------J-Link related settings------

J-Link Host interface:     USB

J-Link script:         none

J-Link settings file:     none

------Target related settings------

Target device:         STM32L4Q5RG

Target interface:       SWD

Target interface speed:    4000kHz

Target endian:         little

Connecting to J-Link...

J-Link is connected.

Firmware: J-Link V10 compiled Nov 2 2021 12:14:50

Hardware: V10.10

S/N: 260113667

OEM: SEGGER-EDU

Feature(s): FlashBP, GDB

Checking target voltage...

Target voltage: 3.06 V

Listening on TCP/IP port 2331

Connecting to target...

Connected to target

Waiting for GDB connection...Connected to 127.0.0.1

Reading all registers

Read 4 bytes @ address 0x080077A2 (Data = 0xB1D3681B)

Received monitor command: WriteDP 0x2 0xF0

O.K.

Received monitor command: ReadAP 0x2

O.K.:0xE00FF003

Reading 32 bytes @ address 0xE00FFFD0

Connected to 127.0.0.1

Reading all registers

Read 4 bytes @ address 0x080077A2 (Data = 0xB1D3681B)

Received monitor command: reset

Resetting target

Read 4 bytes @ address 0x080077F2 (Data = 0x681B4B07)

Reading 64 bytes @ address 0x20000200

Read 4 bytes @ address 0x08008224 (Data = 0x2300B082)

Reading 64 bytes @ address 0x20000240

Read 4 bytes @ address 0x2000023C (Data = 0x200001EC)

Reading 64 bytes @ address 0x20000000

Read 4 bytes @ address 0x2000023C (Data = 0x200001EC)

Downloading 444 bytes @ address 0x08000000 - Verified OK

Downloading 16000 bytes @ address 0x080001C0 - Verified OK

Downloading 15888 bytes @ address 0x08004040 - Verified OK

Downloading 2324 bytes @ address 0x08007E50 - Verified OK

Downloading 484 bytes @ address 0x08008764 - Verified OK

Downloading 8 bytes @ address 0x08008948 - Verified OK

Downloading 4 bytes @ address 0x08008950 - Verified OK

Downloading 4 bytes @ address 0x08008954 - Verified OK

Downloading 20 bytes @ address 0x08008958 - Verified OK

Writing register (PC = 0x 8001600)

Read 4 bytes @ address 0x08001600 (Data = 0xD034F8DF)

Read 2 bytes @ address 0x08001600 (Data = 0xF8DF)

Read 2 bytes @ address 0x08001602 (Data = 0xD034)

Read 4 bytes @ address 0xE000ED14 (Data = 0x00000200)

Downloading 4 bytes @ address 0xE000ED14 - Verified OK

Reading all registers

Read 4 bytes @ address 0x08001600 (Data = 0xD034F8DF)

Read 2 bytes @ address 0x08001600 (Data = 0xF8DF)

Read 2 bytes @ address 0x08001602 (Data = 0xD034)

Read 4 bytes @ address 0xE000EDFC (Data = 0x01000000)

Downloading 4 bytes @ address 0xE000EDFC - Verified OK

Reading all registers

Read 4 bytes @ address 0x08001600 (Data = 0xD034F8DF)

Read 2 bytes @ address 0x08001600 (Data = 0xF8DF)

Read 2 bytes @ address 0x08001602 (Data = 0xD034)

Read 2 bytes @ address 0x08000DA0 (Data = 0xB500)

Setting breakpoint @ address 0x08000DA0, Size = 2, BPHandle = 0x0001

Starting target CPU...

...Breakpoint reached @ address 0x08000DA0

Reading all registers

Removing breakpoint @ address 0x08000DA0, Size = 2

Read 4 bytes @ address 0x08000DA0 (Data = 0xB0BFB500)

Read 4 bytes @ address 0x08001636 (Data = 0x0000E7FE)

Reading 64 bytes @ address 0x08001600

Read 4 bytes @ address 0x08001638 (Data = 0x20050000)

Reading 64 bytes @ address 0x2004FFC0

Reading 8 bytes @ address 0x20004744

Reading 8 bytes @ address 0x08008950

Reading 8 bytes @ address 0x20000B64

Reading 64 bytes @ address 0x2004FF80

Reading 8 bytes @ address 0x20000290

Reading 64 bytes @ address 0x2004FF40

Reading 8 bytes @ address 0x08008890

Reading 8 bytes @ address 0x08008898

Reading 8 bytes @ address 0x080088A0

Reading 8 bytes @ address 0x080088A8

Reading 64 bytes @ address 0x2004FF00

Reading 8 bytes @ address 0x080088B0

Reading 8 bytes @ address 0x080088B8

Reading 8 bytes @ address 0x080088C0

Reading 8 bytes @ address 0x080088C4

Reading 8 bytes @ address 0x080088CC

GDB closed TCP/IP connection (Socket 10)

Restoring target state and closing J-Link connection...

Shutting down...

Thank you!

1 ACCEPTED SOLUTION

Accepted Solutions

Confirmed up-stream regression in GDB.

This issue only exist on Linux (from what we know today)...

Not possibility to fix this for the next release. Since, there is no plan to update the toolchain in the next release.

Possible work-arounds:

  • Use the toolchain from CubeIDE 1.8.0 based on GCC version 9.
  • Or replace the arm-none-eabi-gdb.exe only from GCC version 9 and use it with GCC version 10.

Internal ticket reference 126202.

Sorry for the inconvenience! We have many Linux machines internally, only on one system were we able to re-produce this issue. Hopefully the customer impact is quite limited. This is the only bug report received at this point.

Kind regards, Mattias

View solution in original post

5 REPLIES 5
Markus GIRDLAND
ST Employee

Hello there,

I'm not a J-Link expert so if nobody is able to help you here then perhaps you would need to use the Segger forums. However, it looks like you might be using "Run" and not "Debug"? Possibly the -s command that activates the 'singlerun' option?

mattias norlander
ST Employee

Another question. Which OS are you running on when encountering this issue?

Hi Markus,

Thanks so much for getting back. I deliberately changed the mode in my project settings to Debug mode and the result remained the same.

Could you advise where I might be able to remove the -s switch? I attach a screenshot of my J-Link settings.0693W00000LxRB8QAN.png 

Thanks,

Ed

This is Ubuntu 20.04.4 LTS. I tried using in Windows 11 and it worked without problems.

Thanks,

Ed

Confirmed up-stream regression in GDB.

This issue only exist on Linux (from what we know today)...

Not possibility to fix this for the next release. Since, there is no plan to update the toolchain in the next release.

Possible work-arounds:

  • Use the toolchain from CubeIDE 1.8.0 based on GCC version 9.
  • Or replace the arm-none-eabi-gdb.exe only from GCC version 9 and use it with GCC version 10.

Internal ticket reference 126202.

Sorry for the inconvenience! We have many Linux machines internally, only on one system were we able to re-produce this issue. Hopefully the customer impact is quite limited. This is the only bug report received at this point.

Kind regards, Mattias