Closed aliphys closed 4 months ago
When compiling the squarelinestudio_lvgl.ino sketch new libraries/UI
folder from Squareline Studio with LVGL9.1, there is an undefined reference to ui_init()
.
C:\Users\Ali Jahangiri\AppData\Local\Temp\arduino\sketches\13EED99990BB5BE14B654F6C77474EA5\sketch\objs.a(squarelinestudio_lvgl.ino.cpp.o): In function `setup':
C:\GitHub\Arduino\Arduino_GigaDisplay\examples\lvgl\squarelinestudio_lvgl/squarelinestudio_lvgl.ino:37: undefined reference to `ui_init'
collect2.exe: error: ld returned 1 exit status
Using library Arduino_H7_Video at version 1.0 in folder: C:\Users\Ali Jahangiri\AppData\Local\Arduino15\packages\arduino\hardware\mbed_giga\4.1.3\libraries\Arduino_H7_Video
Using library Arduino_GigaDisplayTouch at version 1.0.1 in folder: C:\Users\Ali Jahangiri\Documents\Arduino\libraries\Arduino_GigaDisplayTouch
Using library Wire in folder: C:\Users\Ali Jahangiri\AppData\Local\Arduino15\packages\arduino\hardware\mbed_giga\4.1.3\libraries\Wire (legacy)
Using library lvgl at version 9.1.0 in folder: C:\Users\Ali Jahangiri\Documents\Arduino\libraries\lvgl
Using library Portenta_SDRAM at version 1.0 in folder: C:\Users\Ali Jahangiri\AppData\Local\Arduino15\packages\arduino\hardware\mbed_giga\4.1.3\libraries\Portenta_SDRAM
Using library ea_malloc in folder: C:\Users\Ali Jahangiri\AppData\Local\Arduino15\packages\arduino\hardware\mbed_giga\4.1.3\libraries\ea_malloc (legacy)
exit status 1
Compilation error: exit status 1
I see that the following line is not changed between the previous version:
@leonardocavagnis can you advise on this?
Memory usage change @ d9d24d7ca4b16cfd037a5de676af61a5a2fdd6e9
Board | flash | % | RAM for global variables | % |
---|---|---|---|---|
arduino:mbed_giga:giga |
0 - 0 | 0.0 - 0.0 | 0 - 0 | 0.0 - 0.0 |
arduino:mbed_portenta:envie_m7 |
N/A | N/A | N/A | N/A |
Following recommendations from @leonardocavagnis , the example now works. The UI
folder must be located within the Arduino/libraries
folder of the local installation, not the sketch itself.
Memory usage change @ bcabf188ad0bb9d7f8215601b4e6d4c1aeedd12f
Board | flash | % | RAM for global variables | % |
---|---|---|---|---|
arduino:mbed_giga:giga |
0 - 0 | 0.0 - 0.0 | 0 - 0 | 0.0 - 0.0 |
arduino:mbed_portenta:envie_m7 |
N/A | N/A | N/A | N/A |
Example also works with LVGL 8.4 (so should not break existing code created previously )
When comparing compilation time (Intel Core i7-1360P @ 2.20 GHz, 32 GB RAM, Windows 10) between LVGL8.4 and LVGL9.1: LVGL9,1 is about 60% slower.
LVGL Version | Compile 1 (m:s) | Compile 2 (m:s) | Compile 3 (m:s) |
---|---|---|---|
8.4 | 1:41 | 1:40 | 1:41 |
9.1 | 2:41 | 2:38 | 2:34 |
Between each run, the library cache was emptied by switching the board as described by @per1234 here.
Could possibly be improved by https://github.com/arduino/arduino-cli/pull/2625
Does not cause any breaking changes. So we can continue with the PR.
Memory usage change @ 1a903443a8c3ca072cffb3cf02a4d7be14edc68d
Board | flash | % | RAM for global variables | % |
---|---|---|---|---|
arduino:mbed_giga:giga |
0 - 0 | 0.0 - 0.0 | 0 - 0 | 0.0 - 0.0 |
arduino:mbed_portenta:envie_m7 |
N/A | N/A | N/A | N/A |
As described in https://github.com/arduino-libraries/Arduino_GigaDisplay/issues/29 , SquareLine Studio now:
library/UI
filesThis PR modifies the existing squarelinestudio_lvgl_v8.ino sketch, in line with the updates made to SquareLine Studio to undo regressions. 🌟
Closes https://github.com/arduino-libraries/Arduino_GigaDisplay/issues/29