Install lvgl micropython on thonny ide


I’m new to micropython world

i’m on thonny ide

is there a tutorial in video or by screenshot and the tools that must be downloaded to successfully compile lvgl for micropython.
i want to put it on esp32
but when i look at the lvgl doc on installing micropython for esp32. it’s really, really unclear to me.
can someone help me to understand

Thank you


so I re-read the documentation.

then I installed cygwin with the packages:

then I entered the command in the cygwin command window

$git clone
cd lv_micropython
to go to the directory
then :
$git submodule update --init --recursive lib/lv_bindings

everything is OK

then i have to download the esp-idf

I entered:

$git clone -b v4.0.2 --recursive

once downloaded I typed: cd esp-idf to go to the folder
I typed:
$ git checkout v4.2
$git submodule update --init --recursive

everything is going very well

cd esp-idf

and it doesn’t work

no more

or am I mistaken?

I’m not sure you can install that on cygwin.
I’d recommend using Linux.

Do you get some error message?


it tells me that it does not recognize the commands and it installs nothing at all.
I have since gone back to the docs. and the more I read and the more I sink, I really don’t understand anything anymore. I don’t understand how are nesting esp-idf/micropython/ and lv_micropython

I am completely stuck. What I understand is that you have to be on ubuntu to compile because windows does not work.
but is it possible to have a step by step procedure?

thank you for all !!!

  • Micropython is Python for Microcontrollers. It can be built for different architectures (called “ports”).
  • ESP-IDF is the BSP for ESP32 microcontroller family. It is used by the Micropython ESP32 port to build Micropython for ESP32.
  • lv_micropython is a fork of Micropython that includes the LVGL library, and Python bindings for LVGL.

Currently lv_micropython doesn’t officially support Windows. There’s a related open ticked.
The recommended development platform is Linux. If you only have a Windows machine, you can run Linux in a VM on Windows, or try your luck with WSL.

The lv_micropython README provides a step-by-step procedure, assuming you have some background with Micropython and ESP32.
If you don’t - I suggest you start with the basics: Try to build Micropython and use it on your microcontroller. Make sure you are able to build it, flash it and use the REPL. You can find more examples and guides for pure Micropython than lv_micropython.
Once you are successful with Micropython, switch to lv_micropython by following the build instructions in the README.


thank you, thank you, thank you very much for the answer!

so I’ve made some progress but it seems that there are still a few things that are wrong

attached the photo:
there are errors
and suddenly the ports are not created.

do you have to configure additional things on ubuntu?

thank you for all !!!

Hello !!!

for the unix port it worked wonderfully !

I followed this procedure to create the environment of esp-idf

What I don’t understand is that it gives me this error. then what i don’t understand is how to link esp-idf with port esp32 in lv_micropython
I thought I understood that it must be in relation to


Well I feel that we are not very far from getting there. on the other hand after I will have to look at all the configuration part with the drivers. In addition by chance I have a screen with an ili9488 driver and for the touch controller
XPT2046. I think there is no basic provision in lv_micropython?

thank you for everything

But it tells you exactly what the problem is! Python is missing.
Try something like: sudo apt update; sudo apt install python3

You should first run, which defines some environment variables that specify where ESP-IDF is installed.
Then when you run make it will check these environment variables and use ESP-IDF according to them.

lv_micropython already supports ili9488 and XPT2046 on ESP32.



Great I managed to create the project with the esp32 port. So far I have arrived. I can move on.

a very very very big thank you for your patience!!!

thank you

I use Arduino IDE 2.0 with Espressif system boards for Esp32, version 2.0 is very fast when compile, and better features compared with previous versions.
In this 2 projects you can see video and download source project (included also setup for LVGL 7.11 version):



I looked at your projects, and it’s really very interesting all that we can do.

however I have a question. because I looked but all the documents I find are for functions in C++. I thought there was a document with the commands for microphyton. but I can’t find it.

is there this kind of document to learn how to use the graphic library

Thank you

Yes, i use Arduino Ide 2.0 and C++, is very good and fast now.
I think it is better if you deepen your knowledge of C ++ rather than a sub language

in one of the 2 videos (it seems to me the first) there is also an image that shows the structure that I use in the programs.
Also in the first video you can also understand how to save a screenshot on SPIFFS

It’s nonsense to force others to do something unless there is a proper reason, and “micropython is sub language” is really not a proper one.

See Micropython — LVGL documentation for a map, micropython API is auto generated!
Micropython — LVGL documentation