cancel
Showing results for 
Search instead for 
Did you mean: 

Colors in LCD is lighter than TouchGFX design

MiladChalipa
Senior

recently, I am working on a project with STM32F746 and 9" LCD with GT911 touch panel, everything is working fine except the colors in the LCD appears lighter than expected in TouchGFX design! maybe something wrong with the settings So I uploaded some pictures about LTDC and TouchGFX settings. Any help would be grateful.0693W000006G0E4QAK.jpg0693W000006G03qQAC.png0693W000006G0ArQAK.png0693W000006G0EYQA0.png0693W000006G0DzQAK.jpg

1 ACCEPTED SOLUTION

Accepted Solutions
MiladChalipa
Senior

@KnarfB​  @MM..1​ The problem solved. It was due to the lack of one of the TFT bias voltages on the PCB (Vgh). it had to be 17 volts but there was a failure in the boost converter chip, So replaced and now the LCD works correctly.

Thanks for your efforts guys.

For those who have the same issue:

1-Double check the TFT voltage biases (Vcom-Vgh-Vgl-AVdd-...).

2-if the bias voltage chips have an EN pin, make sure to enable the IC's first.

3-if there is the external ram (FMC), make sure to configure it correctly and double-check the color frame buffer in cubeMX to be correct (mine is 0xC0000000).

View solution in original post

10 REPLIES 10
MM..1
Chief II

I see you setup LTDC as RGB888 display, have you realy 24 color pins on MCU connected to LCD ?

When yes and you have amount in external ram i recommend use RGB888 for framebuffer too and same TouchGFX.

@MM..1 yes, I connected RGB888 pins of LCD to the STM32 MCU and it has 256Mbit RAM Chip, actually I experienced some strange issues like flikring when change the color depth to RGB888 So decided to leave it RGB565.

Some displays have too control interface and before use need send register values about setup, then RG888 in ltdc need set display to same mode.

When you have flik you need better values for pixel clock and porchs.

To check connection for colour bits. LCD need R7-R0 connect to same pins on MCU. And for setup LCD is good start point use color pattern of basic colours.

When your display is setup and connected without failure, then only porchs values vs pixel clock in stm is bad.

I will check Porchs and Clock on the go friend, let me double check values and get back to you soon😎

MiladChalipa
Senior

I checked every possible configuration about pixel clock and porches but still no luck :expressionless_face:

Are you sure that the LCD is of good quality? I think you are in Iran. If so don't trust the product that you have bought so far.

MM..1
Chief II

How is your PCLK

and for start with LCD turn off TouchGFX (in main comment out rtos start) and only fill framebuffer memory in main after init ltdc .

Fill with one color coded as you set ltdc framebuffer type. If 565 the simply use

memset ((uint16*)FB,0xFFFF, widthxheight); //WHITE disp

memset ((uint16*)FB,0xF800, widthxheight); //RED disp or 00F8

MiladChalipa
Senior

@MM..1​ still have the problem, maybe it is an LCD problem :\, I don't have any other LCD around to test if it is the LCD problem or not, but will check and inform the community later on.

KnarfB
Principal III

Which controller chip is on the LCD? Often there are options to display a test pattern for checking the colors. Gamma correction can also be an issue. As MM..1 suggested: start filling the frame buffer with simple bit patterns, first 0x0000 check, 0x0001 check, 0x0002, and so on and check if the colors meet your expections of what should be displayed.

hth

KnarfB