cancel
Showing results for 
Search instead for 
Did you mean: 

TouchGFX project - screen is all white and LTDC VSYNC/HSYNC not toggling

Ag.11
Associate II

0690X00000DXCwAQAX.pngI am working with a project that was generated from CubeMX 5.5, and then TouchGFX 4.13 using the partial project file generated from Cube. The issue I am seeing is everything appears to be working (details below) except I am not seeing any activity on the VSYNC or HSYNC pins. The screen appears all white and does not change.

Things I have measured/observed that seem correct:

  • The LTDC clock is ticking at 12MHz.
  • I can see activity on some RGB data pins.
  • I can vary the backlight brightness via PWM as expected.
  • I have inserted counters at various places that I can see incrementing via the debugger, including Model::tick().
  • I can set breakpoints and confirm line interrupts and DMA2D transfer complete interrupts are firing.

Additional info: there are no DMA2D errors, and 1 LTDC error (transfer error) that occurs on startup. LTDC global error interrupt is not enabled. I copied CubeMX settings from the STM32H750B-DK examples, except for the sync width settings, which were copied from the screen datasheet and are as in the attached picture:

Any ideas or clues what could be going on? I have tried this with a few different screens and boards, but VSYNC and HSYNC remain high and do not toggle.

1 ACCEPTED SOLUTION

Accepted Solutions
Ag.11
Associate II

SOLVED.

I had the wrong polarity for the LCD_DISP_ONOFF pin (different from the DATA_ENABLE pin). I figured since I could see a white backlight coming on, I had the correct polarity. I switched the polarity and now all works well.

As for the VSYNC/HSYNC pins always appearing high - this was due to improper acquire and trigger settings on my cheap oscilloscope. I adjusted them and now am seeing them toggle as expected.

View solution in original post

1 REPLY 1
Ag.11
Associate II

SOLVED.

I had the wrong polarity for the LCD_DISP_ONOFF pin (different from the DATA_ENABLE pin). I figured since I could see a white backlight coming on, I had the correct polarity. I switched the polarity and now all works well.

As for the VSYNC/HSYNC pins always appearing high - this was due to improper acquire and trigger settings on my cheap oscilloscope. I adjusted them and now am seeing them toggle as expected.