I wanted a cool LED strip setup, so let's build one

Building a WLED setup

2025-01-30

Tags: tinkering, wled, ws2815

Note: You shouldn’t listen to me for electronics advice, everything I know is self-taught and googled together. I can tell you what worked for me, what didn’t go up in smoke, but that is by no means a guarantee, that anything is implemented in a way it won’t catch fire.

I’m a “hacker”, so of course I like blinky lights and I wanted to spruce up my desk setup with some nice LED lighting. And you know what I also like: infinite customizability, open hardware and software, do-it-yourself projects, rabbit holes, tinkering and a good bit of yank.

All of this is not really given in consumer-grade LED lighting you can easily by off of Amazon. Especially not the open hardware and software part of the equation. So what are our alternatives?

Enter WLED (btw, a awesome fucking domain: https://kno.wled.ge/)

WLED is an open source project that allows to control certain LED chips through a micro controller. This enables infinite customizability and control of the LED strip through anything that can speak JSON, HTTP, Home-Assistant, MQTT or whatever else.

After reading the project documentation, several reddit posts and blog articles it was clear, that a lot more was needed for this project to work than just buying a strip, plugging it in the wall and setting up the app. I’m gonna save you the trouble of finding all of that out on your self and give a list of stuff you need at least, a short explanation why you need it, and then what I want with for each component:

What you need

strip
Well, I guess you need to know why you need this.

controller
This is the brain of the operation. The thing that runs WLED and allows you to control the LED strip to your hearts content. When looking for one, you need to check what kind of power input it supports without blowing up. This will later be important, together with the LED strip power input, to choose your power supply. If the LED strip and controller do not support the same input power, then additional hardware is required with regards to level shifting, if you don’t want to power each individually.

fuse
Not necessarily required, but I would recommend it, just so your controller and LED hardware are protected against fuckery of your, possibly very cheap^^, power supply.

power supply
Obviously, blinky lights need power. It is important that your chosen power supply provides at least as much power as you LED strip is gonna draw at peak brightness, otherwise your LED’s are gonna be way dimmer than they actually could handle. I will get into this later, when I talk about my selection.

a bit off additional hardware
This includes cables or adapters, like adapting the power supply to the power inputs of the controller and strip. This comes down to your individual setup.

What I choose

Alright, let’s get started. Obviously with the LED strip, cause that is what everyone thinks about first.

The LED strip

For the LED strip it is important to know, that not every random LED strip can just be tacked onto a WLED controller and work. WLED only supports specific chip types. Thankfully it has a nice table of supported chips in the documentation, that tells us a few facts about the different kinds. 2 things are of note here:

the input voltage
It should be relatively irrelevant what you choose here, it only needs to be compatible with your controller, if you want to power both of the same power supply. This will also play a role in selecting you power supply.

are the LED’s individually addressable
some chips are only able to address LED’s in chunks of 2’s or 3’s, while others support addressing each individually.

I really want to have individually addressable LED’s, especially because I want to install this strip at my desk, where I could potentially see it up close, so resolution was important to me. This is also another factor, the table doesn’t mention, because it can’t, as it is up to every individual LED strip. The LED count per meter. It can range anywhere from tens to hundreds of LED’s per meter. As you can imagine, the denser the LED’s the “better” the LED strip will look. Here it is important to really think about your application and what makes sense. Because with more LED’s, especially on longer strips, the additional power requirements can create a lot more problems, requiring more power and also power injection at different points on the strip, as the current from only one input will not suffice for all LED’s on the strip.

Back to individually addressable LED’s: I found the WS2815 chip to fulfill that requirement, so I went with it. Initially I didn’t look at the input voltage, as I, during that time, didn’t think about voltages at all^^

So searching on aliexpress, as any good homebrew electronics project, I found this one. Sports WS2815, so individually addressable LED’s, 144 LED’s/m, so a nice resolution, even up close and a good price. I went for the 2 meter strip, as that was all I needed, and could supply with my equipment.

Talking about equipment:

The controller

For the brains, you can choose between many different implementations, or even try and build your own, but I went with the cod.m WLED controller. They seem the most well build, it is open hardware, build in Germany, and they have nice documentation, which helped me a lot with figuring out what I need. What is also really nice is the dedicated reset button, and, killer feature, works fine with 5V, 12V and 24V, without level shifters, making it suitable for all possible LED strips.

They also lead me down the path for the fuse, so here we go…

The fuse

Nothing much to say here. A fuse is nice in order to protect your controller and strip from unexpected power surges and saving a lot of hassle. Fortunately, cod.m also sells a fuse kit, which takes standard car fuses, which is convenient. Just note, it comes with a 10A fuse by default, which you might need to adjust for your setup. For example, mine draws at max 4 amps, so I should install a 5A fuse.

In order for the fuse to protect us from anything, we need power, so let’s get to the mathy part, yayy

The power supply

Alright, in order to figure out what power supply we need and how everything fits together, we need to calculate the power draw, and amperage the strip draws. The controller in theory also needs to be taken into account, but I didn’t do that and it works fine, so I think it’s negligible.

There is this really nice site, that does all that for you. You just plug in your specs and it gives you the wattage and amperage required. It even lists the recommended fuse setup. But in case you want to do it manually or confirm the calculations there, here is how it works:

Calculating the power requirements

First, you need to know what voltage your strips runs on. You can get that from the product listing, or the table from WLED I linked above. My strip, the WS2815, runs on 12 volts. Now we need the amperage. This depends, again, on your chip. I haven’t found a way to find that information other than googling around and working with assumptions. I am sure there are datasheets out there, but I didn’t find them. My chip seems to work with 15mA per LED. Because my strip uses 144 LED’s/m and is 2 meters long, I have 288 LED’s in total. At 15mA per LED thats 4.32 amps. Knowing the amps and the voltage, we can calculate the wattage.

4.32A * 12V = 51.84W

So our power supply needs to supply, with some headroom included, 60 watts with 12V at 5 amps. Again, browsing around on aliexpress, we find this . Because I didn’t want my house to burn down, because of a cheap power supply, I looked around for reviews and Meanwell seems to be reasonably well regarded. So this is what I went with.

The additional hardware and wiring

One problem still remains. If you look at the connectors of all parts, nothing fits together. The strip has different connectors than the controller, which has a different connector than the power supply. The only thing that matches is the fuse and the controller, as both come from the same shop. But as you can imagine, this part if heavily depended on what parts you shop.

To attach the led strip to my controller, luckily it sufficed to take the bare cable ends and screw them into the screw terminal of the controller. I then took some dupont wires I had lying around and connected the controller and strip to the fuse. The wiring diagram for that is included in the cod.m documentation here. Now if your strip is longer than 2 meters, the max the power supply can supply without injecting along the strip, it also includes instructions for that.

Now in order to get power from the power supply into the fuse, I bought a adapter of female barrel jack to blank wire, which I then screwed into the terminal on the fuse.

Make sure to screw all cables into the terminal pretty tight, so they don’t slip out, when you accidentally touch it. I might design a case for it, with a 3d printer which should arrive in a few days, and IF I do, I’ll update this accordingly. Hot glue might also be a option.

This is how the wiring looks in the end:

wiring of controller, fuse and strip; from the left comes to power supply, to the right goes the LED strip

WLED setup

After connecting the controller to power, it automatically boots and opens a wifi hotspot called WLED-AP, the password is wled1234. First thing you want to do it go into settings and configure the hardware. I disabled the “automatic brightness limiter”, as the LED’s were pretty dim and my power supply should be able to handle that. The I configured the right kind of LED chip and set the amounts of LED’s I have. In my case 288. You might also need to edit segement 0 on the main interface to stop at LED 288 (or whatever LED cound you have). Then I connected it to my wifi, so I can control it without having to connect to the hotspot all the time. And that was it. The rest should be pretty self explanatory. For my android device is use the “WLED native” app from f-droid.

Finished setup

desk with LED strip installed

So here is the overview of what I bought and how much it cost me:

for a total of 83.47 euro. Which is not a bad price for what we have here. A fully customizable, awesome looking, open hardware and software and only a halve janky LED setup. I think thats pretty competitive.

Honorable mentions

There is also this website, which has a really nice comparision of different chips: https://quinled.info/2020/03/12/digital-led-power-usage/