cancel
Showing results for 
Search instead for 
Did you mean: 

STM32 Cube Programmer v2.1.0 not working with STM32H750B-DK QSPI External Loader

Stock hardware, and also updated with v35 ST-LINK/V3 firmware

Using MT25TL01G loader for either H750B-DISCO or H745I-DISCO External Loaders

Tried on two different machines

09:41:26 : UPLOADING ...

09:41:26 : Size : 131072 Bytes

09:41:26 : Address : 0x90000000

09:41:26 : Read progress:

09:41:31 : Error: Data read failed

09:41:51 : UPLOADING ...

09:41:51 : Size : 131072 Bytes

09:41:51 : Address : 0x90000000

09:41:51 : Read progress:

09:42:21 : Error: Data read failed

QSPI viable using my own apps, and stock demo.

Not sure the tool actually calls Init function, seen other issues where first read returns zeros, this case times out every time, never seen it read the memory.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
18 REPLIES 18

Hi, sorry, doesn't looked to be fixed here, loads the code, jumps to the wrong place. GUI v2.2.0

19:45:59 : STM32CubeProgrammer API v2.2.0

...

19:46:31:506 : UPLOADING ...

19:46:31:506 : Size : 1024 Bytes

19:46:31:507 : Address : 0x90000000

19:46:31:507 : Read progress:

19:46:31:507 : Reading data...

19:46:31:548 : halt ap 0 Status = 0

19:46:31:548 : halt ap 1 Status = 32

19:46:31:555 : halt ap 2 Status = 32

19:46:31:556 : w ap 0 reg 15 PC (0x24000000) 

19:46:31:556 : w ap 0 reg 17 MSP (0x24000500) 

19:46:31:556 : w ap 0 reg 16 xPSR (0x01000000) 

19:46:31:556 : w ap 0 @0x24001CA0 0x00000200 bytes

19:46:31:556 : w ap 0 @0x24000000 0x00000004 bytes

19:46:31:605 : w ap 0 @0x24000004 0x00001874 bytes

19:46:31:605 : Init flashloader...

19:46:31:605 : halt ap 0 

19:46:31:605 : w ap 0 reg 0 R0 0x00000000

19:46:31:606 : w ap 0 reg 1 R1 0x00000000

19:46:31:606 : w ap 0 reg 2 R2 0x00000000

19:46:31:606 : w ap 0 reg 3 R3 0x00000000

19:46:31:606 : w ap 0 reg 4 R4 0x00000000

19:46:31:606 : w ap 0 reg 5 R5 0x00000000

19:46:31:606 : w ap 0 reg 6 R6 0x00000000

19:46:31:607 : w ap 0 reg 7 R7 0x00000000

19:46:31:607 : w ap 0 reg 8 R8 0x00000000

19:46:31:607 : w ap 0 reg 9 R9 0x00000000

19:46:31:607 : w ap 0 reg 10 R10 0x00000000

19:46:31:607 : w ap 0 reg 11 R11 0x00000000

19:46:31:607 : w ap 0 reg 12 R12 0x00000000

19:46:31:608 : w ap 0 reg 13 SP 0x00000000

19:46:31:608 : w ap 0 reg 14 LR 0x24000001

19:46:31:608 : w ap 0 reg 15 PC 0x2000108D

19:46:31:608 : w ap 0 reg 16 xPSR 0x01000000

19:46:31:608 : w ap 0 reg 17 MSP 0x24001C74

19:46:31:609 : w ap 0 reg 18 PSP 0x00000000

19:46:31:609 : run ap 0 

19:46:36:001 : halt ap 0 

19:46:36:001 : Init function fail with timeout

19:46:36:006 : r ap 0 reg 16 xPSR 0x41000003

19:46:36:109 : halt ap 0 Status = 0

19:46:36:114 : halt ap 1 Status = 32

19:46:36:114 : halt ap 2 Status = 32

19:46:36:114 : w ap 0 reg 15 PC (0x24000000) 

19:46:36:114 : w ap 0 reg 17 MSP (0x24000500) 

19:46:36:115 : w ap 0 reg 16 xPSR (0x01000000) 

19:46:36:115 : Error: Data read failed

FromELF

========================================================================

** ELF Header Information

  File Name: CLIVEONE-W25Q128B_STM32H7xx-NUCLEO-144.stldr

  Machine class: ELFCLASS32 (32-bit)

  Data encoding: ELFDATA2LSB (Little endian)

  Header version: EV_CURRENT (Current version)

  Operating System ABI: none

  ABI Version: 0

  File Type: ET_EXEC (Executable) (2)

  Machine: EM_ARM (ARM)

  Image Entry point: 0x2400108d

  Flags: EF_ARM_HASENTRY + EF_ARM_ABI_FLOAT_SOFT (0x05000202)

  ARM ELF revision: 5 (ABI version 2)

  Conforms to Soft float procedure-call standard

  Header size: 52 bytes (0x34)

  Program header entry size: 32 bytes (0x20)

  Section header entry size: 40 bytes (0x28)

  Program header entries: 2

  Section header entries: 8

  Program header offset: 6836 (0x00001ab4)

  Section header offset: 6900 (0x00001af4)

  Section header string table index: 7

========================================================================

..

** Section #5 '.symtab' (***_SYMTAB)

  Size  : 112 bytes (alignment 4)

  String table #6 '.strtab'

  Last local symbol no. 0

  Symbol table .symtab (6 symbols, 0 local)

   # Symbol Name        Value   Bind Sec Type Vis Size

  ========================================================================

   1 StorageInfo        0x00000000  Gb  4 Data Hi  0xc8

   2 DeInit           0x24000321  Gb  1 Code Hi  0x4

   3 Init            0x2400108d  Gb  1 Code Hi  0x408

   4 MassErase         0x24001491  Gb  1 Code Hi  0x50

   5 SectorErase        0x24001775  Gb  1 Code Hi  0x80

   6 Write           0x240017f5  Gb  1 Code Hi  0x18

@Houda GHABRI​  @Nawres GHARBI​ 

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

Same file with CLI, does job properly

20:01:01:760    -------------------------------------------------------------------

20:01:01:761            STM32CubeProgrammer v2.2.0

20:01:01:761    -------------------------------------------------------------------

...

20:01:03:035

UPLOADING ...

20:01:03:036  File     : h7_144.bin

20:01:03:037  Size     : 262144 Bytes

20:01:03:039  Address:   : 0x90000000

20:01:03:040 Read progress:

20:01:03:041 Reading data...

20:01:03:145 halt ap 0 Status = 0

20:01:03:146 halt ap 1 Status = 32

20:01:03:147 halt ap 2 Status = 32

20:01:03:147 w ap 0 reg 15 PC  (0x24000000)

20:01:03:148 w ap 0 reg 17 MSP (0x24000500)

20:01:03:148 w ap 0 reg 16 xPSR (0x01000000)

20:01:03:152 w ap 0 @0x24001CA0 0x00000200 bytes

20:01:03:153 w ap 0 @0x24000000 0x00000004 bytes

20:01:03:194 w ap 0 @0x24000004 0x00001874 bytes

20:01:03:195 Init flashloader...

20:01:03:196 halt ap 0

20:01:03:196 w ap 0 reg 0 R0  0x00000000

20:01:03:197 w ap 0 reg 1 R1  0x00000000

20:01:03:198 w ap 0 reg 2 R2  0x00000000

20:01:03:198 w ap 0 reg 3 R3  0x00000000

20:01:03:199 w ap 0 reg 4 R4  0x00000000

20:01:03:199 w ap 0 reg 5 R5  0x00000000

20:01:03:200 w ap 0 reg 6 R6  0x00000000

20:01:03:200 w ap 0 reg 7 R7  0x00000000

20:01:03:201 w ap 0 reg 8 R8  0x00000000

20:01:03:201 w ap 0 reg 9 R9  0x00000000

20:01:03:202 w ap 0 reg 10 R10 0x00000000

20:01:03:202 w ap 0 reg 11 R11 0x00000000

20:01:03:203 w ap 0 reg 12 R12 0x00000000

20:01:03:203 w ap 0 reg 13 SP  0x00000000

20:01:03:204 w ap 0 reg 14 LR  0x24000001

20:01:03:204 w ap 0 reg 15 PC  0x2400108D

20:01:03:205 w ap 0 reg 16 xPSR 0x01000000

20:01:03:205 w ap 0 reg 17 MSP 0x24001C74

20:01:03:206 w ap 0 reg 18 PSP 0x00000000

20:01:03:206 run ap 0

20:01:03:207 halt ap 0

20:01:03:208 r ap 0 reg 0 R0  0x00000001

20:01:05:027 r ap 0 @0x90000000 0x00040000 bytes

20:01:05:028

Data read successfully

20:01:05:031 Time elapsed during read operation is: 00:00:01.988

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

Trying to do a full read of the device stops after the first complete RAM buffer fill of 0x7E000

https://community.st.com/s/question/0D50X0000BTf3v0SQB/stm32-cube-programmer-v220-still-buggy

@Houda GHABRI​ 

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

​Hi Clive,

can you provide me command line you are using?

Best regards,

Houda

The command line input is shown approximately in the other thread, the path for the external loader was truncated for clarity.

The first test I had read 0x40000 bytes, after that looked to work I pushed it to 0x1000000. The file was 16MB in size, but only the first 0x7E000 bytes were valid.

I will note the equivalent command line on the old ST-LINK Utilities does successfully read the whole 16MB device.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

Hi Clive ,

As answered in this thread    https://community.st.com/s/question/0D50X0000BTf3v0SQB/stm32-cube-programmer-v220-still-buggy

i confirm there is issue to read big data .

The Cubeprogrammer development team is aware of this problem and will be corrected shortly.

Feel free to contact me for furthers details.

Regards,

houda

This continues to be a problem.

The first time it loads the .ELF it gets the Init address wrong, the second time (after disconnect/connect) it loads correctly.

This seems specific to the H7 where the STLDR are put in the 0x24000000 RAM rather than 0x20000000

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

@Houda GHABRI​ 

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

@STOne-32​ UP

https://community.st.com/s/question/0D53W00000OpGGsSAN/stm32h743-external-loader-problem

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..