Skip to content

Suggestion for LVGL support (BSP-550) #387

Open
@ammaree

Description

@ammaree

Related area

LVGL Display support

Hardware specification

ESP_WROVER_KIT and ESP32_S3_LCD_EV

Is your feature request related to a problem?

We are trying to optimise performance and reduce code footprint, flash and SRAM. In order to do this we have come across multiple challenges, such as :
*lvgl_port_task() support for index/touch device is forced but ESP_WROVER_KIT does not have a touch capability and in many cases buttons are not needed/used.
*Although we have access to a 1mSec resolution timer, we cannot disable the lvgl_port_tick_init() support completely.
*Trying to avoid the use of bsp_display_start_with_config, lvgl_port_task() and suchlike by duplicating the minimal functions required is also not possible since lvgl_port_ctx is declared static and many(most) APIs require this structure.
*In lvgl_port_task() the taskname has a space that breaks syslog functionality where, if the taskname is used in HOSTNAME, APP-NAME or PROCID fields, SP is interpreted as a separator hence 1 parameter becomes 2.

Describe the solution you'd like

The ultimate solution would be if the BSP, and especially LVGL support, was structured in a way that allows the individual components.
*Ideal would be through a list of macros being used to in/exclude sections of functionality, configured through menuconfig.
*Possible through a more comprehensive cfg structure where a member, say TaskInitFunc, can be initialised with a pointer to the task init function, if not provided the default is used. Similarly a member TaskTickHdlr overriding the tick support.

Describe alternatives you've considered

Have tried building own bsp_display_start() and lvgl_port_task() functionality, but failed due to close coupling and private nature of many/most BSP components

Additional context

No response

I have checked existing list of Feature requests and the Contribution Guide

  • I confirm I have checked existing list of Feature requests and Contribution Guide.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions