What are LittlevGL limitations? (im moving away from Nextion)

Hi I need some help getting started with littlevgl as it really is a huge unknown to me.
I did a simple fake UI design for a prop design I did a little while back using the Nextion HMI displays.
A video showing the UI
Tricorder UI

I have been massively burned by nextion with quality fade and down right corrupt actions by its staff…

Because of all this I want to recreate my Fake UI animation design in LittlevGL so I can control the quality of hardware used in my props.

As you can see Im using a fairly large amount of graphic assets. Is this something LittlevGL can handle? Im assuming the graphic assets need to be loaded in an a flash chip of some sort. Is LittlevGL capable of loading assets quickly and displaying them?

And Does littlevGL IDE convert the assets into usable binaries? Im guessing rgb565 for small 2.8 inch spi driven displays?

How are the widgets in the IDE made? Are they simply functions with data inputs that then convert the data into GL draw commands as part of each screen draw cycle?
So if I need my own new graphic element I can create my own function call and fill it with GL commands? Can I use the IDE to wysiwyg up new widgits and generate code with it?

Also does littlevGL do graphic tiles? So i can load a bunch of icons in 1 image, and tile it?

My first version used an atmega328p but as I now need to do UI AND led animations and touch and sound… I think an MCU upgrade is in order. stm32f103?

Anyway info you can give me would be incredibly helpful…

Also is there a discord?

Also for some reason this is showing up in the BUG sub forum, I though i set it to getting started?

Wow that’s cool! I want one!

I think it’s more a question of the hardware you use, the amount of ROM/RAM you have, your display driver etc.
lvgl is just the rendering software engine.

You can use the image converter tool of lvgl for converting image formats, or directly load PNG files with the PNG image decoder.

There is no “lvgl IDE”, or a GUI builder tool (yet). lvgl is just a C library. You build it and use it to render widgets, such as buttons, text labels etc. In your case - probably a lot of images.
You can create new widgets (“objects”) if you want, but this requires more effort than just using the library.
What kind of graphic elements do you need, that are missing from lvgl?

Also, I’m not sure what you mean by “GL draw commands”. lvgl is not like opengl - it is rendering everything in software and sends buffers of pixels to the display using a display driver.

You can place and align objects as you like, if that’s what you mean.

atmega328p is definitely too weak to render complex graphics at high speeds…
Are you going to use SPI display or some parallel bus? What data rates do you need?

No, this forum and github are the main collaboration tools used for lvgl, although discord could be an interesting addition. @kisvegabor, what do you think?

1 Like

Discourse can already act like a live chat system (it automatically shows new messages). We could create a special “live chat” thread.

If we really wanted a dedicated chat, I think Gitter would be more appropriate, since it integrates with GitHub better.

But I would rather keep the number of communication channels low to make finding information easier.

I agree with that. In our case, I see two problems with a chat system:

  1. For users, it means another place to look for information
  2. It’d be another place that requires persistence to answer the questions. Even continuous persistence to really work as a chat.

So, I think, for now, we are good with GitHub and this Forum.

As an upgrade I would consider using a STM32F4xx with graphics support. There are similar boards to Bluepill with F401/F411 for about 5 bucks, or the STM32F407VE Black where you can directly plug a tft on.
That is real fun.