I am wondering if it would be possible to have more than 10 custom user color palettes? I love how versatile this feature is for creating pleasing ambient lighting effects. I have created a number of presets so I can change my lighting based on my mood, the weather, the season etc, but of course having a limit of 10 means I run out quite quickly.
Running 0.15.1 on GLEDOPTO ESP32 WLED LED Controller
Thanks dedehai! Unfortunatly, coding is not in my skillset right now. I was wondering if it was perhaps a hardware limitation that meant that there are only 10. The palettes feature is very powerful and flexible IMHO, and it would be wonderful to see it expanded on.
I already thought about writing an import feature to be able to use “extended” palettes but found its too complex and may overwhelm users with way too many palettes. See pj for example (there are hundreds from other authors). I did already extract all palettes that are free for use and discared the ones with restrictions or which are too simple or too complex for WLED.
Also extending to more than 10 custom slots may not currently be possible as the total palette slots is limited to 255 and that cannot be easily extended.
Yeh I understand about the complexity vs usability challenge. Also, never-ending features that only 3 people use!
I love the Peggy Jentoft set of palettes.
I counted 81 palettes, including the templates. But yes, perhaps there is some limitation somewhere that causes it to be the way it is.
In any case, I will make the best of what is possible currently. It is such an amazing software / hardware combination. I am using 5V SK6812 RGBW Led Strips, and the versatility and results are outstanding.
my first contribution to wled was the random “harmonic” palette generator (based on harmonic color theory) and it still amazes me how nice those generated palettes usually look and I wish there was a button to store the current random palette into a custom slot instead of them vanishing forever
I briefly checked the code and apart from additional RAM usage there is no reason to restrict custom palettes to 10, it could be extended to 100 but that would eat up a lot of RAM which is problmatic. Maybe there is a better way of handling it. I will think about it.
With vectors (unknown to me at the time I wrote custom palettes) it is up to the user to decide when he has enough (sans existing ~70 palettes). However, adding safeguards to prevent OOM problems will add to the code and memory requirements.
the custom palettes already are vectors (?). I was thinking more like reading palettes directly from the json file on demand but it may be too slow, leading to perceivable lag when changing presets, especially in playlists. But you are right, on all ESPs except ESP8266 and ESP32 WROOM there would be more than enough RAM/PSRAM to lift the restriction.
that and also in Segment::loadPalette(). Maybe we should just remove the restriction or increase it to 50 and add a warning about the RAM shortage when using more than 10.
Thanks for looking into this folks, much appreciated! In case there does still need to be a hard limit for some reason, for my current usage, 32 or even 16 custom slots would still be a great update. Cheers!
Thanks blazoncek! Is there somewhere on Github I can follow this change? I tried looking for it but couldn’t find it in changelog / issues / PRs. Sorry I’m noob