Skip to content

Update to ESP-IDF 6.0.2 and latest managed components#112

Merged
odudex merged 4 commits into
masterfrom
toolchain-update
Jun 29, 2026
Merged

Update to ESP-IDF 6.0.2 and latest managed components#112
odudex merged 4 commits into
masterfrom
toolchain-update

Conversation

@odudex

@odudex odudex commented Jun 29, 2026

Copy link
Copy Markdown
Owner

Summary

Updates the project to ESP-IDF 6.0.2 and takes all managed components to their latest releases, re-evaluating the version constraints that were previously pinned. Bundles two small camera-pipeline trims surfaced while reviewing the esp_video bump.

Changes

Dependencies → latest on ESP-IDF 6.0.2 (834796c)

  • LVGL 9.3.*9.5.*
  • esp_lvgl_adapter ==0.4.2 (pre-release) → >=0.5.1 (resolves 0.6.0) across all 5 BSP manifests
  • esp_video >=0.1.0^2 (resolves 2.2.0; pulls esp_cam_sensor 2.2, esp_ipa 2.1)
  • Regenerated dependencies.lock; docs bumped to 6.0.2 / LVGL 9.5 (README, CONTRIBUTING — was v5.5.3, secure-boot reference URLs)

Two non-obvious decisions worth flagging for review:

  • Adapter floor is >=0.5.1, not just "latest". 6.0.2 stable still lacks esp_timer_stop_blocking(), which adapter 0.4.3/0.5.0 call under a >=6.0.0 guard (link fails); 0.5.1+ raised that guard to >=6.1.0 and falls back to esp_timer_stop().
  • CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=n. LVGL 9.5's hot draw functions overflow the bounded IRAM instruction window when forced there. Keeping them in cached flash links clean with no UI/video regression observed. LVGL 9.5 also dropped a transitive <stdio.h> and stopped exposing the image-cache header via lvgl.h — missing includes restored across 10 source files.

Drop unused DVP video device (1471c0a)

Kern opens only the MIPI-CSI camera device, but the DVP driver defaulted on (P4 has LCDCAM). Disabling it saves ~18.5 KB flash per board, no runtime change.

Drop unused YUV422P format enum (70d101e)

esp_video 2.0 dropped V4L2_PIX_FMT_YUV422P for application output (replaced by packed YUYV/UYVY); the unused APP_VIDEO_FMT_YUV422 enum member is removed.

crowpanel: ISP controller task stack → PSRAM (964a8c2)

The ISP pipeline controller's isp_task defaulted its stack to scarce internal DRAM; moved to PSRAM. The stats/AWB loop isn't latency-critical and never writes flash.

odudex added 4 commits June 29, 2026 13:41
Take all managed components to latest on ESP-IDF 6.0.2: LVGL 9.3 -> 9.5, esp_lvgl_adapter 0.4.2 -> 0.6.0, esp_video -> 2.2.

The adapter pin is floored at >=0.5.1, not just "latest": 6.0.2 stable still lacks esp_timer_stop_blocking(), which adapter 0.4.3/0.5.0 call under a >=6.0.0 guard (link fails); 0.5.1+ raised that guard to >=6.1.0 and falls back to esp_timer_stop().

LVGL 9.5 hot draw functions overflow the bounded IRAM instruction window when forced there, so CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=n keeps them in cached flash (no UI/video regression seen on wave_4b/wave_5). LVGL 9.5 also dropped a transitive <stdio.h> and stopped exposing the image-cache header via lvgl.h; restore the missing includes.
Kern opens only the MIPI-CSI device; the DVP driver defaulted on (P4 has LCDCAM) and added ~18.5 KB of dead code. Disable it — saves flash, no runtime change.
esp_video 2.0 dropped V4L2_PIX_FMT_YUV422P for application output (replaced by packed YUYV/UYVY). The APP_VIDEO_FMT_YUV422 enum member was unused; remove it.
The ISP pipeline controller's isp_task defaults its stack to internal DRAM. Its stats/AWB loop isn't latency-critical and internal DRAM is scarce on this board, so move it to PSRAM. Safe — isp_task never writes flash.
@odudex odudex merged commit 0bcca5b into master Jun 29, 2026
14 checks passed
@odudex odudex deleted the toolchain-update branch July 12, 2026 11:54
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