2025-07-11 4:49 AM
Hi all,
I'm working with the STM32F769I-DISCO board and using TouchGFX for GUI development. When I build and flash the project through STM32CubeIDE, everything works fine — the LCD displays as expected.
However, when I flash the generated .hex file using STM32CubeProgrammer, the board resets and runs, but the LCD stays blank. I’ve verified that the program is running (e.g., with an LED), but no graphics appear.
SDRAM is initialized via MX_FMC_Init(), and it calls BSP_SDRAM_Initialization_Sequence().
LCD and DSI are initialized in MX_LTDC_Init() and MX_DSIHOST_DSI_Init().
TouchGFX is initialized using MX_TouchGFX_Init().
The framebuffer is mapped to SDRAM (0xC0000000).
Boot config and option bytes are correct (BOOT from main flash).
The .hex and .bin are both generated and tested — same issue.
Backlight GPIO is set high manually.
It seems like CubeIDE is doing something extra that CubeProgrammer does not — possibly initializing QSPI, DSI, or loading something into RAM that doesn’t persist after a reset?
Any ideas what might be missing, or what CubeIDE might be doing during debug that I need to replicate in code?
Thanks in advance
2025-07-11 6:56 AM - edited 2025-07-11 7:10 AM
Hello,
Did you enable the QSPI flash loader when you uploaded the hex file with the CubeProgrammer?