[Plugin Idea] Communicate with WLED devices for RGB Lightning

Idea for a plugin to control remote WLED devices for RGB Lightning as they can work "in sync" with each other.

Support for the project: https://github.com/Aircoookie/WLED

Got this as a feature request on my plugin here: https://github.com/cp2004/OctoPrint-WS281x_LED_Status/issues/10

I looked into it, (and unless you also requested on my repo) that's 3 requests I've seen, however I don't own any ESP hardware etc. to develop against. But it would definitely be possible.

It's on my list, but if anyone wanted to create this, then feel free to use my plugin as a base, it would be possible to replace the EffectRunner class to send requests to WLED instead of a strip connected straight to the Pi.

Thanks for the response! Unfortunately it's out of my wheelhouse.

Yeah, looks like that project supports MQTT and web request actions for control. Wouldn't be too difficult with either of those I don't think. I have done both for Tasmota flashed devices.

You could also use OctoPrint-Webhooks

I might have to get an ESP board now, and become ultimate LED plugin developer :wink:

They're fun to play with, and super cheap. I've done a couple of different ones, nodemcu, sonoff relays, wemo relay/plugs and an esp32cam board.

Edit: The nodemcu was controlling my blinds opening/closing during sunrise/sunset by controlling a servo motor attached to the inside rod replacing the twisting pole thingy.

I’ve been playing with WLED for about 6 months now and redid the lighting under my kitchen cabinets with them, as well as future plans for my entire outdoor holiday lighting using it.

It was only natural that I wanted to find an easy way to light up my Ender 3 Pro with WLED controlled lights. :slight_smile:

The API call to WLED can be done easily in the events part of the octoprint configuration file, but having a plugin to do it would amazing. The web hooks plugin looks like it would work but I haven’t had a chance to tinker around with it..and it doesn’t expose all the possible events you can use for WLED calls. If anyone is good with writing Octoprint plugins, I’d be happy to lend my (limited) experience with WLEDs to helping figure something out. I’m pretty comfortable with the WLED side of it, just not the Octoprint plugin coding side.

1 Like

I think @Charlie_Powell was planning on incorporating WLED into his ws281x plugin.

1 Like

@Charlie_Powell if you need a board for Dev on this I would happily send you a couple preloaded with wled. I would love to see this integrated!!!!! Lmk if I can be of any help sending boards to you. I use d1 mini (node mcu mini).

1 Like

Ah, don't worry about it - I have 3 of them, I started writing the WLED plugin already at the end of 2020. Got a lot of things to do at the moment, but I'm hoping to get it out in the not-so-distant future. Thanks for the offer though, appreciated!

1 Like

I have tested it and it is working. I know Charlie just wants to put in all the bells and whistles that he can prior to release. I personally would love to see panel support with scrolling text, but seems WLED is tricky to be able to do that without external software like jinx!.

Excellent idea!

I've built a sand table that I operate through Octoprint.
It's basically a 3D printer with no Z axis, no extruder and no bed/nozzle heating.
Around the perimeter I have 146 WS2801 LED's controlled by a Wemos D1 Mini with WLED.

My wet dream is to be able to control the lights with g-code embedded in the pattern file, and not like today, totally separate from the pattern generation.

The most compact solution would be the WLED application as a plugin to Octoprint with the LED's directly connected to the Pi, but I can see the development effort to do that.
The next best thing would be the Pi taking g-code commands, talking to the ESP WLED API.

I found this: WLED API explained, that explains that API on the level of a 5 year old. Even though I'm ten times older it suits me perfectly.

I don't know where to go next.
Happy to contribute, but not sure with what.

I was commissioned to create a plugin for one of those style printers to be able to queue up a set of files and continually print them over and over.

I think there's plugins that allows you to set up file queues, but perhaps not indefinitely.
A continuous loop thing would absolutely be a good thing.
That is a function that has merit in a public setting but maybe less so in someones home.

That was the exact purpose. It was in an office space's reception area I think and has "black out" hours in which the machine doesn't run and such.

There is a plugin that will allow queues and continuous printing. It has an area for sending start and finish commands that are supposed to be for pushing prints off. I use it to home and do wipes on the sand table. Found this thread while looking for a wled plugin.
Since it supports mqtt, it's possible to use the enclosure plugin and make custom mcode triggers to send a command using the mqtt plugin to wled. I haven't done it yet but, I know it's possible. I use it with other mqtt things already.
Then find a good way to add to the gcode itself for position and effects.

I still haven't found a way to view the gcode files in octoprint for grbl.