I’ve recently started using WLED running on ESP32s to control my light-strip for my stream. Currently Touch Portal doesn’t have a native WLED integration, but it’s relatively easy to control the lights using a HTTP post command tied to a button, event or flow.

In this example I have a set of colour-specific presets within WLED that are triggered by Touch Portal depending on what event occurs during the stream. When you save a preset in WLED it is assigned an ID. We can use that number in the string http://your.light.ip.address/win&FX=yourIDnumber to activate the preset. In my case, my “Stream – Green” preset has an ID of 4.

WLED presets menu

So, for me, if I post http://192.168.50.169/win&FX=4, the green lighting animation is triggered. You can test to see if this works before building the logic by going to that URL on your browser (assuming they’re on the same network).

In Touch Portal, there is a set of HTTP actions. These actions can be added to a button, flow or event. We want the HTTP Post action:

From here you only need to populate the “POST Url” field, everything else can be left blank:

And that’s about it!

I use this in flows because I have a sequence of lighting effects that also include a bunch of Philips Hue bulbs. In this case the light-strip is set to green, then the bulbs flash green five times, and then the light-strip is set back to white by posting the URL that triggers my “Startup – White” preset:

I have this flow bound both to a button, so I can manually trigger it when I want, as well as an event that watches for a Twitch channel point redemption: