Large Font Issue with Arduino IDE and GIGA R1

What do you want to achieve?

I want to verify/compile my project with a font enabled other than default using:
Arduino IDE 2.3.2
SquareLine Studio 1.3.4
Arduino GIGA R1
Arduino GIGA Display Shield
Windows 11 Enterprise

What have you tried so far?

Ensuring the font was enabled in lv_conf.h
Trying different versions of lvgl and all associated libraries
Create local windows profile (since documents was one drive synced on main profile)
Double checked that the Arduino IDE sketchbook location is correct
Rebuilt the SLS project from scratch…TWICE!
Read every forum post I can find on google including this forum

Screenshot or video

Apparently, as a new user, I’m only allowed to put one embedded item. Here is the error I’m getting:

I have verified that this is not the same issue as How to use larger montserrat fonts? (solved) - How to - Forum - SquareLine Studio

And tried several ideas derived from here since it was the closest sounding issue to mine. Nothing worked:

Montserrat fonts issues - Squareline Studio project in Arduino Giga R1 with ArduinoGigaDisplayShield - How to - Forum - SquareLine Studio

Any help is greatly appreciated!!!

This is often caused by the lv_conf.h not having the font enabled. If you check and find it’s enabled it’s with noting that (IIRC) the H7Video library comes packaged with an lv_conf.h that can get chosen in preference to the one you place in the libraries directory. Either way, if it’s enabled in your libraries/lv_conf.h and you still get the issue you’ve probably got a duplicate somewhere. If you manage to get the entire gcc compile command you can add -H to the flags and run it on the command line and it’ll tell you what includes the source file includes. You will then find where the lv_conf.h is that is being used.

2 Likes

@brys123, it seems you did your work and searched the forum. Yes in the second link you added you can see my trials to solve the problem with the GigaShield. My conclusion was that Arduino IDE left some important details hidden in the background, and I’m used to more verbose builders/compilers, but I might not familiar with Arduino IDE enough. Maybe you should use the commandline Arduino-core/SDK part of the IDE only, where there’s a real commandline without details hidden from the user.
@schnoberts: Your answer and experience is very valuable for this topic, beleive it or not, I had reproduced the missing font issue with the same H7Video library. In my mentioned post I thought I made a mistake with its inclusion, but now it seems it really clashes somehow with lv_conf.h… Thanks for the very helpful tip about -H compiler flag too, and let’s hope this Arduino vs font mystery is solved for now and ever.

@schnoberts and @Hermit, I need to apologize. I got so disgusted with this problem that I moved on to other work and haven’t been watching the forums.

However, I saw your replies a little while ago and got it fixed based on what @schnoberts said.

First, I went in to command prompt and built a basic search query to look for lv_conf.h anywhere on my computer. C:\dir /p /a /s *lv_conf.h

Then I deleted all the copies of that file (some I previously backed up, and some in the recycle bin etc.) except for 3 which were in the arduino project folder, the squareline export folder and the H7Video folder.

I changed the lv_conf.h file in the H7Video folder to lv_conf.h.old and the code compiled successfully…FINALLY!!!..but it would not actually run correctly on the SBC.

This made me realize that maybe there was an issue with how the arduino ide handled sequentially loading reference files with the same name. So, I restored the lv_conf.h file name in the H7Video directory but went in to the Arduino IDE. The first four lines were:

#include “Arduino_H7_Video.h”
#include “Arduino_GigaDisplayTouch.h”

#include “lvgl.h”
#include “ui.h”

So, I simply reversed them so that lvgl and ui were loaded first, like this:

#include “lvgl.h”
#include “ui.h”

#include “Arduino_H7_Video.h”
#include “Arduino_GigaDisplayTouch.h”

That fixed the problem and the code compiles and runs great.

2 Likes

This “feature “ of how lvgl resolves the conf file caused us no end of pain before we found the issue. It’s painful!

@brys123: Glad to hear it’s been solved, thanks for sharing your explanation and solution, this is a valuable information for all users playing around in Arduino IDE and GigaShield.