displaylvgltouchgfx

Selecting a graphics library for displays


Tell me please which graphics library for displays to choose for studying. Right now I'm deciding between LVGL and TouchGFX. TouchGFX is developed by ST so I think there will be greater compatibility of this library with STM microcontrollers. But LVGL is also a good library. I need a graphics library for displays that is compatible with STM32 microcontrollers.


Solution

  • "Compatibility" is not a good word here; both can be used with some STM32 in some setups. Let's just talk about major differences.

    lvgl is open source, which may be seen as an asset, but also it's in a way a responsibility.

    One major difference is, that TouchGFX is written in/interfaces to C++, while lvgl is pure C.

    There may be differences in the selection and "quality" of widgets offered by the two, you have to find out yourself as that depends on your usage case.

    TouchGFX has more out-of-the-box support for certain STM32 devboards which have displays, although lvgl does examples for some of them, too. TouchGFX design environment is "free" (paid for by ST's chip sales); lvgl while the library itself is open source an using it does not require design environment, it has some design environment which is an attempt to somehow finance the development.

    There may be difference in responsivity of the public and/or dedicated support if there's any; you have to find out yourself by looking at the respective fora.

    A good way to assess both may be to buy an inexpensive Disco devboard supported by both, and try the test applications.