cancel
Showing results for 
Search instead for 
Did you mean: 

Invalidated widgets flickering

MVils.1
Associate II

We use TouchGfx with a STM32f769 on a custom board. There are many ui widgets like textarea, boxes and buttons. At first the display had a flicker problem. That was solved with just invalidating widgets that should update.

Now the problem is that if a single widget updated with .invaldate(), an other widget - which was previously invalidated - is suddenly flickering.

I found that this occurs with double buffering activated.

Any ideas that could help?

Thanks in advance.

13 REPLIES 13
franck23
Senior

Hi,

Maybe you are reaching the maximum bandwidth of your SDRAM.

What is your screen size, bit per pixel, and SDRAM width (8, 16 or 32bits)?

MM..1
Chief III

How version TouchGFX you use, and generated code is from CubeMX?

The fact that this happens only with double buffering makes your statement my first guess as well. @MVils.1​ Have a look at your mapfile (.map) and check your memory usage.

/Romain

@Community member

800 x 480 x 16 bpp and SDRAM width is 32bits. LTDC clock 27.375 MHz.

@Romain DIELEMAN​ 

Memory usage looks good. I don't know how to check sdram memory usage, but it's a 128 M and this should be enough ..

0693W000007CzaqQAC.jpg

I tought that TouchGfx is always at latest version in cubemx because i check updates often. Just now i saw that you have to migrate the TouchGfx version for your project too. Thanks for the hint.

franck23
Senior

With your config, you shouldn't hit the SDRAM max bandwidth.

Maybe check that your FMC is set to run at 100MHz.

You dont reply numbers , but you can check my example BUGREPORT TouchGFX 4.16 strange display

Old version was 4.15. Now i migrated to 4.16. I had a strange memory access problem after the update. Could only solve it with a complete regeneration of the cube ide project. But sadly the trouble with flickering widgehts still persists.

FMC is set to 108 MHz. I read that max is 100 MHz but lowering that didn't help.