GUI_BMP_SerializeEx - incorrect pixels in generated bitmap file

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • GUI_BMP_SerializeEx - incorrect pixels in generated bitmap file

      Hello,

      In our project we use GUI_BMP_SerializeEx to take screenshots of what is on our 320x240 LCD. The bitmap files generated by this function look nearly perfect except for a few pixels (20-30 on average) that are incorrect (wrong color).

      The location of the incorrect pixels appears to be mostly random, but they usually appear near drawn objects/text and don't appear in areas where it's just back the black background.

      When we look at the LCD, none of the pixels are wrong, it's only in the generated bitmap "screenshot" files.

      Does anyone know if there's any reason to suspect a software issue? Or would this more likely be a hardware issue?

      Thanks!
    • Hi,

      Which version of emWin are you using?
      Which driver are you using?

      If you are using a driver for an indirect interface (e.g. GUIDRV_FlexColor) please check if the function for reading are working properly.

      Regards,
      Sven
      Please read the forum rules before posting.

      Keep in mind, this is *not* a support forum.
      Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
      Should you be entitled to support you can contact us via our support system: segger.com/ticket/

      Or you can contact us via e-mail.
    • We are using emWin V5.32

      We are using a custom implementation of GUIDRV_FLEXCOLOR

      The read functions seem to work fine, we are able to read from the LCD controller and create bitmap screenshots, it's just that a few pixels are incorrect in the screenshot.

      See attachment for example. This screenshot was taken on our target hardware (custom board using Kinetis K64 MCU and 320*240 LCD with ST7789S controller connected to MCU using parallel bus).

      To me it seems like a hardware problem or a parallel bus configuration problem. Looking at the LCD is fine, no corrupt pixels, only corrupt pixels in screenshot.
      Files
      • network.bmp

        (153.65 kB, downloaded 220 times, last: )
    • Hi,

      Hard to say what is causing this effect.

      Do you use a cache for the GUIDRV_FlexColor driver?

      This would allow to read the pixeldata from memory on MCU side. This way you could try to isolate the cause of this issue.

      Did you tried our GUIDRV_FlexColor implementation for the ST7789?

      Regards,
      Sven
      Please read the forum rules before posting.

      Keep in mind, this is *not* a support forum.
      Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
      Should you be entitled to support you can contact us via our support system: segger.com/ticket/

      Or you can contact us via e-mail.