cancel
Showing results for 
Search instead for 
Did you mean: 

Problem with TouchGFX Designer Template for STM32H7B3I DK

TStum.1
Associate II

Hello,

I have a the following problem:

I create a blank UI template for the STM32H7B3I DK with TouchGFX Designer 4.13.0.

Then, I create a small UI consisting of 1 background box, 1 button, 1 image and 3 interactions. The behavior of the interactions is that when the button is pushed, interaction1 hides image 1, then interaction2 waits 1000ms and then interaction3 shows image1 again.

This works basically. However, after some time (can be minutes, can be seconds), the UI hangs and the button is not responsive anymore. I debugged the application with STM32CubeIDE and found that the software hangs in the following function at line 8 "configASSERT(0);" :

bool STM32TouchController::sampleTouch(int32_t& x, int32_t& y)
{
    TS_State_t TS_State = { 0 };
 
    /* This should never fail !! */
    if (BSP_TS_GetState(0, &TS_State) != BSP_ERROR_NONE)
    {
        configASSERT(0);
    }
 
    if (TS_State.TouchDetected)
    {
        x = TS_State.TouchX;
        y = TS_State.TouchY;
 
        return true;
    }
 
    return false;
}

I tried 2 different ways of loading the application to the board: directly with TouchGFX Designer and with STM32CubeIDE. The behavior is the same for both ways.

I did not change anything in the software, it is generated like this by TouchGFX Designer.

I attached my test application to this message.

Has anybody experienced a similar situation or does anybody have a clue what is going wrong here?

Thank you very much in advance for your help. If you need more information, just ask.

16 REPLIES 16
TStum.1
Associate II

Just for anyone interested in this topic:

I had a closer look into the problem from the beginning of this thread (GUI freezes after a certain time).

To me, it seems as if there is a problem in the driver of the touch controller FT5336 or in the handling of it.

Each time my GUI freezes, the function BSP_TS_GetState() exits with the message BSP_ERROR_COMPONENT_FAILURE.

Of course, it is also possible that the hardware of my H7B3I-DK board is erroneous, but I don't have a second board to test this.

Maybe someone with access to another H7B3I-DK board can check if they have the same problem as I do, this would be very helpful to exclude damaged hardware as a cause of the problem. Thanks in advance.

VRote.1
Associate III

Hi Thorsten,

i've got an e-mail from ST with this hint:

Change in main.c:

(...)

void SystemClock_Config(void)

{

RCC_OscInitTypeDef RCC_OscInitStruct = {0};

RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};

RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0};

/** Supply configuration update enable

*/

HAL_PWREx_ConfigSupply(PWR_DIRECT_SMPS_SUPPLY);

/** Configure the main internal regulator output voltage

*/

-> __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE0);

(...)

For me it works!

TStum.1
Associate II

Hi Volker,

thank you for this hint.

It solves my problem as well. I tested it for the last 4 hours without any error.

Thank you very much for your help!

Hari.52
Associate II

Hi,

I'm facing the same issue. program suddenly strucks at configASSERT(0)

Can some one explain how to debug the issue

Thanks in advance

Hi,

Are you working on the STM32H7B3 discovery board like the person in this post ? Did you start you project from the corresponding application template available in TouchGFX Designer ? What version of TouchGFX are you using ?

/Romain

Yes, I'm working on the same board. Started project from the template created by the TouchGFX 4.16.0 designer

I was not able to replicate this issue, could you share your project ? Or the steps you followed and if you made any modifications.

/Romain