LVGL micropython API to build the GUI

I have successfully built the lv_micropython for RP port. I am using a 3.5inch 480x320 display. My next step is to create the GUI in micropython. I am using the online simulator. But how do I access LVGL’s micropython API? I have tried printing help(lvgl) in REPL. It gives a list of all the functions, modules. But I am not able to figure out what are the input arguments to the functions.

Since the Micropython API is automatically generated from the C API, you can use the C API as a reference.

Here is a GitHub issue that covers how the Micropython API maps to the C API.
When I have time I’ll turn that into a README or a help page:

Another thing I can suggest is to follow the examples and demos. On the docs you can find a Micropython example next to each C example.

All the examples, C and Python, are under the LVGL repo:

There was also an attempt by @kdschlosser to automatically generate Python docs for Micropython. I’m not sure what is the status of that, in any case, it’s not (yet) a part of the formal LVGL Micropython bindings.

1 Like

I am referring the examples from the LVGL repo. I trying to build a GUI from scratch and it needs the montserrat font. I tried loading it this way, (reference )

try:
    font_montserrat_16 = lv.font_load("S:" + script_path + "/../../assets/font/montserrat-16.fnt")
    style_sub.set_text_font(font_montserrat_12,0)            
except:
    print("Cannot load font file montserrat-12.fnt")

Its throwing an exception. I would like to try MIcropython LVGL on a simulator but I think right now the only simulator available is the online simulator for micropython. Please correct me if I am wrong

Oh I can do that super easy. I need to have the JSON output from the code generator be a little more specific on things. Like supplying the fully qualified python name and the LVGL name for each and every single thing that is in the Binding. So class methods would need to point to the LVGL function that is used and each parameter name must point to the parameter in the LVGL function and the type for each parameter needs to point to the ctype for each parameter as well.

I thought I had given you a JSON layout of the information that would be needed. Once That is done I can write the code to handle the documentation generation.