# Help creating usermod

**URL:** <https://wled.discourse.group/t/help-creating-usermod/14582>\
**Category:** Questions\
**Created:** [June 21, 2025, 4:42am UTC](https://wled.discourse.group/t/help-creating-usermod/14582 "2025-06-21T04:42:17Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![LisovR](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/lisovr/32/9647_2.png) [@LisovR](https://wled.discourse.group/u/LisovR)\
**Post date:** [June 21, 2025, 4:42am UTC](https://wled.discourse.group/t/help-creating-usermod/14582/1 "2025-06-21T04:42:17Z")

</div>

WLED version 0.15.0  
I’m trying to create my own usermod, I have two questions:

1. Why doesn’t the button in Info work for me, it doesn’t switch the variable.  
 ![00](https://global.discourse-cdn.com/free1/uploads/wled/original/2X/b/b7302811c42135e33aed53e82366c55561c81ebf.png)

```auto
      JsonArray infoArr = user.createNestedArray(FPSTR(_name));
      String uiDomString = F("<button class=\"btn btn-xs\" onclick=\"requestJson({'");
      uiDomString += FPSTR(_name);
      uiDomString += F("':{'");
      uiDomString += FPSTR(_tstBtn);
      uiDomString += F("':");
      uiDomString += tstBtn ? "false" : "true";
      uiDomString += F("}});\"><i class=\"icons ");
      uiDomString += tstBtn ? "on" : "off";
      uiDomString += F("\">&#xe08f;</i></button>");
      infoArr.add(uiDomString);

```

1. I want to use the meaning of the POWER button. I read the entire wled.h file and did not find anything or did not understand which global variable corresponds to this button.

Help me figure it out!!!

---

<div class="post-metadata">

**Author:** ![dedehai](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/dedehai/32/7265_2.png) [@dedehai](https://wled.discourse.group/u/dedehai)\
**Post date:** [June 21, 2025, 6:54am UTC](https://wled.discourse.group/t/help-creating-usermod/14582/2 "2025-06-21T06:54:07Z")

</div>

for the button, look at

> <https://github.com/wled/WLED/blob/main/usermods/audioreactive/audio_reactive.cpp>

your json string seems wrong.

power button does various things, depending on settings. look at deep-sleep usermod where I used it.

---

<div class="post-metadata">

**Author:** ![LisovR](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/lisovr/32/9647_2.png) [@LisovR](https://wled.discourse.group/u/LisovR)\
**Post date:** [June 22, 2025, 12:08am UTC](https://wled.discourse.group/t/help-creating-usermod/14582/3 "2025-06-22T00:08:57Z")

</div>

Thank you! I figured out the first question. I didn’t write anything in JsonState. This is the key point.  
I’ll start studying the second question.

---

<div class="post-metadata">

**Author:** ![LisovR](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/lisovr/32/9647_2.png) [@LisovR](https://wled.discourse.group/u/LisovR)\
**Post date:** [June 22, 2025, 1:08am UTC](https://wled.discourse.group/t/help-creating-usermod/14582/4 "2025-06-22T01:08:49Z")

</div>

Thank you very much! I found the variable “offMode” that I needed.  
Now I think I can do what I have in mind.

---

<div class="post-metadata">

**Author:** ![LisovR](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/lisovr/32/9647_2.png) [@LisovR](https://wled.discourse.group/u/LisovR)\
**Post date:** [June 23, 2025, 7:03pm UTC](https://wled.discourse.group/t/help-creating-usermod/14582/5 "2025-06-23T19:03:34Z")

</div>

Is it possible to add such a regulator to JsonInfo?  
 ![1](https://global.discourse-cdn.com/free1/uploads/wled/original/2X/e/e1726996544f3fd7cfcac19eacf22ef832fa6a8f.jpeg)

---

<div class="post-metadata">

**Author:** ![dedehai](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/dedehai/32/7265_2.png) [@dedehai](https://wled.discourse.group/u/dedehai)\
**Post date:** [June 24, 2025, 5:28am UTC](https://wled.discourse.group/t/help-creating-usermod/14582/6 "2025-06-24T05:28:52Z")

</div>

yes, see audoreactive usermod

---

<div class="post-metadata">

**Author:** ![LisovR](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/lisovr/32/9647_2.png) [@LisovR](https://wled.discourse.group/u/LisovR)\
**Post date:** [June 24, 2025, 9:41am UTC](https://wled.discourse.group/t/help-creating-usermod/14582/7 "2025-06-24T09:41:54Z")

</div>

No, I used wemos d1 mini until today. Today I will buy ESP32 and will figure out audoreactive usermod.

---

<div class="post-metadata">

**Author:** ![LisovR](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/lisovr/32/9647_2.png) [@LisovR](https://wled.discourse.group/u/LisovR)\
**Post date:** [June 24, 2025, 9:42am UTC](https://wled.discourse.group/t/help-creating-usermod/14582/8 "2025-06-24T09:42:23Z")

</div>

Thank you

---

<div class="post-metadata">

**Author:** ![LisovR](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/lisovr/32/9647_2.png) [@LisovR](https://wled.discourse.group/u/LisovR)\
**Post date:** [August 22, 2025, 7:13pm UTC](https://wled.discourse.group/t/help-creating-usermod/14582/9 "2025-08-22T19:13:58Z")

</div>

Can you tell me if I can write IR Remote in JSON to change the variable in usermod?

---

<div class="post-metadata">

**Author:** ![LisovR](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/lisovr/32/9647_2.png) [@LisovR](https://wled.discourse.group/u/LisovR)\
**Post date:** [August 22, 2025, 10:58pm UTC](https://wled.discourse.group/t/help-creating-usermod/14582/10 "2025-08-22T22:58:12Z")

</div>

figured it out

“cmd”: {Usermod:{variable:false}}

---

<div class="post-metadata">

**Author:** ![LisovR](https://yyz2.discourse-cdn.com/free1/user_avatar/wled.discourse.group/lisovr/32/9647_2.png) [@LisovR](https://wled.discourse.group/u/LisovR)\
**Post date:** [August 23, 2025, 3:59pm UTC](https://wled.discourse.group/t/help-creating-usermod/14582/11 "2025-08-23T15:59:50Z")

</div>

I can’t make the variable switch like {“on”:“t”}
