cancel
Showing results for 
Search instead for 
Did you mean: 

Gauge application working directly from touchgfx but not working when trying to run it through STM32CubeIDE. Please help to solve this issue

Rohit.1
Associate II
 
34 REPLIES 34
Rohit.1
Associate II

Now followed the exact steps mentioned by you.

Following is the problem:

0693W000000W7WSQA0.bmp

Rohit.1
Associate II

I think I have figured out the solution for above mentioned problem.

Added startup_stm32f746nghx.s file from gcc folder to Application/User folder in the STM32CubeIDE.

But now we are again at the initial stage. Screen on which Gauge widget is added is not responding and the whole application freezes after loading this screen.

Alexandre RENOUX
Principal

Hello,

Indeed there's a issue with AT as the Application/ folder in STM32CubeIDE/ should have files inside.

  • STM32CubeIDE/Application/StartUp/startup_stm32f746nghx.s
  • STM32CubeIDE/Application/User/syscalls.c
  • STM32CubeIDE/Application/User/sysmem.c

We will try to correct this issue quickly.

You will find syscalls.c and sysmem.c in the attached archive.

After putting the files in the correct location, try running your application again.

I don't have the board with me so I cannot debug on my side. Please if it crashes or freezes, try to debug (with breakpoints if necessary) and see where is it failing so that I can try to find the reason.

/Alexandre

After adding these files when application freezes it executes the following function from syscalls.c file:

void _exit (int status)

{

_kill(status, -1);

while (1) {} /* Make sure we hang here */

}

And as you mentioned application hangs at while(1){}

Hello,

Can you show the call stack ?

/Alexandre

Attached screenshots of stack analyzer.

Alexandre RENOUX
Principal

Hello,

You can find the implementation of the gauge in the TouchGFX Demo 1 in TouchGFX Designer. This will probably help you with the implementation.

Can you try running the TouchGFX Demo 1 on your board ? If it works, this indicates that your gauge implementation is wrong. Otherwise, if it also freezes, it means that the AT is wrong.

Can you also check if you have the following USE_BPP=24 in your project ? If not please add it

0693W000000WUK0QAO.png

/Alexandre

After adding the USE_BPP=24, TouchGFX Demo 1 worked through STMCubeIDE.

But then created new project in the touchGFX with balnk UI Template and added Gauge files as you mentioned previously.

This code hangs at void _exit (int status) function from the syscalls.c file.

Increased heap size to 0x2000 also set canvas buffer size to 7200.

USE_BPP=24 is also added.

Attached my application.

Is there anything missing in this application. I am trying hard to make it work but no success.

Please help.

Hello,

If the TouchGFX Demo 1 works (there's the Gauge inside this application) then it means you didn't implement correctly the gauge in your project.

I will try to find some time to look at your application.

/Alexandre