1-bit chainable shift registers?

I'm looking to make very light-weight flexible tubes of individually addressable LEDs. Running wires for each LED would obscure light and make it rigid and heavy, so I am hoping to build a bunch of tiny PCBs with a circuit which acts as a chain able 1-bit shift register, so I can wire together any number of the boards with just a few flexible wires, then shift out new colour states to each of the LEDs.

Is there anything like this? I've been googling for hours, but the few things I have found, I don't understand.

Also, it's a portable application, so power efficiency is important, as well as using small components.

Thanks for your help. :cold_sweat:

There are plenty of daisy-chainable shift regs with current-limited outputs, for example TLC5916 and TLC5926.

But can’t you just buy one of the LED strips with the WS2801 chips built in?


Sounds like you're trying to recreate these?

http://adafruit.com/products/306 http://www.sparkfun.com/products/10312


Thanks for the replies, but these chips look to be 8-bit and 16-channel respectively, which would mean clocking out a whole lot of useless information just to turn a digital light on or off. I’ve played with LED strips, but couldn’t find any which are suitably flexible in two axis (most just flex on one axis, as they’re a flat strip). I also played with ‘led pixels’ - strings of lights with lpd6803 15-bit rgb lights. These are flexible enough, but require the controller output clock signal even when there are no updates to keep the pwm going, and all the preformed led pixels I could find were quite large - wouldn’t really work in the sort of small tube I’m hoping to build, and all of them required 5 or 12 volts, which would mean including a boost converter as well, making a portable (wearable) project even heavier than it needs be, while probably wasting that extra power in resistors to convert the power back down to something suitable for the LEDs.

RGB and PWM are totally unnecessary, and I’d rather keep costs down, unless 3-channel drivers really are the only way to reasonably do this - I can probably get away with sending dummy data to pad things out if need be, but it just seems so wasteful.

What I’m most ideally looking for is essentially just one single stage of a parallel shift register. I saw some stuff about astable something or other flip flop things, but I don’t understand any of it. I’ve only just gotten my head around PNP and NPN transistors, and most of the articles talking about these things don’t seem to use terribly googlable phrases or be that helpful towards beginners. If someone could enlighten me on how these things work, that would be wonderfully helpful. :slight_smile:

one single stage of a parallel shift register

AKA a flip flop (a shift reg is really just 8 flip flops). But how does having 1/8th of a shift register help. You still can’t address it.

would mean clocking out a whole lot of useless information just to turn a digital light on or off.

What else is the processor going to do? Unless there are some serious timing constraints it doesn’t matter if you have to clock out 500 bits just to change one of them.

None of the “standard” methods are addressable AFAIK. The only way to get addressing of individual LEDs is to put a processor at each LED or a shift register AND an identity comparator AND a DIP switch or method of setting the address.

So apart from not wanting to shift “useless” data is there any other reason for wanting to address individual LEDs?


What I'm most ideally looking for is essentially just one single stage of a parallel shift register.]What I'm most ideally looking for is essentially just one single stage of a parallel shift register.

So use a 74LS74, this is two d-type flip flops. You need to configure one as a shift register and the other as the latch. shift register Input D0, shift register output Q0, shift resisted clock Ck0 Connect D1 to Q0 Then Ck1 is the latch signal and Q1 is the shift register output bit. This can be cascaded just like a normal shift register.

Can look into singly packaged flip-flop also:


Can look into singly packaged flip-flop also:

Yes but you need one flip flop for the shift register and another for the latch.

Practically...similar sized logic chips end up being similarly priced. Based on a quick look, the 74HC595 latching 8 bit shift register is actually the same price as the 74LS74 dual flip flop. And it's already configured as a shift register. So you "waste" 7 out of 8 bits...or maybe you can use each chip to control a couple LEDs at a time. The 74HC595 is actually the least complicated option, and it doesn't save you any money to go with a dual flip flop chip.

Yes but you also waste the time it takes to clock the input value to the output. So for each bit of the shift register you have 7 waste cycles to 1 useful one. If, as it sounds, the OP wants to chain lots of these then this wasted time will significantly reduce what he can do with it.

True, but the OP already mentioned they don't want PWM. In that case, with only a 1MHz SPI output the OP could control over 2000 LEDs at 60fps while "wasting" 7 extra bits per LED (one chip per LED).