Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG]On esp32S3_8048S070 with ek9716 rgb driver the screen shift when writing to local filesytem #18

Closed
luc-github opened this issue Jul 23, 2023 · 3 comments

Comments

@luc-github
Copy link
Owner

luc-github commented Jul 23, 2023

When any writing action is done on local FS (FatFS or LittleFS) the screen shift and become messed up.
It seems happing only on esp32S3_8048S070 with ek9716 rgb driver, all others configuration tested are working as expected

The arduino sample code has same issue but drivers seems auto recover screen when done

this configuration seems also having some upload issue if partition is bigger than 4Mb

Could not find any reason, neither workaround to fix or handle it
Any help is welcome

@luc-github
Copy link
Owner Author

Thanks to @MMlodzinski the solution may be here : https://espressif-docs.readthedocs-hosted.com/projects/espressif-esp-faq/en/latest/software-framework/peripherals/lcd.html#why-do-i-get-drift-overall-drift-of-the-display-when-driving-an-rgb-lcd-screen
I currently did not tested all solutions but CONFIG_LCD_RGB_RESTART_IN_VSYNC seems auto recover, the best would be to avoid the shifting screen when writing but this need more time

@luc-github
Copy link
Owner Author

As metionned in espressif documentation decreasing PCLK to at least 6 * 1000 * 1000 make the screen not shifting (I have tested 2 / 4 / 5 / 7) - I will add a patch in acccessFS() / ReleaseFS() function to call esp_lcd_rgb_panel_set_pclk() to decrease the frequency FS before access and and restore the frequency after access FS
In that case it seems CONFIG_LCD_RGB_RESTART_IN_VSYNC is no necessary

@luc-github
Copy link
Owner Author

patch implemented and looks good
I had to increase delay from 20ms to 40ms to make it work but so far so good

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant