Page 1 of 1

ESP32-S3 RGB565 and octal SPI for video use

Posted: Mon May 23, 2022 4:04 am
by Karol Gryn
Hello,

We are currently working on software, which would handle an OLED display using ESP32-s3. This display can be only controlled by analog signal.
If it is possible to run RGB565 on ESP32 directly without using any display controller (such as it realized is on STM32 LTDC using hsync, vsync and parallel data singals)? All examples we found online are dedicated to display with controllers (using parallel RGB565 signal + I2S, SPI for communication with controller). We've also have an idea to use octal-spi to generate proper pixel data and hsync, vsync signals and then use R-2R ladder to convert this signal to analog one. During research we found a library dedicated to Octal SPI on ESP32-S3:
https://github.com/espressif/esp-idf/co ... 213ae75ee7

We haven't found any implementation information other than PSRAM use. Have you considered using octal SPI to control other peripherals than PSRAM and do you have examples of such implementations?

We're looking to your answer.
Greetings

Re: ESP32-S3 RGB565 and octal SPI for video use

Posted: Mon May 23, 2022 5:39 am
by ESP_Sprite
You probably want to take a look at esp-lcd, specifically the rgb-panel functionality.

Re: ESP32-S3 RGB565 and octal SPI for video use

Posted: Wed May 25, 2022 3:09 pm
by Karol Gryn
Hello,

Thank you for the reply and linked example. We run the code that you shared and it worked with LVGL. We'll try if this RGB565 would be usable for our display.

On the other hand, I would like to ask about the Octal-SPI as the another way we can try to use for out purpose. Is the implementation and possibly an example available?

Greetings

Re: ESP32-S3 RGB565 and octal SPI for video use

Posted: Thu May 26, 2022 3:21 am
by ESP_Sprite
Sorry, I don't think we do. FWIW, if you use PSRAM in the 'default' way, it's integrated into the ESP32s memory map and your framebuffer can be stored in it simply by storing it to memory. The LCD controller can then DMA it out of there using EDMA.

Edit: For reference, GSPI octal SPI is perfectly supported, as Deouss shows below. What I mean is that there's not direct connection between the octal SPI PSRAM and any external LCD logic. You're still perfectly able to use octal SPI on the GSPI controller to control a LCD, and you can even use PSRAM indirectly by using DMA to fetch the SPI data from PSRAM.

Re: ESP32-S3 RGB565 and octal SPI for video use

Posted: Tue May 31, 2022 10:24 pm
by Deouss
I actually managed to connect NT35510 TFT 800x480 to K210 with octa SPI multi-line setup
Haven’t tried OTM display yet - they look the same

https://www.youtube.com/watch?v=QieHNK1mC5c

It is interesting I was able to transfer images thru UART at 2000000 baud rate
I am trying now to add touchscreen -XPT2046 or HR2046

That display is super nice - I set it up to 8bit bus at 16bit colors RGB565
I'm not sure if I could use some of ESP libraries for touchscreen so then I could move forward to LVGL

Re: ESP32-S3 RGB565 and octal SPI for video use

Posted: Fri Oct 14, 2022 10:45 am
by weili_an
so cool!

Re: ESP32-S3 RGB565 and octal SPI for video use

Posted: Fri Oct 14, 2022 10:46 am
by weili_an
so cool!
Deouss wrote:
Tue May 31, 2022 10:24 pm
I actually managed to connect NT35510 TFT 800x480 to K210 with octa SPI multi-line setup
Haven’t tried OTM display yet - they look the same

https://www.youtube.com/watch?v=QieHNK1mC5c

It is interesting I was able to transfer images thru UART at 2000000 baud rate
I am trying now to add touchscreen -XPT2046 or HR2046

That display is super nice - I set it up to 8bit bus at 16bit colors RGB565
I'm not sure if I could use some of ESP libraries for touchscreen so then I could move forward to LVGL