Issues with firmware flashing in STM32CubeIDE
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-03-16 11:08 AM
I have had a lingering issue that rears its ugly head from time to time and is a huge productivity killer. I honestly cannot say what triggers the issue, or how to fix it. It is becoming too big of an issue to continue development with the system like this.
Hardware used:
-STM32F746BG
-Seggar J-Trace (SWD @ 4000kHz) or ST-Link
When using my J-Trace from within STM32CubeIDE I get this output in the console window:
SEGGER J-Link GDB Server V6.62 Command Line Version
JLinkARM.dll V6.62 (DLL compiled Jan 24 2020 16:32:09)
Command line: -port 2331 -s -device STM32F746BG -endian little -speed 12000 -if swd -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: localhost only
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: STM32F746BG
Target interface: SWD
Target interface speed: 12000kHz
Target endian: little
Connecting to J-Link...
J-Link is connected.
Firmware: J-Trace PRO V2 Cortex-M compiled Jan 7 2020 16:54:03
Hardware: V2.00
S/N: 752001379
Feature(s): RDI, FlashBP, FlashDL, JFlash, GDB
Checking target voltage...
Target voltage: 3.27 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 0x08001A42 (Data = 0xE7FEE7FE)
Read 2 bytes @ address 0x08001A42 (Data = 0xE7FE)
WARNING: Failed to read memory @ address 0x00036770
Connected to 127.0.0.1
Reading all registers
WARNING: Failed to read memory @ address 0x00036770
Read 4 bytes @ address 0x08001A42 (Data = 0xE7FEE7FE)
Read 2 bytes @ address 0x08001A42 (Data = 0xE7FE)
Received monitor command: WriteDP 0x2 0x000000F0
O.K.
Received monitor command: ReadAP 0x2
O.K.:0xE00FD003
Reading 32 bytes @ address 0xE00FDFD0
Received monitor command: reset
Resetting target
Downloading 12 bytes @ address 0x00008000 - Verify failed
Downloading 16064 bytes @ address 0x00008010 - Verify failed
Downloading 16000 bytes @ address 0x0000BED0 - Verify failed
Downloading 16000 bytes @ address 0x0000FD50 - Verify failed
Downloading 16144 bytes @ address 0x00013BD0 - Verify failed
Downloading 16176 bytes @ address 0x00017AE0 - Verify failed
Downloading 16208 bytes @ address 0x0001BA10 - Verify failed
Downloading 16240 bytes @ address 0x0001F960 - Verify failed
Downloading 16096 bytes @ address 0x000238D0 - Verify failed
Downloading 16128 bytes @ address 0x000277B0 - Verify failed
Downloading 16048 bytes @ address 0x0002B6B0 - Verify failed
Downloading 16112 bytes @ address 0x0002F560 - Verify failed
Downloading 16096 bytes @ address 0x00033450 - Verify failed
Downloading 15984 bytes @ address 0x00037330 - Verify failed
Downloading 9324 bytes @ address 0x0003B1A0 - Verify failed
Downloading 12 bytes @ address 0x0003D60C - Verify failed
Downloading 16280 bytes @ address 0x0003D618 - Verify failed
Downloading 16288 bytes @ address 0x000415B0 - Verify failed
Downloading 1045 bytes @ address 0x00045550 - Verify failed
Downloading 15146 bytes @ address 0x00045968 - Verify failed
Downloading 15884 bytes @ address 0x00049494 - Verify failed
Downloading 15776 bytes @ address 0x0004D2A0 - Verify failed
Downloading 16048 bytes @ address 0x00051040 - Verify failed
Downloading 16320 bytes @ address 0x00054EF0 - Verify failed
Downloading 16352 bytes @ address 0x00058EB0 - Verify failed
Downloading 16352 bytes @ address 0x0005CE90 - Verify failed
Downloading 16320 bytes @ address 0x00060E70 - Verify failed
Downloading 16336 bytes @ address 0x00064E30 - Verify failed
Downloading 16336 bytes @ address 0x00068E00 - Verify failed
Downloading 16144 bytes @ address 0x0006CDD0 - Verify failed
Downloading 15888 bytes @ address 0x00070CE0 - Verify failed
Downloading 15936 bytes @ address 0x00074AF0 - Verify failed
Downloading 16064 bytes @ address 0x00078930 - Verify failed
Downloading 16288 bytes @ address 0x0007C7F0 - Verify failed
Downloading 16368 bytes @ address 0x00080790 - Verify failed
Downloading 16368 bytes @ address 0x00084780 - Verify failed
Downloading 16368 bytes @ address 0x00088770 - Verify failed
Downloading 16368 bytes @ address 0x0008C760 - Verify failed
Downloading 16368 bytes @ address 0x00090750 - Verify failed
Downloading 14532 bytes @ address 0x00094740 - Verify failed
Downloading 9756 bytes @ address 0x00098004 - Verify failed
Downloading 8 bytes @ address 0x0009A620 - Verify failed
Downloading 4 bytes @ address 0x0009A628 - Verify failed
Downloading 24 bytes @ address 0x000AA62C - Verify failed
Downloading 8 bytes @ address 0x000AA644 - Verify failed
Downloading 3016 bytes @ address 0x000AA650 - Verify failed
Writing register (PC = 0x 80a4)
WARNING: Failed to read memory @ address 0x00036770
WARNING: Failed to read memory @ address 0x000080A4
Read 4 bytes @ address 0xE000ED14 (Data = 0x00040200)
Downloading 4 bytes @ address 0xE000ED14 - Verified OK
Reading all registers
WARNING: Failed to read memory @ address 0x000080A4
Read 4 bytes @ address 0xE000EDFC (Data = 0x01000000)
Downloading 4 bytes @ address 0xE000EDFC - Verified OK
Reading all registers
WARNING: Failed to read memory @ address 0x000080A4
Reading 64 bytes @ address 0x0000C180
WARNING: Failed to read memory @ address 0x0000C180
WARNING: Failed to read memory @ address 0x0000C182
Reading 64 bytes @ address 0x0000C180
WARNING: Failed to read memory @ address 0x0000C180
WARNING: Failed to read memory @ address 0x0000C182
WARNING: Failed to read memory @ address 0x0000C17C
Setting breakpoint @ address 0x0000C17C, Size = 2, BPHandle = 0x0001
Starting target CPU...
...Target halted (Vector catch, PC = 0x08001A42)
Reading all registers
Removing breakpoint @ address 0x0000C17C, Size = 2
Read 4 bytes @ address 0x08001A42 (Data = 0xE7FEE7FE)
Read 2 bytes @ address 0x08001A42 (Data = 0xE7FE)
Read 4 bytes @ address 0x2004FFFC (Data = 0x01000000)
Reading 64 bytes @ address 0x2004FFC0
WARNING: Failed to read memory @ address 0x000080A4
GDB closed TCP/IP connection
GDB closed TCP/IP connection
Restoring target state and closing J-Link connection...
At the same rate, if I use an st-link programmer device I get this output to the console:
STMicroelectronics ST-LINK GDB server. Version 5.5.0
Copyright (c) 2019, STMicroelectronics. All rights reserved.
Starting server with the following options:
Persistent Mode : Disabled
Logging Level : 1
Listen Port Number : 61234
Status Refresh Delay : 15s
Verbose Mode : Disabled
SWD Debug : Enabled
InitWhile : Enabled
Waiting for debugger connection...
Debugger connected
Debugger connection lost.
Shutting down...
and this popup dialog:
If you look at the J-Trace log, clearly the verification of the downloaded bytes is failing, why is STM32CubeIDE telling the J-Trace to write to address 0x00008000? It looks like this address has been shifted right 3. The normal programming address is 0x08000000. Super strange and I have no idea how to fix this problem. In total this has probably caused me 2 weeks of development work dealing with it on and off, losing work as I am forced to revert to older code bases to get away from the issue (sometimes even this doesn't help);
- Labels:
-
STM32CubeIDE
-
STM32F7 Series
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-03-16 1:55 PM
Anyone having these issues???
I can manually flash a bin or hex file with my J-Trace without issue using the J-Link Commander application provided by Seggar. This must be an issue with STM32CubeIDE.
Is there a better place to post questions reguarding STM32CubeIDE?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2020-03-16 2:10 PM
I'm guessing the real question​ would be how many of the participating experts are using CubeIDE at all.
This would be the place to post, but wouldn't expect rapid responses.​
Perhaps chat with your local ST FAE for realtime support.
​
Are you sure it is not building from AXIM Flash?​
Up vote any posts that you find helpful, it shows what's working..
