GUIX Studio + QSPI = Screen flickering in a particular gadget

Hello!

I have a project which is running GUIX + 64MB QSPI - W25Q64JVSSIQ  (which is used to store only resources such as images and icons).

The problem is: the screen flickers if a particular gadget (a menu, a button, a text or something) is updated. After many trials and errors, I found out that the problem seems to be in a particular place of the QSPI region. If this gadget is stored there, then the screen will flicker when it is retrieved from the memory.

Here's what happens.

Say this is my GUIX project and whenever SCREEN_2 is used, it causes a flickering.

However, if I rearrange the order of the screens (by adding/removing another screen , or icon, text,  etc - doesn't matter what as long as I modify their order), like the following:

Here, a NEW_SCREEN was added, which probably changes the address of where the images are going to be located in the QSPI.

However, now SCREEN_3 will flicker and SCREEN_2 won't cause flickering anymore.

This means that there is always one gadget that will flick the screen when updated. All I can do is randomly choose which one will.

If I "fix" one gadget (by moving it up/down the images table in the GUIX project), whichever other gadget gets this "bugged" memory location (NOT necessarily the same table position) is going to flicker.

I don't know why moving the memory location around causes this, but Is there any way to fix?

Changing the QSPI to another part number will help? Maybe one with less memory space (I don't need that much)?

More info:

- This is a custom board that I have, and I'm using the R7FS5D97E3A01CFC microcontroller

- This problem has never happened when I was using the internal flash (2 MB)

- The QSPI is using currently using only 3 MB of data

- Most of the gadgets NEVER causes flickering, wherever they are located in the screenflow. It is usually only a particular one.

- I couldn't find any other relation/explanation to what causes a particular gadget to flick, except the explanation above.

- I have tried with 3 other boards/displays and the results are the same

- Changing transparency settings (either GUIX or the image itself) doesn't help

- Changing the image type (JPG, PNG, etc) and its characteristics also doesn't help

Parents
  • The W25Q64JV is a 64M bit device, so 8MB . The W25Q64JV doesn't seem to support "Continuous Read Mode", whereas the W25Q64JV-DTR part from Winbond does support "Continuous Read Mode" (Continuous Read Mode is Winbond terminology, XIP Mode is the QSPI peripheral terminology for the same thing).

    This means you can't enable XIP mode in the QSPI peripheral of the S5D9 when using the W25Q64JV, so the command will always have to be sent, which will add some extra clock cycles to the access to the QSPI device.

  • Hello teste

    We solved this problem by modifying and adjusting the sizes of the widgets in GUIX Studio. When the widgets were mounted one over the other (one pixel only), sometimes there was a flickering effect. This was somewhat random. It did not occur in all cases and it happened to us that something that was working correctly when making a software modification would cause a flicker when pressing a key for example. 

    Regards

Reply
  • Hello teste

    We solved this problem by modifying and adjusting the sizes of the widgets in GUIX Studio. When the widgets were mounted one over the other (one pixel only), sometimes there was a flickering effect. This was somewhat random. It did not occur in all cases and it happened to us that something that was working correctly when making a software modification would cause a flicker when pressing a key for example. 

    Regards

Children
No Data