The lv_port_esp32 repository has been growing the last months with several contributions from the community in general, while being an example project and not a fit for all use cases we are always trying to:
- Improve the code base, documenting and cleaning up the code, so it’s easier for new users to contribute support for their particular display and touch drivers if they want to.
- Ease the configuration of LVGL and LVGL examples using the menuconfig from the ESP-IDF framework.
- Trying to fix bugs/issues as soon as possible, sometimes this is not possible because we don’t have the displays available, so we rely on user feedback.
With the release of LVGL v7 the repository had several changes, and we would like to get user feedback on a particular change that we are considering and wasn’t included in the last update.
The current lv_port_esp32 project include a “component” (in the ESP32-IDF lingo), this component includes LVGL, lv_examples and lv_esp32_drivers. The particular change we are trying to implement is to separate this into three different components. To avoid duplication of work this change would require us to add the CMakeLists.txt and Kconfig (and a proposed lv_conf_kconfig_template.h) files into the main LVGL and lv_examples repositories, this files will be only used by the ESP-IDF framework and don’t interfere in other uses.
The Kconfig files in particular will be helpful for other frameworks that work with this file for project configuration. The lv_conf_kconfig_template.h is a custom lv_conf_template.h file with the symbols/options available on the Kconfig file.
With this change the users would be able to include just the component they want to their project without needing to include the whole lv_esp32_port project, while keeping the options of update, open issues and PR to the “components”.
So this Request For Comments (RFC) is to ask for your thoughts about this change, this will begin as a proof of concept and if it is successful will be merged into the main LVGL and lv_example repos.