Conencting ws2813 LED strip to arduino

I would like to find out how to connect the ws2813 LED strip to arduino.
Here I have GND 5V and two data inputs D1 and B1.
There are plenty of tutorials on LED strips like ws2812 which have just one data input.
I am not sure if I should conenct resistor to both D1 and B1 and conenct it to two different ports. And then how should I control this rgb led strip through those two ports.
Or mazbe I should connect both to the same arduino potrt.
Any feedback would be greatly appreciated

Here is how that LED strip looks like

I am not sure if I should conenct resistor to both D1 and B1 and conenct it to two different ports.

You just connect the BI connector to the ground of the first LED in the strip.

Then just treat it like a WS2812 with a colour order of GRB

Thanks for your reply. I am quite new to this and not sure I fully got your answer.
I was planning to have external 5v power connect to 5v on the strip
GND from external power suply connected to GND on the strip and to GND on arduino.
Should I connect BI also to the ground?, And D1 to Arduino port through the resistor?

Should I connect BI also to the ground?, And D1 to Arduino port through the resistor?

Yes on the first led of the strip.

Yes connect D1 through a resistor.

Also connect a large capacitor 470uF or bigger from the 5V of the strip to the ground on the strip.

I found a data sheet according to which shows DI on the first LED on the strip unconnected. And using just BI to be connected to a data pin on the arduino.
I would also have 330ohm resistor to connect the data PIN. Would that make sense?

ws2813-led-strip-specification.pdf (1.59 MB)

One more question. I do not have 5v external power supply. I have 9v and I would use Vlotage step down module. Does it mean I would still Need capacitor or this module would take care of the voltage spikes

Does it mean I would still Need capacitor or this module would take care of the voltage spikes

You still need a capacitor. It handles current spikes not voltage spikes, in other words the suck not the blow.

I found a data sheet according to which shows DI on the first LED on the strip unconnected.

That contradicts the data sheet I found.

See the typical recommended circuit.

WS2813_18031509433725.pdf (607 KB)

I have seen this sheet but this does not correctond to Strip I have.
It Shows
Pins
DIN GND DO BIN VDD VCC
Not sure how would this correspond to
BI DI BO DO GND 5v i see on the Strip
Does VDD correspond to BO?
Here in fact BI gets connected to the ground.

So with two Sheets contradicting each other I guess I would have to try both ways. Can this result in demaging the Strip?

Can this result in demaging the Strip?

Not likely. The B in is simply a back up device that loops to the previous LED in the strip so that the failure of one LED does not stop the whole strip from that point to stop working. Which is why the first one is grounded. To my mind this is right. The advice to feed the signal into Bin instead of Din will probably still work but is not the philosophy behind the design of the controller.

Hi, I also purchased XT1506s led strip similar to ws2813 from aliexpress. Right now i just want to check Led strip is working in order or faulty. Is it possible to check without coding in arduino UNO?

Following are details.

Jerico XT1506s 60 Leds per meter waterproof.

how much voltage is required to serve Data Line. As per your conversation, you are using resistor.

How i can check all leds are working fine?

Any type of help greatly appreciated.

I attached specifications of Xt1506s

Is it possible to check without coding in arduino UNO?

No.

how much voltage is required to serve Data Line. As per your conversation, you are using resistor.

Normally greater than 0.7 of the voltage supplying the string.

You always need a resistor, don’t even think about not using one.

Thanks for reply.

My strip consist of 60 Leds per meter. Company says it is similar to ws2813. As per specification, it requires 40ma * 60 = 2.4 Amp to run whole 60 Leds. But arduino UNO can not support required current. is it possible to lit two or three leds in any pattern. if i am not wrong, 3 leds require only 120ma.

I am confused about selecting right value of resistor as well as capacitor. After googling, i found some are using 470 ohm and between 300 to 500 ohm. For capacitor, most are using 1000uf.

what values of resistance and capacitor you would like to recommend to run 60 leds at same time?

For making connections, i think capacitor is required only when i use external power supply. If i use only arduino UNO then there is no need of capacitor and resistor is required.

for programming, TYPE WS2812b will work fine on ws2813.

sorry for bad english.

what values of resistance and capacitor you would like to recommend to run 60 leds at same time

It is not critical any of those examples will do.

is it possible to lit two or three leds in any pattern. if i am not wrong, 3 leds require only 120ma.

Yes you can do this but you need to make sure you never have a program error that takes you over the limit. Also the string could power up in any state giving you an overload before your code can kick in.

If i use only arduino UNO then there is no need of capacitor and resistor is required.

This is rubbish you always need a capacitor and resirpstor.

I agree about a 0.1uF capacitor per part, a good LED strip will have one built in per WS2813.

I disagree about the resistors - as an example, here are some LED rings I made with WS2812Bs, with a 0.1uF cap per part and no resistors at all between the 5V supply, or between the Arduino (Duemilanove or an Uno, I forget which) and the first chip in each ring, and you can see the wires I have draped around to reach each ring.

If the strips are acting erraticly, then a resistor could be added in the data line if one suspects the signal.

I disagree about the resistors

I disagree with your disagreement.
A resistor serves two purposes:-

  1. To protect the input of the first LED in the case where the input signal exceeds the LED's supply voltage. This can easily happen when the power supply voltage sags under the load from the LEDs.

  2. To prevent over voltage spikes caused by the rapid switching of the inductive load that is the wire connecting output to LED input. The attached picture illustrates the point:-

jaspal23:
But Arduino UNO can not support required current. is it possible to lit two or three LEDs in any pattern. if I am not wrong, 3 LEDs require only 120ma.

Just a reminder.

An Arduino - UNO or Nano or Pro Mini etc. - does not "support" any current beyond a very few LEDs at 20 mA each or driving the data line of WS28xx devices. The 5 V pin is a reference output only which may be used to supply a few sensors given that they only require a few milliamps. It must never be considered as a "power supply".

The inbuilt regulator has no heatsink, so it is limited to 100 mA or so, and the higher the voltage on the "barrel jack" or "Vin", the more power it must dissipate and the less current it can supply before overheating and (hopefully) safely shutting down.

If you are using these LED strips, you must have a fully regulated 5 V power supply of some sort. Once you have that, you can use it to power the Arduino via its 5 V pin as a power input given that the requirements for the LEDs and the microcontroller are exactly the same.

Thanks for valuable reply of all users.

I checked the strip with Arduino UNO with simple coding. Actually i purchased from Aliexpress, i wanted to check strip that i received, it was in working order or faulty. Its working fine.

Now i want to use the strip at full power. I have old ATX power supply (old SMPS). It has 3 different output voltages. I read somewhere that we cannot connect the led strip to 5V of SMPS. there are chances to become unstable. First, put some load on 12V supply ( i dont know how much) then connect strip to 5V supply. i have 2 capacitors of 1000uf with 16 v and 10 V

Requirement is only 60*40ma =2.4 Amp. How can i connect to it? If i want to make own power supply of 5V with 4 Amp, what components will require?