Description
The main reason for creating this repository with the driver controllers (display and indev) from lv_port_esp32
was eventually contribute the drivers to the lv_drivers
repo (then we could use that repo as submodule here, and other LVGL users could use their microcontroller of choice and have many drivers already available).
In order to achieve this, we would need to abstract the microcontroller independent code, this being: the bus the microcontroller uses to send the data to the display (SPI, I2C, parallel, etc) and any other GPIO (reset and backlight control).
I personally think of the following list as the steps we need to take, not all at once nor in priority order:
- Fix the code style on the drivers, use the LVGL code style.
- Update any outdated code.
- On the meantime it might be useful to move the ESP32 specific code into a set of functions, think of static functions on the driver files, then maybe have a couple of files with all the ESP32 specific code?
- Issue willing to give a lift #1 had a lot of great ideas on how to get the display and touch controllers into one 'box' and update them if necessary, when rotating the screen, etc.
- I think using callbacks is a way to abstract the microcontroller specific code from the drivers. Do you happen to know any other?
Other things we would like to do:
- Clean up the Kconfig files.
- Maybe structure the directories a bit better, I was thinking of rename the
lvgl_tft
directory todisplays
and have a directory per driver maybe?
@kisvegabor @embeddedt and others, any suggestions?