ws2812 multiple strips, one signal

lokki

Well-known member
hi there, I have yet another ws2812 project that involves 21 led strips each 1.5 to 2m long. they will consist of 3 groups of 7 strips. each of the strips in a group will receive the same color and pattern info, so I can use the same pin to control them. this way I will only use one pin per 7 strips or 3 pins in total. this will also decrease memory consumption considerably. what is the best way to do this with a teensy 4 hardware wise? I could swear I saw some kind of a splitter on amazon, but I cannot find it atm. I could also use some buffers I guess, but I would prefer a 5v only solution.
 
If you use a 74HC14 to buffer the signal, feed it to one inverter, then use that to drive the 5 others in parallel (net result no inversion and very strong 5V output drive). [ The 74HC family is powered from 5V but its inputs work with TTL thresholds which are 3.3V CMOS compatible ]
 
thanks, I found 3 74hct14n in my drawer. for 3x7 outputs I need a fourth though, since I can only drive 5 strips per IC. for the additional outputs a 74ac14 should also be ok, since I already pushed the signal with a 74hct14n inverter, right? (I would use the inverted output of the 3 74hct14)

I also have CD4049 hex inverters here, but not sure I can mix those in. thanks for any insights.
 
since I already pushed the signal with a 74hct14n inverter, right? (I would use the inverted output of the 3 74hct14

74HCT14 has 6 inverters, so you can easily get 5 separately driven outputs. Just connect Teensy's pin to 1 of the inverter inputs. Then connect that 1 output to the other 5 inputs.

I would also recommend placing a resistor in series with each output. The best resistor to use depends on the type of cable you will use, but 100 ohms is a general rule-of-thumb with which well for many type of cable and especially with CAT5 or better network wire. For an example, check out the OctoWS2811 Adaptor schematic (scroll down until you see it), and on the OctoWS2811 page scroll down to "Signal Quality" to understand why this should be done.
 
I know, but I need to feed 21 strips in groups of 7, so three data pins each with seven outputs. I thought about 3 74hct14 to get 5 each, then one more hex inverter to make 2 additional outs for each of the three lines. That last „shared“ inverter could also be a 74hc14, right?
 
Sounds like you need several buffer chips.

This description is more complex than I can envision from only the words. Maybe someone else knows. But if you really want a better answer, might be worthwhile to draw a diagram so everyone can clearly imagine what you're trying to connect.
 
Assuming the output trace lengths aren't huge so you don't have lots of capacitance or inductance on the connections you should be OK driving multiple LED strips from a single buffer output pin. The buffers have a good drive strength and the LEDs don't pull much current from the data inputs. A fan out of 7 may still be a bit on the high side but I wouldn't expect any issues feeding 4 LEDs from a single output. Similarly the teensy output should be more than capable of driving 2 buffer input pins.
Which means you only need a total of 6 outputs from the buffer chip.
Teensy output 1 goes to buffer inputs 1 & 2. Buffer output 1 goes to LEDs 1,2,3,4. Buffer output 2 goes to LEDs 5,6,7

This is assuming a non-inverting buffer, if you have an inverting buffer then you need to go through the buffer twice (or set the teensy to output the inverse of what you want) which would require a few more parts.

And do make sure to put plenty of capacitance on the buffer power input pin, you don't want the voltage dipping when you try changing lots of wires at once.
 
Thanks, that is good insight. I will build a prototype with 1 or 2 inverters, I don't expect very long distances on the output trace, but I will only know for sure when I am at the museum.
 
seems to work fine with 3 lines per inverter output, thanks! the final testing will be next week, but at home it worked very well.
 
Back
Top