Skip to content

Master merge - #112

Open
lx4013 wants to merge 5 commits into
lvgl:masterfrom
lx4013:master_merge
Open

Master merge#112
lx4013 wants to merge 5 commits into
lvgl:masterfrom
lx4013:master_merge

Conversation

@lx4013

@lx4013 lx4013 commented Apr 7, 2026

Copy link
Copy Markdown

Summary by cubic

Ports the 8-inch UI and assets, unifies multi-board compile flags, and now exports UI structure JSON at runtime. The build is simpler: submodules removed, CMake tuned for POSIX/debug, and FreeType font loading fixed.

  • New Features

    • Added Charger_PreDefine.h to centralize targets (AC/DC, MT7628, AM3354, SSD202, cabinet, 4.3").
    • Added fonts (D-DIN-PRO-600-SemiBold.otf, calibri.ttf, calibrib.ttf).
    • Added UI fragments under assets/fragment/ (connectors, charging states, errors, detailed data, language picker, keypad, help/billing, no-price).
    • Runtime export of UI structure descriptions to aid debugging and asset verification.
  • Refactors

    • Removed .gitmodules (no lvgl, lv_drivers, FreeRTOS submodules).
    • CMake: min 3.10, force gcc, set Debug, unset cached USE_FREERTOS, add include paths; POSIX-first with USE_FREERTOS opt-in.
    • Improved debug interface for local demos.
    • Fixed FreeType to load/render new .otf/.ttf assets.

Written for commit 6559ffb. Summary will update on new commits.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

3 issues found across 364 files

Note: This PR contains a large number of files. cubic only reviews up to 75 files per PR, so some files may not have been reviewed. We prioritized the most important files first.

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="CMakeLists.txt">

<violation number="1" location="CMakeLists.txt:2">
P2: Forcing CMAKE_C_COMPILER to gcc overrides user/toolchain selection and can break portability for non-gcc environments.</violation>

<violation number="2" location="CMakeLists.txt:4">
P2: Unconditionally setting CMAKE_BUILD_TYPE to Debug overrides user/CI build configurations for single-config generators and can force debug builds unexpectedly. Make this conditional so Release/RelWithDebInfo can be chosen externally.</violation>

<violation number="3" location="CMakeLists.txt:9">
P2: Clearing the USE_FREERTOS cache entry before declaring the option overrides any user-provided -DUSE_FREERTOS=ON value, effectively making the FreeRTOS toggle non-configurable via the CMake cache/CLI.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Comment thread CMakeLists.txt
@@ -1,12 +1,12 @@
cmake_minimum_required(VERSION 3.12.4)
cmake_minimum_required(VERSION 3.10)
set(CMAKE_C_COMPILER "gcc" CACHE STRING "C compiler" FORCE)

@cubic-dev-ai cubic-dev-ai Bot Apr 7, 2026

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Forcing CMAKE_C_COMPILER to gcc overrides user/toolchain selection and can break portability for non-gcc environments.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At CMakeLists.txt, line 2:

<comment>Forcing CMAKE_C_COMPILER to gcc overrides user/toolchain selection and can break portability for non-gcc environments.</comment>

<file context>
@@ -1,12 +1,12 @@
-cmake_minimum_required(VERSION 3.12.4)
+cmake_minimum_required(VERSION 3.10)
+set(CMAKE_C_COMPILER "gcc" CACHE STRING "C compiler" FORCE)
 project(lvgl C CXX)
+set(CMAKE_BUILD_TYPE Debug)
</file context>
Fix with Cubic

Comment thread CMakeLists.txt
cmake_minimum_required(VERSION 3.10)
set(CMAKE_C_COMPILER "gcc" CACHE STRING "C compiler" FORCE)
project(lvgl C CXX)
set(CMAKE_BUILD_TYPE Debug)

@cubic-dev-ai cubic-dev-ai Bot Apr 7, 2026

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Unconditionally setting CMAKE_BUILD_TYPE to Debug overrides user/CI build configurations for single-config generators and can force debug builds unexpectedly. Make this conditional so Release/RelWithDebInfo can be chosen externally.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At CMakeLists.txt, line 4:

<comment>Unconditionally setting CMAKE_BUILD_TYPE to Debug overrides user/CI build configurations for single-config generators and can force debug builds unexpectedly. Make this conditional so Release/RelWithDebInfo can be chosen externally.</comment>

<file context>
@@ -1,12 +1,12 @@
+cmake_minimum_required(VERSION 3.10)
+set(CMAKE_C_COMPILER "gcc" CACHE STRING "C compiler" FORCE)
 project(lvgl C CXX)
+set(CMAKE_BUILD_TYPE Debug)
 
 # Set the correct FreeRTOS port for your system (e.g., Posix for WSL)
</file context>
Fix with Cubic

Comment thread CMakeLists.txt
set(LVGL_PRO_PROJECT_DIR
""
CACHE PATH "Path to LVGL Pro Project folder")
unset(USE_FREERTOS CACHE)

@cubic-dev-ai cubic-dev-ai Bot Apr 7, 2026

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Clearing the USE_FREERTOS cache entry before declaring the option overrides any user-provided -DUSE_FREERTOS=ON value, effectively making the FreeRTOS toggle non-configurable via the CMake cache/CLI.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At CMakeLists.txt, line 9:

<comment>Clearing the USE_FREERTOS cache entry before declaring the option overrides any user-provided -DUSE_FREERTOS=ON value, effectively making the FreeRTOS toggle non-configurable via the CMake cache/CLI.</comment>

<file context>
@@ -1,12 +1,12 @@
-set(LVGL_PRO_PROJECT_DIR
-    ""
-    CACHE PATH "Path to LVGL Pro Project folder")
+unset(USE_FREERTOS CACHE)
 
 option(USE_FREERTOS "Enable FreeRTOS" OFF) # Turn this on to enable FreeRTOS
</file context>
Fix with Cubic

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 1 file (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="simulator.code-workspace">

<violation number="1" location="simulator.code-workspace:86">
P2: VSCode workspace now hardcodes Windows/MSYS paths and `.exe` binaries without POSIX alternatives, but the project README claims the workspace should work on Windows, Linux, and macOS. This makes the preconfigured tasks/debugger unusable on Linux/macOS.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Comment thread simulator.code-workspace
@@ -1,109 +1,134 @@
{

@cubic-dev-ai cubic-dev-ai Bot Apr 7, 2026

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: VSCode workspace now hardcodes Windows/MSYS paths and .exe binaries without POSIX alternatives, but the project README claims the workspace should work on Windows, Linux, and macOS. This makes the preconfigured tasks/debugger unusable on Linux/macOS.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At simulator.code-workspace, line 86:

<comment>VSCode workspace now hardcodes Windows/MSYS paths and `.exe` binaries without POSIX alternatives, but the project README claims the workspace should work on Windows, Linux, and macOS. This makes the preconfigured tasks/debugger unusable on Linux/macOS.</comment>

<file context>
@@ -1,106 +1,134 @@
+      {
+        "label": "Run: main.exe",
+        "type": "shell",
+        "command": "./bin/main.exe",
+        "options": {
+          "cwd": "${workspaceFolder}"
</file context>
Fix with Cubic

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant