diff --git a/docs/overview/renderers/arm-2d.md b/docs/overview/renderers/arm-2d.md
index d65547711e..85a4dbc551 100644
--- a/docs/overview/renderers/arm-2d.md
+++ b/docs/overview/renderers/arm-2d.md
@@ -1,4 +1,32 @@
-# ARM-2D GPU
+# Arm-2D GPU
-TODO
+Arm-2D is not a GPU but **an abstraction layer for 2D GPUs dedicated to Microcontrollers**. It supports all Cortex-M processors ranging from Cortex-M0 to the latest Cortex-M85.
+Arm-2D is an open-source project on Github. For more, please refer to: https://github.com/ARM-software/Arm-2D.
+
+
+
+## How to Use
+
+In general, you can set the macro `LV_USE_GPU_ARM2D` to `1`in `lv_conf.h` to enable Arm-2D acceleration for LVGL.
+
+If you are using **[CMSIS-Pack](https://github.com/lvgl/lvgl/tree/master/env_support/cmsis-pack)** to deploy the LVGL. You don't have to define the macro `LV_USE_GPU_ARM2D` manually, instead, please select the component `GPU Arm-2D` in the **RTE** dialog. This step will define the macro for us.
+
+
+
+## Design Considerations
+
+As mentioned before, Arm-2D is an abstraction layer for 2D GPU; hence if there is no accelerator or dedicated instruction set (such as Helium or ACI) available for Arm-2D, it provides negligible performance boost for LVGL (sometimes worse) for regular Cortex-M processors.
+
+**We highly recommend you enable Arm-2D acceleration for LVGL** when:
+
+- The target processors are **Cortex-M55** and/or **Cortex-M85**
+- The target processors support **[Helium](https://developer.arm.com/documentation/102102/0103/?lang=en)**.
+- The device vendor provides an arm-2d compliant driver for their propriotory 2D accelerators and/or customized instruction set.
+- The target device contains [DMA-350](https://community.arm.com/arm-community-blogs/b/internet-of-things-blog/posts/arm-corelink-dma-350-next-generation-direct-memory-access-for-endpoint-ai)
+
+
+
+## Examples
+
+- [A Cortex-M55 (supports Helium) based MDK Project, PC emulation is available.](https://github.com/lvgl/lv_port_an547_cm55_sim)
diff --git a/env_support/cmsis-pack/LVGL.lvgl.1.0.6-p1.pack b/env_support/cmsis-pack/LVGL.lvgl.8.3.5.pack
similarity index 95%
rename from env_support/cmsis-pack/LVGL.lvgl.1.0.6-p1.pack
rename to env_support/cmsis-pack/LVGL.lvgl.8.3.5.pack
index da863b8880..74d9c17386 100644
Binary files a/env_support/cmsis-pack/LVGL.lvgl.1.0.6-p1.pack and b/env_support/cmsis-pack/LVGL.lvgl.8.3.5.pack differ
diff --git a/env_support/cmsis-pack/LVGL.lvgl.pdsc b/env_support/cmsis-pack/LVGL.lvgl.pdsc
index 9229f9a144..3344f531da 100644
--- a/env_support/cmsis-pack/LVGL.lvgl.pdsc
+++ b/env_support/cmsis-pack/LVGL.lvgl.pdsc
@@ -36,7 +36,14 @@
https://github.com/lvgl/lvgl.git
-
+
+ - LVGL 8.3.5 release
+ - Use LVGL version as the cmsis-pack version
+ - Fix GPU support for NXP PXP and NXP VGLite
+ - Rework stm32 DMA2D support
+ - Various fixes
+
+
- LVGL 8.3.4 release
- Update GPU Arm-2D support
- Various fixes
@@ -157,6 +164,72 @@
+
+ Enable LVGL Arm-2D GPU Support
+
+
+
+
+
+
+
+
+
+
+ Enable LVGL Arm-2D GPU Support
+
+
+
+
+
+
+
+
+
+
+ Enable LVGL Arm-2D GPU Support
+
+
+
+
+
+
+
+
+
+
+ Enable LVGL Arm-2D GPU Support
+
+
+
+
+
+
+
+
+
+
+ Enable LVGL Arm-2D GPU Support
+
+
+
+
+
+
+
+
+
+
+ Enable LVGL Arm-2D GPU Support
+
+
+
+
+
+
+
+
+
-
+
LVGL (Light and Versatile Graphics Library) is a free and open-source graphics library providing everything you need to create an embedded GUI with easy-to-use graphical elements, beautiful visual effects and a low memory footprint.
@@ -358,7 +431,7 @@
-
+
A 2D image processing library from Arm (i.e. Arm-2D) for All Cortex-M processors including Cortex-M0
@@ -373,7 +446,7 @@
-
+
An hardware acceleration from STM32-DMA2D
@@ -387,7 +460,7 @@
-
+
An hardware acceleration from SWM341-DMA2D
@@ -401,13 +474,13 @@
-
+
An hardware acceleration from NXP-PXP
-
-
-
-
+
+
+
+
@@ -418,14 +491,16 @@
-
+
An hardware acceleration from NXP-VGLite
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/env_support/cmsis-pack/LVGL.pidx b/env_support/cmsis-pack/LVGL.pidx
index 85fefdb2af..4461230bb8 100644
--- a/env_support/cmsis-pack/LVGL.pidx
+++ b/env_support/cmsis-pack/LVGL.pidx
@@ -2,8 +2,8 @@
LVGL
https://raw.githubusercontent.com/lvgl/lvgl/master/env_support/cmsis-pack/
- 2022-12-31T23:17:00
+ 2023-02-06T12:22:00
-
+
\ No newline at end of file
diff --git a/env_support/cmsis-pack/lv_conf_cmsis.h b/env_support/cmsis-pack/lv_conf_cmsis.h
index 1f9e2ac293..c673772157 100644
--- a/env_support/cmsis-pack/lv_conf_cmsis.h
+++ b/env_support/cmsis-pack/lv_conf_cmsis.h
@@ -90,6 +90,9 @@
#if LV_TICK_CUSTOM
#define LV_TICK_CUSTOM_INCLUDE "Arduino.h" /*Header for the system time function*/
#define LV_TICK_CUSTOM_SYS_TIME_EXPR (millis()) /*Expression evaluating to current system time in ms*/
+ /*If using lvgl as ESP32 component*/
+ // #define LV_TICK_CUSTOM_INCLUDE "esp_timer.h"
+ // #define LV_TICK_CUSTOM_SYS_TIME_EXPR ((esp_timer_get_time() / 1000LL))
#endif /*LV_TICK_CUSTOM*/
#endif /*__PERF_COUNTER__*/
@@ -345,9 +348,9 @@
*https://fonts.google.com/specimen/Montserrat*/
#define LV_FONT_MONTSERRAT_8 0
#define LV_FONT_MONTSERRAT_10 0
-#define LV_FONT_MONTSERRAT_12 0
+#define LV_FONT_MONTSERRAT_12 1
#define LV_FONT_MONTSERRAT_14 1
-#define LV_FONT_MONTSERRAT_16 0
+#define LV_FONT_MONTSERRAT_16 1
#define LV_FONT_MONTSERRAT_18 0
#define LV_FONT_MONTSERRAT_20 0
#define LV_FONT_MONTSERRAT_22 0
diff --git a/library.json b/library.json
index a9885da50c..a33bf829ed 100644
--- a/library.json
+++ b/library.json
@@ -1,6 +1,6 @@
{
"name": "lvgl",
- "version": "8.3.5-dev",
+ "version": "8.3.5",
"keywords": "graphics, gui, embedded, tft, lvgl",
"description": "Graphics library to create embedded GUI with easy-to-use graphical elements, beautiful visual effects and low memory footprint. It offers anti-aliasing, opacity, and animations using only one frame buffer.",
"repository": {
diff --git a/library.properties b/library.properties
index 1773fc0a17..ae036fdbee 100644
--- a/library.properties
+++ b/library.properties
@@ -1,5 +1,5 @@
name=lvgl
-version=8.3.5-dev
+version=8.3.5
author=kisvegabor
maintainer=kisvegabor,embeddedt,pete-pjb
sentence=Full-featured Graphics Library for Embedded Systems
diff --git a/lv_conf_template.h b/lv_conf_template.h
index 8cd1426e56..c5b67a34ef 100644
--- a/lv_conf_template.h
+++ b/lv_conf_template.h
@@ -1,6 +1,6 @@
/**
* @file lv_conf.h
- * Configuration file for v8.3.5-dev
+ * Configuration file for v8.3.5
*/
/*
diff --git a/lvgl.h b/lvgl.h
index 79cb2f1089..76f22761bc 100644
--- a/lvgl.h
+++ b/lvgl.h
@@ -16,7 +16,7 @@ extern "C" {
#define LVGL_VERSION_MAJOR 8
#define LVGL_VERSION_MINOR 3
#define LVGL_VERSION_PATCH 5
-#define LVGL_VERSION_INFO "dev"
+#define LVGL_VERSION_INFO ""
/*********************
* INCLUDES