Description
Is your feature request related to a problem? Please describe.
As we now support more MCUs (namely -S2, -S3, -C3), users sometimes want to share their build environments - good!
- support the ESP32-C3-12F module from AI-Thinker and associated boards #2951
- ESP32-S2 support ? #966 (comment)
- lolin_c3_mini board support #2934
- Support for esp32-c3 #1940 (comment)
- Support for the ESP32-S3 #2735 (comment)
... and similar contributions that we find only on discord.
We cannot add each newly working board to platformio.ini, as this would make the file unreadable, slow, and also impossible to maintain over several years. Also there is sometimes very little change like just different board=
line so I would not create a new official buildenv just for that.
However it would also be sad if all the knowledge about "how I made my xyz board work with WLED" got lost over time.
Describe the solution you'd like
To improve the situation, I can imagine these options
- Add a "user board list" in our WLED knowledge base, and establish a mechanism for users to propose their custom build env: xyz for addition to that list. Downside: manual work for maintaining the list.
- Create a file like
platformio_userboards.ini
on github - people would make a PR to this file, if they want to share their successful build envs. This would also require review before merge, and we initially need to clarify what are the "interesting aspects" for new additions - like different partition table, special default pins, default usermods for onboard hardware like displays, buttons, etc). --> Kind of "best practice" or "coding style guide" for adding new build environments.
What do you think?
Describe alternatives you've considered
The alternatives would be
a/ reject most board envs because they are not having enough "differences" to existing ones, or because they introduce platform versions which are not tested with WLED in general.
b/ accept everything, and clutter up platformio.ini until it becomes unreadable.
Additional context
It might appear a minor thing, but having a well-tested platform =
is really important! Espressif is regularly breaking things with new releases, so we cannot rely on just following their latest versions without intensive testing on our side!
Thank you for your ideas for making WLED better!