I see there are no replies to this question after 18 days!
I recently bought some LilyGo T-QT boards and also had a rough time getting things to work after upgrades...
The procedure laid out in the LilyGo GitHub site requires overwriting some libs in the Arduino folder, and contains the following "Tip":-
"iii. When opening the Arduino IDE, it prompts whether to upgrade the library, please choose not to upgrade, otherwise it will overwrite the configuration of the <TFT_eSPI> display"
Something is clearly wrong here, if the LilyGo devs saw fit to 'hack' the standard Arduino libs in order to make their boards work... Is this because they were simply too lazy to compile their own libs and integrate them in a proper manner into the Arduino architecture??
Or is it perhaps because (heaven forbid!) the Arduino devs are actively engaged in constantly moving the goalposts by issuing 'standard' lib upgrades that improve the functionality of their own boards, while at the same time crippling the boards of their competitors??
The reason this dark thought enters my mind, is because even if LilyGo have been lazy in their Arduino integration, I can't understand why the Arduino folks wouldn't reach out to them with clear instructions on how to do it properly - or even do it for them! This hacking of libs, and upgrades crippling boards is really bad optics for both the Arduino name, which prides itself on being a truly open-source platform... and the independent board manufacturers, who have to warn users against upgrading!!
Can anyone from the Arduino dev team put my mind at ease with info as to what's really happening here?
I can't understand why LilyGo would not do it right without expecting free help from Arduino... The cost and expectations should be on them, not on Arduino.
There are zillions of wannabe makers in the arduino ecosystem (They sell competing boards leveraging an open source ecosystem...). I don't see how Arduino as a company could/should support them all for free...
if you by a LilyGo product, you don't buy an Arduino product... I don't see the optics here... the blame is clearly on LilyGo. if they have a bad product, just don't buy from them....
If Arduino had to 'reach out' to all the third party companies that make products that use the Arduino environement every time they made a change, then what would happen to future developments or enhancements ?
Is it also not Espressif that produce and support the popular ESP32 core for the Arduino IDE ?
The LilyGo products appear to be very widespread and popular, and if they are 'breaking' the Arduino architecture by 'hacking' standard libs, I would imagine that both the 'corporate structure' and the 'unpaid volunteers' would want to rectify this.. Even if its perfectly clear that its not their 'fault' or 'responsibility', I can't believe they would be happy with every Arduino user that buys a 'non-Arduino-approved' board being forced to stop upgrading!! - They should at the very least issue a public-directive condemning the actions of manufacturers that don't integrate their boards properly, and maybe request the volunteer-community to rectify this?? I'm quite sure there are plenty of volunteers out there quite capable of producing 'proper' libs that can easily be integrated into the 'official' release, and not be 'broken' by upgrades!
If the Arduino architecture were a closed system, licensed only for use with official Arduino boards, I would understand their actions and agree fully with your responses... but its not! - It prides itself on being capable of being used with boards from ANY manufacturer! They reap enormous benefit from the vast army of volunteer developers creating open-source libs for ESP32 devices on Arduino - using those cheap Chinese-manufactured boards - long before Arduino ever had a single 'official' ESP32 device of their own! So its a bit disingenuous of them to take the attitude that its now nothing to do with them!!!
Yes. You need to contact LilyGo and ask them to fix it.
To be fair I think it is just incompetence on the part of LilyGo.
No, and that is a ridiculous suggestion that has no merit.
If third parties screw up, it's nothing to do with Arduino. Since the software is open source, third parties are free to screw it up however they like. Some have even forked the whole Arduino IDE and replaced it with support for their own brand of board.
The Arduino company has nothing to win in a flame war with third parties. Its resources are better used making better products that people will buy when they are tired of badly engineered knock offs (actually usually not so bad on the hardware side but not delivering on the software side).
I think the community knows when a product sucks and would just not recommend it to beginners.
If you know what you are doing, you just cope with the bad libraries or environment and deal with it.. and possibly suggest a GitHub issue...
For example I like M5Stack products as they look like a finished product but their libraries are not great. I submitted recently an issue and it seems they picked it up pretty quickly although it's not on a release branch yet.
You get what you pay for basically... and in that world we don't pay a lot... (free IDE, free compilers, free libraries, cheap hardware...) so you can't expect pro support level...
I think you may be referring to this page (or similar, LilyGo have 161 repositories, I didn't search through every one) :
What it appears LilyGo have done is:
Copy the original library into their repo.
This is the wrong way to fork a repo.
Modify the library for their board, but leave the library.json pointing to the original library repo
This is the wrong way to modify a library
So naturally, Arduino IDE looks at the original repo and sees a new version, and invites the user to update. But because LilyGo have totally hacked up the library mods, their mods will get overwritten. The IDE is working correctly here.
LilyGo have screwed up badly here. The library system is not rocket science, it is actually quite simple. Instead of making things simple and painless for their users, they have made an ugly hack. There is only one party at fault here.
Actually Santa left me a couple of LilyGo boards, I have yet to install the software. I won't be installing anything until I have fixed their mess.
Thank you Bob! This is precisely the info I hoped would come out of this thread.
Allow me first to apologize unreservedly for my 'dark thoughts' regarding Arduino's upgrade strategy. They only came about because of the lack of replies to the original poster's question that I replied to.. (and it did appear to do the trick! )
I think we all need to understand that before we flame 'Arduino' or 'LilyGo' or 'Cheap Chinese Boards', we must consider that they are ALL dependent upon the dedicated work of folk such as yourself who have a deep knowledge of the architecture of the Arduino system and are prepared to spend your valuable time to keep it working! I trust you will be able to get in touch with whoever 'did it wrong', via their GitHub site, and get them to fix all instances of this problem!
btw. the GitHub site for my T-QT boards was: https://github.com/Xinyuan-LilyGO/T-QT
doubtless using the same libs and procedure as the T-Display boards!