Posts tagged #WLED

1 post

PostedJune 20th, 2021#Matrix#WLED

That big space above your kitchen cabinets... what do you have there? Plants? Dust? Some comically big letters that spell something like "EAT?" It's probably dust. In every place I've lived, I've never known what to do with that huge blank canvas. I couldn't just leave it like that...

A few months prior, I made a small LED matrix for my desk. This is it running my implementation of Conway's Game of Life, written in Python (for those that care, of which I am one).

At first I decided to write my own software for the matrix and run it on a Raspberry Pi, but eventually swapped it out for WLED on an ESP-32. The Raspberry Pi was overkill for this and I could never hope to match the number of scenes and complexity that WLED offers.

I started doing some research into making a larger version that would fit in the aforementioned space. Taking into account the cell density and power requirements, I eventually settled on a 39x10 cell matrix with power injection at various points. I used several strips of WS2812B string lights to complete the matrix. Here is a rough list of components I used to build it:

  • ESP-32
  • WS2812B LED Strips x 4
  • Meanwell 18A 5V Power Supply
  • 3-conductor wire
  • Foam Core Board
  • Several lengths of of 3/4" x 6" board
  • A ton of white fabric (velvet I think?) for the diffuser

I built the frame out of the lengths of board that fit the interior shape of the space above the cabinets. Due to a slanted roof at one end, this was non-trivial for an amateur woodworker... I then lined the back of the frame with foam core board to both give it structure and to act as a base to mount the LEDs. I also used foam core board to create the large grid of cells by making dividers with slits and interlocking them together. Below is how the finished structure looks without the diffuser installed.

The inside of the matrix

The wiring took quite a while as it included not only soldering connections but also laying the LEDs out in the correct places and hot gluing them down. It took several afternoons of work to finish. Here is the finished product before and after installing the diffuser. This was a Pride Clock scene that I programmed to show the time and slowly animate the background through a rainbow of colors.

Pride Clock Scene

Pride Clock Scene

Pride Clock Scene

And here is version one finally up on the wall with the fabric diffuser.

Pride Clock Scene

While I think it looks pretty good in the image above, I was not particularly satisfied with version one. I had three major problems with the first implementation.

The first problem is the gap on the right. Cutting and assembling the foam core board the way I did was not particularly accurate. I wound up with a gap on the right. I eventually just removed the diffuser that was creating the black strip and let that last column of cells be slightly wider. It looks better now that it blends in. I don't even notice it anymore.

The second issue related to tightening the fabric. I couldn't get it quite tight enough to eliminate all of the ripples in the fabric and also not put too much stress on the frame.

The third issue was something that completely passed me by until I was cooking on my birthday. My wife and I typically cook Steak au Poivre on our respective birthdays. Its one of our favorite meals. This particular recipe calls for you to flambé the brandy that you add to the cream. The first time I did it and watched the flames climb into the air and touch the fabric, I nearly had a panic attack. Luckily, it didn't catch fire...

I eventually landed on using diffusers from drop ceiling light fixtures. You can get these for around $10 a piece at your local hardware store and they can be cut to size. I bought several of them and used some quarter-round to secure them in place, almost like a frame.

This is the final result. Here is the matrix displaying WLED's implementation of Conway's Game of Life.

Any scene with a black background like the one above makes the ghosting caused by the diffuser not being tight against the grid pretty obvious. That would be a ton of work to completely fix and honestly at this point I think it's and issue I can live with. I've reached Good Enough. I just tell people I forgot to turn off anti-aliasing...

Jokes aside, more often than not what I want is something that has calming colors and isn't too distracting. The scene below is what I typically use for that situation.

And finally, here is an assortment of WLED presets being shuffled through. I have a scene that is meant as a demo mode in case someone asks what else it's capable of. It'll cycle through several scenes to stretch it's legs.

It's been a great centerpiece for our house and always gets comments when we have new guests over. Being able to color coordinate it for the holidays or display custom scrolling text for someone's birthday has been a fun way to set our house apart. Best of all, because the diffusers are frosted white, when the matrix is off it just looks like another boring white wall.

    James Miller