2024-12-01 08:32 PM
I've been trying to get the TouchGFX Project work for the above configuration. I have followed the following steps:
1) Choose the demo project for the setup mentioned
2) Generate code
3) Open the project in STM32CubeIDE
4) Build Project
5) Add the generated external loader under the ExternalLoader folder for the STM32CubeProgrammer.
6) Restart the application and "Program and Run Target"
After step 6, I get the following error
Program and Run Target
Generate
Done
Generate Assets
make -f simulator/gcc/Makefile assets -j8
Reading ./application.config
Reading ./target.config
Done
Post Generate
touchgfx update_project --project-file=simulator/msvs/Application.vcxproj
Done
Post Generate Target
touchgfx update_project
.cproject file: ../STM32CubeIDE/.cproject
Writing STM32CubeIDE project file: ../STM32CubeIDE/.project
Writing STM32CubeIDE project file: ../STM32CubeIDE/.cproject
Done
Compile
make -f ../gcc/Makefile -j8
Reading TouchGFX/application.config
Reading TouchGFX/target.config
Linking TouchGFX/build/bin/target.elf
Producing additional output formats...
target.hex - Combined internal+external hex
intflash.elf - Internal flash, elf debug
intflash.hex - Internal flash, hex
Done
Flash
make -f ../gcc/Makefile flash
Reading TouchGFX/application.config
Reading TouchGFX/target.config
Linking TouchGFX/build/bin/target.elf
Producing additional output formats...
target.hex - Combined internal+external hex
intflash.elf - Internal flash, elf debug
intflash.hex - Internal flash, hex
-------------------------------------------------------------------
STM32CubeProgrammer v2.18.0
-------------------------------------------------------------------
ST-LINK SN : 002E002E3133510F35333335
ST-LINK FW : V3J15M7
Board : NUCLEO-U575ZI-Q
Voltage : 3.28V
SWD freq : 8000 KHz
Connect mode: Normal
Reset mode : Software reset
Device ID : 0x482
Revision ID : Rev X
Device name : STM32U575/STM32U585
Flash size : 2 MBytes
Device type : MCU
Device CPU : Cortex-M33
BL Version : 0x92
Debug in Low Power mode enabled
-------------------------------------------------------------------
Choose flashing speed for Cortex M33 series.(default speed=Reliable)
-------------------------------------------------------------------
Opening and parsing file: target.hex
Memory Programming ...
File : target.hex
Size : 4.90 MB
Address : 0x08000000
Erasing memory corresponding to segment 0:
Erasing internal memory sectors [0 35]
Erasing memory corresponding to segment 1:
Erasing external memory sectors [0 1185]
Error: failed to erase memory
Error: failed to erase memory
c:/TouchGFXProjects/Demo_Example_U575/gcc/include/flash_sections_int_ext.mk:5: recipe for target '_extflash_' failed
make[1]: *** [_extflash_] Error 1
make: *** [flash] Error 2
../gcc/Makefile:52: recipe for target 'flash' failed
Failed
Failed
I have also tried to run the project via STM32CubeIDE
Here are my run configurations for the same:
This is the error I am getting for STM32CubeIDE:
STMicroelectronics ST-LINK GDB server. Version 7.9.0
Copyright (c) 2024, 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
Waiting for debugger connection...
Debugger connected
Waiting for debugger connection...
-------------------------------------------------------------------
STM32CubeProgrammer v2.18.0
-------------------------------------------------------------------
Log output file: C:\Users\CVISWA~1\AppData\Local\Temp\STM32CubeProgrammer_a11664.log
ST-LINK SN : 002E002E3133510F35333335
ST-LINK FW : V3J15M7
Board : NUCLEO-U575ZI-Q
Voltage : 3.28V
SWD freq : 8000 KHz
Connect mode: Under Reset
Reset mode : Hardware reset
Device ID : 0x482
Revision ID : Rev X
Device name : STM32U575/STM32U585
Flash size : 2 MBytes
Device type : MCU
Device CPU : Cortex-M33
BL Version : 0x92
Debug in Low Power mode enabled
-------------------------------------------------------------------
Choose flashing speed for Cortex M33 series.(default speed=Reliable)
-------------------------------------------------------------------
Opening and parsing file: ST-LINK_GDB_server_a11664.srec
Memory Programming ...
File : ST-LINK_GDB_server_a11664.srec
Size : 4.90 MB
Address : 0x08000000
Erasing memory corresponding to segment 0:
Erasing internal memory sectors [0 34]
Erasing memory corresponding to segment 1:
Erasing external memory sectors [0 1185]
Error: failed to erase memory
Error: failed to erase memory
Encountered Error when opening C:\ST\STM32CubeIDE_1.17.0\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.win32_2.2.0.202409170845\tools\bin\STM32_Programmer_CLI.exe
Error in STM32CubeProgrammer
Shutting down...
Exit.
I have also tried directly programming using STM32CubeProgrammer (made sure to select the same loader as before), however I get the same error as before which is:
17:23:05 : Opening and parsing file: STM32U575ZI_NUCLEO_RVA35HI.elf
17:23:05 : Memory Programming ...
17:23:05 : File : STM32U575ZI_NUCLEO_RVA35HI.elf
17:23:05 : Size : 4.90 MB
17:23:05 : Address : 0x08000000
17:23:05 : Erasing memory corresponding to segment 0:
17:23:05 : Erasing internal memory sectors [0 34]
17:23:05 : Erasing memory corresponding to segment 1:
17:23:06 : Erasing external memory sectors [0 1185]
17:23:11 : Error: failed to erase memory
17:23:11 : Error: failed to erase memory
Could I get some guidance regarding this? I will also attach the ZIP file for the project
2024-12-02 01:32 PM
Just an update. Tried the same display and demo project with the H563ZI dev board, getting the same error
2024-12-02 04:12 PM
Greetings.
Sorry I don't have a sample of that screen, but it would be possible that you got an older version of the screen module. Could you tell me the detailed version?
2024-12-02 04:16 PM
The detailed version is as follows:
RVA35HI-NUCLEO144A V1.0A
This display is from Riverdi
2024-12-02 05:46 PM
Well, it seems that it was the wrong version that caused the problem.
The template on the TouchGFX designer is for the REV1.1.
It is possible that a change of the external flash had been made in the latest hw design.
I'm sorry to hear that.
2024-12-02 05:52 PM
Oh wow. I did find the loader for version 1.0 on GitHub and was able to program it successfully. However I was not able to see an output on the display. Maybe the TouchGFX template version matters as well. Is there nothing else that can be done for this?
2024-12-02 05:56 PM
Would also like to add that the loader I had downloaded was not recognized by STM32CubeProgrammer even after adding it as an external loader
2024-12-02 05:59 PM
Err.
Perhaps RIVERDI modified the screen driver as well.
You actually have to adapt to the suitable driver accordingly.
Also, please click "accept as solution" if it helps. Thanks.
2024-12-02 06:05 PM
Actually you can flash your display kit right in the designer. You don't need the CubeProg.
2024-12-02 06:51 PM
I'm unable to flash it in the designer. Getting the same error as before, I'm assuming that's because the templates are for 1.1 (I have confirmed this by checking the stldr that is generated when generating code gives me the 1.1 version). I'm probably going to wait until I am able to find out if there is any way I can access the template and loader for the 1.0 version. It doesn't make sense to me as to how there's nothing available for this