WS2801 project help please

Hi all. I want to make up some RGB pixels using WS2801 drivers and 5050 RGB LED's. I would like to use 2, maybe 3 5050 LED's on each pixel - I think the WS2801's can drive up to 150mA?

I'm confused about setting the output current. From my calculations from the formula on the datasheet, if I used a 15R resistor, then I should get a drive current of 40mA from the WS2801 - does this sound right?

Then the datasheet says

the voltage on R/G/BOUT should be set between 1 to 1.5 V

I'm not sure what that means? Would I not just connect the LED's to 5V and the WS2801 would sink the set current only?


You should be looking at driving it in constant current mode with external switches if you're going to be driving more than one LED. As for the voltage settings, I don't understand that part either. And I never bothered to experiment. But, I have a feeling is has to do with the remaining voltage after you subtract the LED's voltage drop from the supply voltage. But, I could be completely wrong here. Wouldn't be the first time.

thanks for the help, when you say external switches what do you mean? I thought the WS2801 could drive 150Ma and I'm only thinking of 3 LED's max per channel so about 60mA?

I thought that too about the voltage at the pin after being dropped but I don't see resistors in other WS2801 circuits to drop the RED, surely you would still have about 3V on the red pin with a 5V supply?

Thanks again

The WS2801 can drive up to 50mA PER CHANNEL in constant current mode. However, it can drive higher currents and multiple LEDs, but you need to move to using external switches. Look in the datasheet, scroll down to where it says constant current with external switches and constant voltage with external switches.

I see thanks! So I could just use a NPN looking at the datasheet. I wonder how these are driven 36mm Square 12V Digital RGB LED Pixels (Strand of 20) [WS2801] : ID 683 : $64.95 : Adafruit Industries, Unique & fun DIY electronics and kits I'd like to see a schematic for them.

I don't have a schematic for that specific one, but I do have one I created for 6 LEDS instead of 4. I'll post the schematic later tonight when I'm home.

Thanks! That would be good to see

Attached is the schematic for my 6x LED pixels. The board itself is made so that I can use either 3 or 6 LEDs. With 12V, you can power 3 LEDs, with 2V you can power all 6.

Very nice! Good job there!

What is the purpose of the diode D1?

So you put 12 / 24v on the VCC pin of the WS2801 and use a resistor to drop to 5v? How did you calculate the value?

Sorry for the basic questions!

Edit - just looked through the datasheet again and noticed the section on powering from higher voltages. What is the diode that you used? Thanks

You can power the WS2801 straight from the 12V or 24V supply as long as you have that diode in place. It's a standard 5.1V diode to clamp the voltage down. However, to be on the safe side, my application has both a 12 or 24V rail as well as a 5V rail. There are other components in the final product that needs a stable 5V rail, so I used a regulator to bring the voltage down.

I don't know which resistor you're referring to.

I see, thanks for explaining that!

Your 3D renders look really good, could you share how you generated them?

very cool, thanks I’ll check it out :slight_smile:


just looking at the schematic you posted a while ago, and I don’t quite understand how it is working. the 20mA current is flowing through all the LED’s then through the WS2801 right? What are the BC8488’s doing? I would have thought they would be on or off all the time with the pull up on their bases?

Thanks 8)

The WS2801 sinks, so unless the channel is doing anything, the LEDs won't light up.

I'm still a bit confused. So the WS2801 sinks approx 20mA that is flowing through the LED's, so what do the BC8488's do - drop the rest of the voltage so it doesn't end up on the WS2801 pins?