I would like to make a LED matrix, out of a WS2812 LED strip (it contains 120 individually addressable LEDs), and control it with an Arduino Nano Every.
As I saw in different tutorials, articles, I understand the programming part, but I have a problem with wiring. I want this contraption to be powered with batteries. My led strip's voltage is 5V. How many, or how big of a resistor I will need, and where I should connect them?
It wouldn't be a problem, if I need to power the LEDs and the Arduino individually. I just didn't find a tutorial/article that showed exactly how I should wire the parts together.
I thought that I want the strip to be wired in an S form, in a 12x10 form. If this would cause problems, please correct me.
I'm relatively new in Arduino, and I don't want to kill mine.
I'm relatively new in Arduino, and I don't want to kill mine.
Whatever you do don't attempt to power the LEDs from the Arduino as it cannot supply enough current. Power the LEDs from a separate power supply and only connect the GND and data lines to the Arduino
You just have 1 strip, that winds its way back & forth?
If the end of the strip is located near the Arduino, likely no resistor is needed. Just the data line and Gnd.
Here I have 4 rings of 43 WS2812B on rings, each ring has it's own data line from an Arduino, all are powered from same 10A supply. The rings are 118mm diameter, so the signal wires are at least 47cm, and likely twice that, for the display on the right. https://www.youtube.com/watch?v=CGOxbehyoM4&t=5s
No series resistor was used. The Arduino is sitting on the floor to the left of the display.
If the strip will be farther away, like several feet/meters, then a low value resistor in series with the data line might be needed to help dissipate any signal reflections. The WS2812 and WS2812B data sheets do not mention any resistor. A 125 ohm, 220 ohm, something low value like that.
Use a separate 5V supply for the strip. You may need to connect the 5V/Gnd at both ends so All of the current doesn't have to flow down All of the strip, which can result in lower voltage and odd/poor/no operation at the far end.
Use 2-3 power banks for this. 120 WS2812B LEDs take up to 7.2A when fully on; if you need that current you need three power banks capable of delivering 2.5-3A each. If never at full brightness, two power banks can do this.
When calculating the required capacity keep in mind that power banks are typically only 70-80% efficient, and if you have a made-in-China one downrate by at least half to find the real capacity. Or better, just pony up and get a good power bank.
I've done a project with 100 such LEDs, using 2x 16,800 mAh power banks for each set, making it run for 8-10 hours depending on the brightness. That are quality power banks, they barely warm up. Didn't come cheap, and we needed 24 of them!
I believe that the OP is thinking like an LED, which needs a current-limiting series resistor. WS2812s are addressable RGB LEDS- all you get from the Arduino is data. The LEDS are powered from a separate supply. (Be sure to connect the grounds together.)
Good practice is to have a single resistor in series with the data line from the Arduino to the LED strip. Anything from 220 to 60 Ohms works. I use 330 Ohms because I have dozens of them in my parts drawer.
It's a good idea to power the LED strips at both ends. Otherwise the voltage drop from one end to the other will result in some color change.
Here is a basic drawing of connecting an LED strip to an Arduino. This example shows a separate power supply for the LEDS, and the Arduino powered from the PC-USB.
As I said, the series resistor value is not at all critical. The author of this image used a 4.7k resistor. Whatever you have in your parts box. (I don't know what happens if you put a 10-MegOhm resistor there). The capacitor is kinda' optional. But if you are flashing the LEDS quickly, a large capacitor on the +V line will smooth out any voltage fluctuations. If you are using batteries, the capacitor is not needed. But it can't hurt to have one.
SteveMann:
As I said, the series resistor value is not at all critical. The author of this image used a 4.7k resistor.
A very high value considering the communication is at 900 kHz. For me it wouldn't work with series resistor (220R) at all even... I had to leave them out. No idea why.
If you are using batteries, the capacitor is not needed.
Only if you're connecting the strip directly to the battery! You normally don't as there's no such thing as a 5V battery; power banks use a boost converter to go from the ~3.7V battery voltage to the 5V output. It'd be really great if there's a WS2812B variant that is designed to operate directly off a LiPo battery (or a pair of them).
Wawa:
A Nano Every (3.3volt logic) might not work reliably with a 5volt logic addressable LED strip.
Might need a level converter in between.
A common/cheap v3.0 Nano (or $2 clone) is better suited for this job.
Leo..
The Nano Every runs at 5 volts, the Nano 33 series of boards are the 3.3 volt nano's.
The 6k of dynamic memory allows it to drive considerably more LEDs, along with the 48k of flash memory, and no worries about storing data in PROGMEM since no special instructions are needed to access flash memory.
A significant disadvantage is that FastLED does not currently work with the Nano Every.