It is that time again! SparkFun Electronics will be closed Friday, January 13th for our annual inventory day. Please keep in mind that any orders placed after 2PM (Mountain Time) on Thursday, January 12th will not ship or be prepared for local pickup until we open for normal operations on Monday, January 16th. In addition, tours will resume on Friday, January 20th. Thank you for your patience!

Retired Product

This product has been retired from our catalog and is no longer for sale. This page is made available for those looking for datasheets and the simply curious.

Creative Commons images are CC BY-NC-SA 3.0

Description: You may recognize the WS2801from our addressable RGB LED strips. These 3-channel constant current LED drivers are great for controlling chains of RGB LEDs. The IC is controlled by a 2-wire serial control scheme that allows multiple ICs to be chained together.

Use a handful of these ICs in conjunction with some RGB LEDs to make color displays, or with regular LEDs for a monochrome display three times the size. Or just the WS2801 to free up PWM pins on your microntroller by controlling multiple LEDs with two pins.


  • 2-wire control scheme reduces system cost
  • Built-in PWM dimming scheme for each channel
  • PWM free-run capability
  • Power supply voltage 3.3-5.5v
  • Supports both constant current and constant voltage drive modes
  • Wide constant current range from 5-150mA


Recommended Products

Customer Comments

  • Glad you have this as a separate product now :) though a more descriptive name might help others find it

  • I wrote some code for the propeller to get this guy working. It only supports 1 WS2801 right now but I am working on one that will work with a long chain of them. This code is mainly for using the WS2801 to control a set of mosfets which is good when you don’t have allot of CPU time to dedicate to controlling PWM.
    youtube video about the chip: http://www.youtube.com/watch?v=EugcTOxVHx8
    Propeller Code: http://longhornengineer.com/code/WS2801_Driver.zip
    Would be awesome if Sparkfun carried the WS2803 or the DIP version of the WS2801.

  • Awesome, now source the WS2803 please! Three times the outputs on one IC at only a marginal cost increase per the manufacturer (I had them quote me but the min order quantity was 3000 pcs I believe…)

  • i am trying to use a higher current (350ma) white led with this IC. i was hoping to combine all 3 channels to feed that one led. is that possible? or is there a chip for higher current leds? thx.

    • You might be able to drive a transistor or a mosfet with this. Your current requirement is relatively low, so a small signal transistor will probably work as long as you remain within the maximum watts dissipated on the transistor. I would recommend picking a transistor whose maximum wattage is 25% to 50% higher than the normal load of the circuit. The cost increase would be marginal for this type of thing, and it will probably last longer.

  • I want to run these at 12V with 3 LEDs connected to a single chip. I need 5V zener diode + filter cap as datasheet says to make chip work on 12v. What about R/G/B feedback pins: are resistors on them a must? If no resistors, current is not limited and I should be careful not to exceed max. output current? Should I connect them to ground or leave them float? Also, the LEDs. Can I connect them in series although datasheet says max. output is 7V? Will brightness be lower? I have seen some strips with three LEDs in series including current limiting resistors on them connected to a ws2801. How that works?!? Thanks :)

  • has anyone tried this with common cathode RGB LEDs? such as the 5mm Piranha?

  • My favorite thing about SparkFun is learning about components I didn’t know about before. I bought some of these and made some small circuit boards (toner transfer method) that have just the chip, the 3 sense resistors (I had some 27 ohm SMD), a decoupling cap and a through hole RGB LED. I daisy chained 3 of them together, and they worked right off the bat. I wrote a very simple function for Arduino that sends the pulses out with no delays, and it works just fine. I agree with the other commenter, only the 3 sense resistors are needed.

  • helloooo?

  • What form factor is this chip? It doesn’t fit the soic to dip adapter board

  • It appears both common cathode and common anode RGB LED’s can work with this, but all of the example application circuits in the datasheet are common anode.

  • The built-in PWM is a very nice feature, but the requirement for 6 resistors for one RGB LED to attain constant-current operation is a bit overkill.
    Since I multiplex PWM on the microcontroller (using “bit modulation” to relieve much of the computing overhead), I prefer the PCA9922 which is a shift-register-style 8-channel constant-current LED driver with one resistor to set the current on all channels from 15mA to 60mA. It also supports a separate power supply for analog (the LEDs) and digital.
    I designed a board that seems to work okay that puts two chips on opposite sides of a dual-sided board to drive 5 RGB LED’s (15 channels) plus a spare, optional LED for debugging, etc.

  • Anyone that wants to run this chip VERY easily from an Arduino should look at the FASTSPI lib: http://code.google.com/p/fastspi/
    FAR better than the example approach.

  • Is there anything similar to this that can put out 350ma per channel?

    • This IC plus three higher-current external transistors? Just use them as switching amps. Then you have all the current/voltage capacity you want if you design it right.

  • is this like this http://www.sparkfun.com/products/9622 ?

  • Hmm, says Constant current ratting up to 150ma here, but in the spec sheet it says only 50ma in the tables. The table also says CV mode max current is 100ma, but in the paragraph on CV mode it says max is 50ma.
    So what gives? What are the correct numbers?

    • Though it doesn’t specificaly say in the datasheet, I would assume that it is 50ma/channel times 3 channels equaling 150ma max. I base this assumption off of the maximum power dissapation of 600ma.

  • They come in dip too ;). SOICs are scary. Not to mention LFBGAs…

  • This is exactly what I’ve been looking for!
    One of my projects involves controlling the brightness of 6 Led arrays. The problem is that the Atmegaxx8 only has 6 pwm pins, and one of them is inconveniently located on the MOSI pin, which I need.
    I designed an eagle part for this component. It is untested, but it can be found in this library.

Customer Reviews

No reviews yet.