Stm32f746g porting

Hi,

I am trying to use lv_port_stm32f746g as a base project for my custom UI project. Thus, I attempted to copy custom UI export files from SquareLine Studio v1.4c to ui projcet and follow the instructions in swquarelines tutorials. The default lv_port_stm32f746g project works fine; I can compile and flash it to the hardware, and everything functions properly. However, when I try to replace the UI files with my own design or any example UI projects, the compilation fails with several errors. I noticed that lv_port_stm32f746g uses lvgl v9, while SquareLine supports up to lvgl v8.. Could anyone advise on how to resolve this issue? Additionally, how can I replace lvgl v9 with lvgl v8. to utilize SquareLine Studio as a UI design tool?

Here is the link to the GitHub repository of lv_port_stm32f746g: GitHub - lvgl/lv_port_stm32f746_disco: LVGL ported to STM32F746G-DISCO using STM32CubeIDE

I have tried the following options, and they all failed:

  1. Adding a new platform using the OBP tutorial: https://www.youtube.com/watch?v=8D03rIzTz38&t=6s
  2. Exporting a new UI to an existing project as outlined in “Export into an Existing Project | Basics Tutorial #7 | SquareLine Studio.”
  3. Manually replacing lvgl v9 with lvgl v8.3.6 and 8.3.11.

Show error aftr replace 8.3.6, and you require replace and reconfig lv_conf too

1 Like

Maybe it’s not that easy to make everything (HAL init, flush, etc.) in main.c work with LVGL-8.3.11 if they’re already updated for LVGL-9. But it seems that STM lvgl-port has a v8-related branch called ‘v8-preview’, probably a better starting point for a SquareLine Studio v1.4 project/board-template if it works on your board: GitHub - lvgl/lv_port_stm32f746_disco at v8-preview

1 Like

Thanks for your reply. I solved the fiirst issue using v8-preview version. :slight_smile:

Thank you very much for your help. I successfully implemented the project based on your recommendation, using the v8-preview version, and then I upgraded it to version 8.3.11. The lvgl_demo sample works properly, but when I try the ebike-demo example, during project compilation, I receive an error related to FLASH overflow. “ebike_demo.elf section .rodata' will not fit in region FLASH’” is the exact error message I receive. Do you have any idea how I can fix this as well?

I think it is to be taken literally, that there’s a lot of data in that demo (images) that doesn’t fit into the flash of your device. Maybe reconfiguration/repartitioning can help. You may try using the new file ‘assets’ feature present in SquareLine Studio 1.4…

Hi again,

I was able to manage all the resource limitation issues and now have the code running on the hardware. However, there is one remaining issue. Some fast animations are not working properly, and in some cases, the animations do not display at all, although other parts of the UI are functioning. For instance, in both the e-bike and EV charger projects, when the charging page is displayed, the animations in the state of charge section do not run at all.

Have you ever experienced issues like this before?

I don’t want to remove the previous replay, some body may need it in the future, but the issue is solved by defining LV_COLOR_SCREEN_TRANSP in the lvgl_config.h file. :slight_smile:

1 Like

@HosseinNhk Are you able to provide a template with all solved problems? I am trying to do the same. Thanks.

Yes sure tommorow I will share the project with you.

Hi, attached is the link to project file for ebike demo on stm32f746g discovery board with lvgl 8.3.11.

lv_port_stm32f746_disco.rar

1 Like