Aircoookie / WLED

Control WS2812B and many more types of digital RGB LEDs with an ESP8266 or ESP32 over WiFi!
https://kno.wled.ge
MIT License
14.49k stars 3.1k forks source link

Disable effects #1262

Open samster395 opened 3 years ago

samster395 commented 3 years ago

Is your feature request related to a problem? Please describe. I think it would be good to be able to individually disable each effect if you don't want some to be shown in the list

Describe the solution you'd like In the settings you could toggle each effect on or off

Describe alternatives you've considered The only other way I know of doing this is to remove them from the code

Legsmaniac commented 3 years ago

I'm confused. Surely the way to "disable" an effect is to not select it in the first place?

samster395 commented 3 years ago

I'm confused. Surely the way to "disable" an effect is to not select it in the first place?

I mean to hide it from the list, the effects list is huge (not complaining, its great), not everyone wants to scroll through that many effects to get to the one they want, so disabling them means hide them from the list.

Legsmaniac commented 3 years ago

Ah, gotcha. So you'd like a kind of "favourites" list, or a way to favourite the effects you like best. Actually, that's not a bad idea. Then again, wouldn't setting them in the Presets the ones you like best be another way round it? I understand there's a new version coming soon with far more presets to use so that might work?

mike2nl commented 3 years ago

-> So you'd like a kind of "favourites" list,

That's one of the missing things. Looking at @Aircoookie , haha. But it can be solved with the 15 places to save an effect. number 16 is the all in one.

Aircoookie commented 3 years ago

Hi! Yes, I too believe the upcoming possibility to save around 100 of your favorite effect configurations will be a good solution to the effect list being a bit long!

Also on my To Do list is to add extra controls besides Speed/Intensity to combine some effects, reducing the overall count. For example, Candle and Multi Candle are the same except that with Multi Candle, every LED flickers independently. That could be consolidated to a single effect with a Multi checkbox. Similarily, the Halloween and Christmas effects are just Running 2 with Orange/Purple and Red/Green colors hardcoded.

Joshfindit commented 3 years ago

Quick question: What's the best way to pull the effects right out of the code? I'm running warm white only, so only want a couple.

Aircoookie commented 3 years ago

@Joshfindit it's not that simple since it wasn't made for dynamically removing effects. You'd need to delete all references to the effect in FX.cpp and FX.h and modify the total effect count and the IDs of the effects you do want to keep accordingly.

What I'd recommend is setting up a preset for each effect you really like and ignoring the rest of them :) In 0.11.0 releasing this sunday, you can store a lot more presets and you can even name them to keep track of which preset contains which effect!

Since you are not the only one who wants to hide some effects entirely (it would also have further benefits, e.g. being able to hide all effects from the list that could lead to photoelepsy), I will look into that. It would be enough to hide them after all, any disabled effect would still be compiled in and accessible via the API :)

Joshfindit commented 3 years ago

@Joshfindit it's not that simple since it wasn't made for dynamically removing effects. You'd need to delete all references to the effect in FX.cpp and FX.h and modify the total effect count and the IDs of the effects you do want to keep accordingly.

I was worried it might be something like that. Thankfully I can live with just the first couple being the only ones, so I just erased all the names that follow those, and they are now unselectable from the UI and HomeAssistant.

What I'd recommend is setting up a preset for each effect you really like and ignoring the rest of them :)

That works quite well actually, even after my cheat. Thank you ☺️

In 0.11.0 releasing this sunday, you can store a lot more presets and you can even name them to keep track of which preset contains which effect!

!! 🎉!!

Since you are not the only one who wants to hide some effects entirely (it would also have further benefits, e.g. being able to hide all effects from the list that could lead to photoelepsy), I will look into that. It would be enough to hide them after all, any disabled effect would still be compiled in and accessible via the API :)

With the cheat I did above, I suspect a shortcut would to track the ID (aka array position) for each name, then selectively remove them from the names array when they are to be hidden

JensMKofoed commented 1 year ago

First a many many thanks for the wonderful works with wled. It is a massing at works very well. More and more functions are coming into wled and therefore also many more effects. I like the search function where you can filter based on flags but... If I have configured wled to only have 1D led strips, it would be great if there where a function to hide effects which are meant for 2D/3D. or a configuration page to enable/disable (hide) effects from the list in the gui

once again, thanks for a wonderful work kind regards Jens

blazoncek commented 1 year ago

@JensMKofoed 2D effects are hidden by default if you properly configured WLED for 1D (default setting) and have most recent code available.

blazoncek commented 1 year ago

Instead of hiding WLED offers quick filters in 0.14 and a search bar since 0.12. I know it is not the same as hiding but is next best thing.

CountParadox commented 9 months ago

Being able to toggle some effects as disabled would be useful in my use case,

I use home assistant as my control platform, and it's native effects selector uses the wled list, not presets.

The led on my desk for notifications, has a single pixel... So not many effects work well with it :)

I can shorten and upload the video if requested...

pollinolas commented 8 months ago

I also use home assistant to randomly switch between effects, but the API that collects the effects makes a total list without discriminating the 2D ones, which leads to the lights remaining fixed without any type of effect. Does anyone know of an option to solve this, without having to make a manual list of effects? Greetings and thank you

blazoncek commented 5 months ago

For anyone interested: https://jeffmission.com/wledcss/

Joshfindit commented 5 months ago

@blazoncek and anyone else working on this:

I think it would be great to have tags/categories like:

blazoncek commented 5 months ago

I'm afraid that may be an overkill.

Still, WLED supports effect metadata where most of the capabilities and default values are specified. It is accesible via /json/fxdata endpoint. HA or any other software may use that to show or hide certain effects depending on capabilities specified in `/json/info'.

Joshfindit commented 5 months ago

@blazoncek Sorry, I incorrectly assumed that you were the person behind https://jeffmission.com/wledcss/ and my looping you in on that was to suggest adding those as selections.