cancel
Showing results for 
Search instead for 
Did you mean: 

Why does animating an L8 image take significantly longer than a standard image?

scottSD
Senior III

I have been experimenting with animating an image onto the screen. Because I want to reduce the amount of FLASH space required, I would like to use an L8 image (I do appreciate adding this format to the TouchGFX framework, by the way).

I am placing the image in a container and I have selected the MoveAnimator Mixin for that container.

However, I notice that the amount of time it takes to animate this container from off the screen to on the screen takes significantly longer when the image is formatted as an L8 (either L8_RGB565 or L8_ARGB888). When I say significant, I am saying it takes up to 50mS as compared to 12mS.

Am I doing something wrong? Is it possible that the DMA2D (ChromART) not working correctly for L8's?

I am using TouchGFX 4.13.0 and my processor is an Stm32H743.

67 REPLIES 67

Sounds like you're doing it right. Can you share the project (scaled down if need be) and/or image?

I will have a look at what I can do. But we are using a custom board with external qspi memory (where the images are stored). Is the project still helpful for you, even if you can't flash it to a eval board?

I use a QUADSPI  well. I have been able to use a simple image (typically a small single colored box) and view the memory with the debugger. You could also view the CLUT this way. I see you are in portrait mode. Is it possible the image isn't being rotated? I did see my images not working correctly when rotating the screen. Doing this should change the images "Layout Rotation" in the Config > Default Image Configuration.

Thanks, but as you can see in the screenshots above, the images are rotated correctly. They only have some artifacts and the color (black instead of white in the "Home" icon) does not match.

The same configuration works with the "normal" RGB565 settings.

I will have a look at the memory with the debugger...

@Roman Schläpfer​  @Martin KJELDSEN​ 

I just ran into a problem with L8_RGB565s as well. Completely crashes my code.

L8_RGB888s work.

This is with TouchGFX 4.15.0 and with the ChromART driver files Martin provided me a while back.

@scottSD​ @Martin KJELDSEN​  still the same here, also with 4.15.0.

​Hi @scottSD​ @Roman Schläpfer​ 

Let me look into it.

/Martin

@Martin KJELDSEN​ 

Note that I did disable the ChromArt drivers you gave me a while back and L8_RGB565s are handled properly, so it appears to be a problem with those ChromArt drivers.

​Hi Scott,

Thanks. Those drivers probably aren't complete - It was never an "official" solution. Still trying to get time to integrate the real solution into the Generator. 4.17.0 earliest. I will see if i can repliacte the issue and release a new unofficial patch to a ChromART driver with L8 support

Sorry!!

@Martin KJELDSEN​ 

I appreciate the reply and hope all is well with you.

I wasn't using L8_RGB565 very often so I didn't run into this before. And because it doesn't appear to work, I just decided not to use the L8_RGB565 conversion. 😉