cancel
Showing results for 
Search instead for 
Did you mean: 

STM32H745I-DISCO – External flash erase/init failure with TouchGFX project

Tharun123
Associate II

Hi Community,

I am using STM32H745I-DISCO board and generated a TouchGFX project and attempted to flash/debug from CubeIDE. The flashing process fails during the erase stage.

Observed Errors

  • Initially: “Error: failed to erase memory”
  • After enabling external loader (without initialization):
    • Erase still fails
  • After enabling external loader with Initialize = true:
    • “Failed to initialize external memory”
    • “Error in initializing ST-LINK device”
  • In CubeProgrammer:
    • External flash is detected when selecting loader MT25TL01_STM32H745I-DISCO
    • However:
      • Mass erase fails
      • Sector erase also fails
      • Error message:
        • “Sector erase operation has failed… please verify flash protection” 

I am using STM32CubeIDE v1.18.1 and STM32CubeProgrammer: v2.16.x

I have attached screenshots.

Can someone help what could be the issue?

Thanks.

 

1 ACCEPTED SOLUTION

Accepted Solutions

Hello,

I don't have your project so I couldn't tell what problem you have.

I've attached a TouchGFX project running on STM32H745I-DISCO board.

You can use the TouchGFX Designer tool to directly generate code, compile, simulate and upload the application.

As shown in the below screenshot:

1- You need to generate the code by clicking  mALLEm_2-1778057877758.png

2- (Optional step) to compile and simulate the graphics on PC: mALLEm_3-1778057985557.png

3- To Compile and upload your TouchGFX application to the target (The DISCO board in your case): mALLEm_4-1778058047536.png

mALLEm_1-1778057781454.png

With the attached project, please test it by following step 1 and step 3. You should see this screen in the LCD:

mALLEm_0-1778057387237.png

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

View solution in original post

3 REPLIES 3
mƎALLEm
ST Employee

Hello,


@Tharun123 wrote:
  • In CubeProgrammer:
    • External flash is detected when selecting loader MT25TL01_STM32H745I-DISCO
    • However:
      • Mass erase fails
      • Sector erase also fails
      • Error message:
        • “Sector erase operation has failed… please verify flash protection” 

Based on this statement I have the impression there is a problem with the external memory.

Try to run the QSPI example provided in CubeH7: https://github.com/STMicroelectronics/STM32CubeH7/tree/master/Projects/STM32H745I-DISCO/Examples/QSPI/QSPI_MemoryMappedDual

If it doesn't work there is an issue with the external memory, either the memory is broken or there is something gone wrong on the board/PCB!

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

Hi mƎALLEm,

I tried the QSPI_MemoryMappedDual example from CubeH7 on the STM32H745I-DISCO board.

Results:

  • The example flashed successfully

  • It ran successfully without any errors

  • QSPI erase/write/read operations are working correctly

I also tested another example:

  • LTDC_Layer1

  • The image is displayed correctly on the LCD

So it looks like:

  • QSPI hardware is working

  • External flash is working

  • LCD/LTDC is also working

However, when I generate a simple TouchGFX project (small image only):

  • If I flash without enabling external loader:

    • Flashing succeeds

    • Code runs

    • But nothing appears on the display

  • If I enable and initialize the external loader:

    • I get:

      • “Failed to initialize external memory”

      • “Error in initializing ST-LINK device”

At this point I am confused about the correct workflow for TouchGFX on STM32H745I-DISCO.

Could you please clarify:

  1. What is the exact process to generate and flash a TouchGFX project on STM32H745I-DISCO?

  2. Is external QSPI flash mandatory even for a very small image/UI?

  3. Which external loader should be selected for this board?

  4. Are there any specific TouchGFX memory configuration settings required for this board?

Thanks.

Hello,

I don't have your project so I couldn't tell what problem you have.

I've attached a TouchGFX project running on STM32H745I-DISCO board.

You can use the TouchGFX Designer tool to directly generate code, compile, simulate and upload the application.

As shown in the below screenshot:

1- You need to generate the code by clicking  mALLEm_2-1778057877758.png

2- (Optional step) to compile and simulate the graphics on PC: mALLEm_3-1778057985557.png

3- To Compile and upload your TouchGFX application to the target (The DISCO board in your case): mALLEm_4-1778058047536.png

mALLEm_1-1778057781454.png

With the attached project, please test it by following step 1 and step 3. You should see this screen in the LCD:

mALLEm_0-1778057387237.png

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.
Announcement

We’re moving the ST Community to a new platform to give you a better and more reliable community experience.