RGB LCD interface using ST7701S 2.1 inch display

om3gaki113r
Posts: 2
Joined: Thu Feb 20, 2020 10:43 am

RGB LCD interface using ST7701S 2.1 inch display

Postby om3gaki113r » Sun Sep 01, 2024 6:57 pm

I recently started working on a driver for ST7701S based 2.1inch round display (3 wire SPI for configuring and RGB interface for pushing frame buffer)
after few days of struggling i have made the configuring of the ST7701S driver success. I know this because i was able to display the test image placed by the vendor using the SPI commands.
The first image i have attached here is that test image being shown.
Image

Since configuration is done i have moved to pushing frame buffers to display through ESP32S3.
I have configured the ESP32S3's RGB interface and trying to push some buffer of random color to the display. But the display doesn't show anything. It's Just black.
No idea what i am doing wrong. Since configuration is done successfully i assumed displaying something would be easier.
Does anyone have any idea why the colors i try to push is not getting displayed in the Screen.?

Image

Image

Image

The vsync,hsync and other RGB interface related parameters were taken from a image shared with me by the vendor. It's strange that it doesn't work (Doesn't display anything).
Also i have a logic analyzer (Digilent's Digital Discovery). Using that i scanned PCLK, VSYNC,HSYNC and DE lines as well.
By closely observing the time gap of Start of HSYNC's NEGATIVE EDGE (moving from positive to negative) to the POSITIVE EDGE of the DE pin i can see the time gap is 1.51us.

So in the vendors image they showed,
Hsync = 6 and HBP(horizontal back porch) = 20. So total is 26. If i am not mistaken this is in PCLK pulses. Since Vendor says the PCLK needs to be 17MHz. My understanding is the from the start of the HSYNC to start of DE positive edge should be 26*PCLK period(=1.508us). Which is accurate.

So i think i can assume the ESP32 is generating the correct timing pulses. But what i don't understand is, if it's generating the correct timing pulses why there is nothing displayed on the screen. It's just blank.
Anyone has a idea?

i am using ESPIDF 5.3, ESP32S3 with octal spi PSRAM enabled. All the GPIOs being used are shown in the above screenshots.

Who is online

Users browsing this forum: Google [Bot] and 105 guests