LVGL experimental mirroring of display on Web UI (#23041)

This commit is contained in:
s-hadinger 2025-02-20 21:45:45 +01:00 committed by GitHub
parent 0ab5548615
commit 7a4d8a5fb1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 1057 additions and 1 deletions

View File

@ -6,6 +6,7 @@ All notable changes to this project will be documented in this file.
## [14.5.0.1]
### Added
- Berry experimental driver for AXP2101 for M5Core2v1.1
- LVGL experimental mirroring of display on Web UI
### Breaking Changed

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@ -1206,6 +1206,8 @@
#define USE_BERRY_WEBCLIENT_TIMEOUT 2000 // Default timeout in milliseconds
#define USE_BERRY_LEDS_PANEL // Add button to dynamically load the Leds Panel from a bec file online
#define USE_BERRY_LEDS_PANEL_URL "http://ota.tasmota.com/tapp/leds_panel.bec"
#define USE_BERRY_LVGL_PANEL // Add button to dynamically load the LVGL Panel from a bec file online
#define USE_BERRY_LVGL_PANEL_URL "http://ota.tasmota.com/tapp/lvgl_panel.bec"
//#define USE_BERRY_PARTITION_WIZARD // Add a button to dynamically load the Partion Wizard from a bec file online (+1.3KB Flash)
#define USE_BERRY_PARTITION_WIZARD_URL "http://ota.tasmota.com/tapp/partition_wizard.bec"
//#define USE_BERRY_GPIOVIEWER // Add a button to dynamocally load the GPIO Viewer from a bec file online

View File

@ -94,8 +94,11 @@ public:
bool rules_busy = false; // are we already processing rules, avoid infinite loop
bool web_add_handler_done = false; // did we already sent `web_add_handler` event
#ifdef USE_BERRY_LEDS_PANEL
bool leds_panel_loaded = false; // did we already load Parition_Wizard
bool leds_panel_loaded = false; // did we already load Leds Panel
#endif // USE_BERRY_LEDS_PANEL
#ifdef USE_BERRY_LVGL_PANEL
bool lvgl_panel_loaded = true; // did we already load LVGL Panel, default true, changed to false when LVGL starts
#endif // USE_BERRY_LVGL_PANEL
#ifdef USE_BERRY_PARTITION_WIZARD
bool partition_wizard_loaded = false; // did we already load Parition_Wizard
#endif // USE_BERRY_PARTITION_WIZARD
@ -137,6 +140,16 @@ const BeBECCode_t BECCode[] = {
},
#endif // USE_BERRY_LEDS_PANEL
#if defined(USE_BERRY_LVGL_PANEL) && defined(USE_LVGL)
{
"LVGL Mirroring",
"lvgl_panel",
USE_BERRY_LVGL_PANEL_URL,
"/?",
&berry.lvgl_panel_loaded
},
#endif // USE_BERRY_LEDS_PANEL
#ifdef USE_BERRY_PARTITION_WIZARD
{
"Partition Wizard",

View File

@ -484,6 +484,10 @@ void start_lvgl(const char * uconfig) {
lv_obj_set_style_bg_color(lv_screen_active(), lv_color_hex(USE_LVGL_BG_DEFAULT), static_cast<uint32_t>(LV_PART_MAIN) | static_cast<uint32_t>(LV_STATE_DEFAULT));
lv_obj_set_style_bg_opa(lv_screen_active(), LV_OPA_COVER, static_cast<uint32_t>(LV_PART_MAIN) | static_cast<uint32_t>(LV_STATE_DEFAULT));
#ifdef USE_BERRY_LVGL_PANEL
berry.lvgl_panel_loaded = false; // we can load the panel
#endif // USE_BERRY_LVGL_PANEL
#if LV_USE_LOG
lv_log_register_print_cb(lvbe_debug);
#endif // LV_USE_LOG