cancel
Showing results for 
Search instead for 
Did you mean: 

TouchGFX hardfault

heyo
Senior

Im getting hardfault at 0x817c364 address and can not debug where exactly hardfaults and why because no source available:

heyo_0-1761131856290.png

I moved my heap to external SDRAM and it started hardfault at this function, maybe someone knows why? and how can I debug it if function not exist?
Im using STM32H743ZIT6 and IS42S16400J-6TLI sdram.

2 REPLIES 2
KDJEM.1
ST Employee

Hello @heyo ;

 

Could you please check:

- The SDRAM timing and configuration settings in the FMC.

- The MPU configuration.

May this article can help you to debug the HardFault How to debug a HardFault on an Arm® Cortex®-M STM3... - STMicroelectronics Community

 

Thank you.

Kaouthar

 

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.

mathiasmarkussen
ST Employee

Hello,

Have you moved the RTOS heap or the c heap? 

You could probably get away with moving your rtos heap to external RAM, but i would generally advice to keep allheap and stack in internal memory for performance reasons. The C heap should not be moved to external memory, since that memory is not initialized at startup.

The JSMOC function is for occlusion culling (not rendering parts of widgets that are covered by other widgets). If your TouchGFX application is running, and the issue is not related to the heap being moved, my guess is that you are running out of stack. What is your stack size set to?

You can disable JSMOC to test if you want, but there will be a performance penalty.

Screen | TouchGFX Documentation