Lets go 2 Dimensional

Hi Aircoookie
First off, I found WLED and its community and it’s like I’m in Aladin’s Cave!
I just love what you have done here.

One area I’m interested in at the moment is arranging the leds as a matrix. Isn’t it about time we added some examples to leverage matrices or has there been a conscious decision to avoid this.

FastLED touches on this with their XYMatrix and I’ve leveraged their ideas to create say a waving flag.
Does WLED have space for ideas like this?

Apologies in advance if I have simply overlooked any Matrix examples

1 Like

Hi!

There are no matrix effects yet - adding some is planned though!
After WLED has a better settings and preset managing system I hope I will be able to introduce support for XY coords -> pixel index translation (and associated settings), which will make it possible to implement nice matrix effects :slight_smile:

3 Likes

Great news
More than happy to throw my hat in the ring when the time comes
:slight_smile:

1 Like

Great !
Waiting for it :slight_smile: :stuck_out_tongue_winking_eye:

It would also be interesting to support more advanced geometric mappings besides ordinary (Cartesian) XY matrices. Polar coordinates would be particularly useful, to support layouts with concentric rings (angle + radius) or cylinders/spheres/cones. (2D wrapped surface, angle + height) And, of course, effects for XY or polar coordinate systems can be easily mapped onto each other.

I have written a number of (non-WLED) custom effects that use polar coordinates for Christmas tree lights. This allows, for example, vertical bands of color that are animated to move around the tree (or, with off-sets, a candy-cane / barber-pole effect) I’d love to port these to WLED to take advantage of the excellent Web UI and well-integrated components.

I suppose the easiest implementation would be to allow creation of a group of segments and map them onto coordinate systems which are then used by effects. (ex. An 8x16 matrix panel (or cylinder) would consist of 8 segments of 16 LEDs.)

More inspiration: Here’s a project that uses (true 3D) cylindrical coordinates, allowing for even cooler effects than what I’ve done. (However, it’s all pre-calculated for a fixed permanent layout.)


The author also has some neat 2D light artwork based on Fibonacci-number-based layouts. (Supporting these would require custom mapping support from physical to XY/polar coordinates.)
1 Like

WLED Soundreactive fork has some early 2D pattern support, with more planned:

The work so far has been done by @apleschu who is now busy with other things, and I’m starting to contribute though so far all I’ve written is some documentation.

My background is driving HUB75 matrix panels (I’m the author of SmartMatrix Library for Teensy and ESP32), but I’m also interested in adding support for more advanced geometric mappings.

Here’s a demo of WLED Soundreactive driving a matrix (using an APA102 to HUB75 adapter board I designed):

Please post in this thread if you have a 2D project in mind and I can try to help out with 2D support. Maybe if there’s enough interest we can add a 2D channel to Discord

2 Likes

There’s now a 2d-3d-mapping channel on the WLED Discord, check it out if you want to see the latest discussion on implementing 2D/3D support into WLED:

Hi! Is there any update on this?

Check the discord. I have animated GIFs and 2D patterns playing on a 64x64 pixel matrix. The code is still a work in progress and you’ll have to compile my branch, but it’s functional. The Soundreactive fork has made some improvements on its 2D support, adding more patterns and support for more types of matrices.

Would you be able to post a link to the Discord? The link above is expired/invalid

The discord is also linked from the main WLED repo. There’s only one 2D channel on there so it’s easy to find once you’re in