# Using pushbutton to change presets

**URL:** <https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645>\
**Category:** Uncategorized\
**Created:** [September 27, 2021, 4:33am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645 "2021-09-27T04:33:26Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![VeryLucky](https://avatars.discourse-cdn.com/v4/letter/v/bbe5ce/32.png) [@VeryLucky](https://wled.discourse.group/u/VeryLucky)\
**Post date:** [September 27, 2021, 4:33am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/1 "2021-09-27T04:33:26Z")

</div>

Hi,  
Can some one give me an idea of how to write instructions so that my D1 Mini push-button on D3 can force, **while pressed** (pulling it to ground) forces WLED to go to preset 2. once button released WLED goes back to preset 1.  
Thank you for any help and teachings.  
Martin

---

<div class="post-metadata">

**Author:** ![tonyno](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/tonyno/32/242_2.png) [@tonyno](https://wled.discourse.group/u/tonyno)\
**Post date:** [September 27, 2021, 10:25pm UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/2 "2021-09-27T22:25:14Z")

</div>

You would need to set up your button as a switch in LED Preferences, then define “off” and “on” presets in Time & Macros.

---

<div class="post-metadata">

**Author:** ![VeryLucky](https://avatars.discourse-cdn.com/v4/letter/v/bbe5ce/32.png) [@VeryLucky](https://wled.discourse.group/u/VeryLucky)\
**Post date:** [September 27, 2021, 10:49pm UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/3 "2021-09-27T22:49:06Z")

</div>

Hi, thank you for your help.  
I have assigned button 0=13  
I have read and re-read all the commands and few samples that work with push button switches,  
I know that presets under the preset name a little window open, right? And here’s where I should put the commands but I cannot find a way to do this:  
1.-D1Mini boots to preset one (done);  
2.- when push button is pressed, D1Mini jumps from preset one to preset 2 and stay there until button is released.  
That’s it!  
I’m learning as much as I can an I humbly realize that for you guys, the ones with more knowledge and experience this is not much of a challenge for for now for me it is…  
Please help me a little more.  
Martin

---

<div class="post-metadata">

**Author:** ![VeryLucky](https://avatars.discourse-cdn.com/v4/letter/v/bbe5ce/32.png) [@VeryLucky](https://wled.discourse.group/u/VeryLucky)\
**Post date:** [September 27, 2021, 11:03pm UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/4 "2021-09-27T23:03:38Z")

</div>

Sorry forgot this;  
When button is released D1 Mini goes back to preset one preferable after 30 second delay

---

<div class="post-metadata">

**Author:** ![Artacus](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/artacus/32/1258_2.png) [@Artacus](https://wled.discourse.group/u/Artacus)\
**Post date:** [September 28, 2021, 10:13pm UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/5 "2021-09-28T22:13:38Z")

</div>

I’m not sure about staying at 2 while the button is being pressed. But for long press you could start a playlist that plays 2 for 30 seconds then goes back to 1.

```auto
{"playlist": {"ps": [2,1], "dur": 300, "transition": 7, "repeat": 1} 

```

---

<div class="post-metadata">

**Author:** ![VeryLucky](https://avatars.discourse-cdn.com/v4/letter/v/bbe5ce/32.png) [@VeryLucky](https://wled.discourse.group/u/VeryLucky)\
**Post date:** [September 29, 2021, 7:07pm UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/6 "2021-09-29T19:07:44Z")

</div>

Awesome!  
can I add this code directly on the small window on the presets? right below the name.

---

<div class="post-metadata">

**Author:** ![Artacus](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/artacus/32/1258_2.png) [@Artacus](https://wled.discourse.group/u/Artacus)\
**Post date:** [September 29, 2021, 7:10pm UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/7 "2021-09-29T19:10:04Z")

</div>

Yep. In the input that appears when you unclick current state.

---

<div class="post-metadata">

**Author:** ![VeryLucky](https://avatars.discourse-cdn.com/v4/letter/v/bbe5ce/32.png) [@VeryLucky](https://wled.discourse.group/u/VeryLucky)\
**Post date:** [October 3, 2021, 12:30am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/8 "2021-10-03T00:30:27Z")

</div>

Thank you. I’m going to do it tonight.

---

<div class="post-metadata">

**Author:** ![VeryLucky](https://avatars.discourse-cdn.com/v4/letter/v/bbe5ce/32.png) [@VeryLucky](https://wled.discourse.group/u/VeryLucky)\
**Post date:** [October 3, 2021, 1:34am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/9 "2021-10-03T01:34:46Z")

</div>

Hi,  
I tried {“playlist”: {“ps”: [2,1], “dur”: 300, “transition”: 7, “repeat”: 1}  
but there was a report of SYNTAX ERROR so I changed it to this:  
{“playlist”: {“ps”: [2,1], “dur”: 300, “transition”: 7, “repeat”: 1}}  
but didnt work either.  
what else can I do?

---

<div class="post-metadata">

**Author:** ![VeryLucky](https://avatars.discourse-cdn.com/v4/letter/v/bbe5ce/32.png) [@VeryLucky](https://wled.discourse.group/u/VeryLucky)\
**Post date:** [October 3, 2021, 2:01am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/10 "2021-10-03T02:01:56Z")

</div>

{  
playlist: {  
ps: [26, 20, 18, 20],  
dur: [30, 20, 10, 50]|  
transition: 0,  
repeat: 10,  
end: 21  
}  
}  
same SYNTAX ERROR  
what can be wrong?  
{“on”:true,“bri”:128,“transition”:7,“mainseg”:0,“seg”:[{“id”:0,“start”:0,“stop”:300,“grp”:1,“spc”:0,“of”:0,“on”:true,“bri”:255,“col”:[[255,194,203],[0,0,0],[0,0,0]],“fx”:0,“sx”:51,“ix”:0,“pal”:0,“sel”:true,“rev”:false,“mi”:false},{“stop”:0},{“stop”:0},{“stop”:0},{“stop”:0},{“stop”:0},{“stop”:0},{“stop”:0},{“stop”:0},{“stop”:0},{“stop”:0},{“stop”:0},{“stop”:0},{“stop”:0},{“stop”:0},{“stop”:0}]}  
{   
“playlist”: {   
“ps”: [26, 20, 18, 20],   
“dur”: [30, 20, 10, 50],   
“transition”: 0,   
“repeat”: 10,   
“end”: 21   
}   
}

---

<div class="post-metadata">

**Author:** ![Artacus](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/artacus/32/1258_2.png) [@Artacus](https://wled.discourse.group/u/Artacus)\
**Post date:** [October 3, 2021, 3:03am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/11 "2021-10-03T03:03:58Z")

</div>

You need to quote your attribute names. And do you have a preset 21?

Oh and what version are you running?

---

<div class="post-metadata">

**Author:** ![VeryLucky](https://avatars.discourse-cdn.com/v4/letter/v/bbe5ce/32.png) [@VeryLucky](https://wled.discourse.group/u/VeryLucky)\
**Post date:** [October 3, 2021, 3:53am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/12 "2021-10-03T03:53:40Z")

</div>

version v0.13.0-b3 “Toki”  
sorry for the confusion. the code i Added was something I found on WLED and I tried it but didn’t work either. it had the same SYNTAX ERROR as the code you gave me.  
{“playlist”: {“ps”: [2,1], “dur”: 300, “transition”: 7, “repeat”: 1}}  
What syntax error can it be?

---

<div class="post-metadata">

**Author:** ![VeryLucky](https://avatars.discourse-cdn.com/v4/letter/v/bbe5ce/32.png) [@VeryLucky](https://wled.discourse.group/u/VeryLucky)\
**Post date:** [October 3, 2021, 4:24am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/13 "2021-10-03T04:24:31Z")

</div>

Ahhhhhh…  
I entered your code all by itself on the API screen and it accepted it BUT, is not doing switching between presets. It switches modes I think. I think is only switching through colors.  
where on the preset do I specify the button number? I assigned 4 and 5

---

<div class="post-metadata">

**Author:** ![Artacus](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/artacus/32/1258_2.png) [@Artacus](https://wled.discourse.group/u/Artacus)\
**Post date:** [October 3, 2021, 6:54am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/14 "2021-10-03T06:54:55Z")

</div>

Now that you have the playlist preset, note it’s preset id. Then go over to Time and Macros and set that id for your button’s short or long press.

---

<div class="post-metadata">

**Author:** ![VeryLucky](https://avatars.discourse-cdn.com/v4/letter/v/bbe5ce/32.png) [@VeryLucky](https://wled.discourse.group/u/VeryLucky)\
**Post date:** [October 4, 2021, 1:19am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/15 "2021-10-04T01:19:38Z")

</div>

It works!!!  
THANK YOU!!!  
Now I’m dealing with the output from my motion detector and light detector but that’s not so hard.  
Thank you for helping me.

---

<div class="post-metadata">

**Author:** ![Artacus](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/artacus/32/1258_2.png) [@Artacus](https://wled.discourse.group/u/Artacus)\
**Post date:** [October 4, 2021, 1:24am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/16 "2021-10-04T01:24:29Z")

</div>

You say that like you’re surprised. Which surprises me because of your name.

---

<div class="post-metadata">

**Author:** ![VeryLucky](https://avatars.discourse-cdn.com/v4/letter/v/bbe5ce/32.png) [@VeryLucky](https://wled.discourse.group/u/VeryLucky)\
**Post date:** [October 4, 2021, 1:38am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/17 "2021-10-04T01:38:52Z")

</div>

Hahaha… is not surprise, is reaction to a good accomplishment and thankfulness for your help

---

<div class="post-metadata">

**Author:** ![VeryLucky](https://avatars.discourse-cdn.com/v4/letter/v/bbe5ce/32.png) [@VeryLucky](https://wled.discourse.group/u/VeryLucky)\
**Post date:** [October 7, 2021, 5:28am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/18 "2021-10-07T05:28:20Z")

</div>

I connected the new IR and is working great!!  
Now I want to add a photo sensor to deactivate (turn off) the light strip during the day. I thought on using a relay or mosfet to turn off power to the strip but I want to be able to manually with the app turn it on during the day. I been trilingual to use this to turn off the strip:

---

<div class="post-metadata">

**Author:** ![divsys](https://avatars.discourse-cdn.com/v4/letter/d/a3d4f5/32.png) [@divsys](https://wled.discourse.group/u/divsys)\
**Post date:** [October 7, 2021, 5:35am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/19 "2021-10-07T05:35:24Z")

</div>

While you may be able to use a photosensor to do what you want, the builtin Sunrise/Sunset Macro options (with a time offset) may get the effect you want more easily.

---

<div class="post-metadata">

**Author:** ![VeryLucky](https://avatars.discourse-cdn.com/v4/letter/v/bbe5ce/32.png) [@VeryLucky](https://wled.discourse.group/u/VeryLucky)\
**Post date:** [October 7, 2021, 5:36am UTC](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645/20 "2021-10-07T05:36:01Z")

</div>

{“playlist”: {“ps”: 3, “dur”: 300, “transition”: 7}}  
Ps 3 is the preset that deals with the button 0 that makes the preset switch from one to another momentarily  
I tried several times with some changes but no luck. The button has been assigned properly…  
Thanks for reading my msg

[Next page](https://wled.discourse.group/t/using-pushbutton-to-change-presets/3645.md?page=2)
