1
\$\begingroup\$

I have so far only worked with WS2812 strips and understood, that the WS2813 have a backup data line. But how do I connect the first LED to my Arduino (acts as a controller)?

Many tutorials said I should just wire the BI to V0, but doesn't this eliminate the backup functionality? So I thought about wiring both data pins to my data source? Is this a good idea?

\$\endgroup\$
  • \$\begingroup\$ Not exactly a duplicate, but I think this answer provides the required info on how to use the BI pin and how to connect to a controller: electronics.stackexchange.com/questions/384622/… \$\endgroup\$ – Chris Fernandez Jun 12 at 17:37
  • \$\begingroup\$ Thanks for your response. I already saw this thread, but there they only suggest to connect the BI to the ground. Could you explain, what my solution would do in comparison to wiring it to the ground? \$\endgroup\$ – Leon D Jun 12 at 18:39
  • \$\begingroup\$ Based on the other answer, the BI pin is used to allow data from one strand to be passed off to a second strand in case of a fault. If you are only using one strand, then the BI pin has no functionality, hence why the tutorials recommend simply grounding the unused BI pin. \$\endgroup\$ – Chris Fernandez Jun 12 at 19:07
  • \$\begingroup\$ One sales listing on eBay stated "WS2813 is upgraded from WS2812B, double signal wire. One damaged LED lamp won't make the rest all dark. The signal will pass through and the rest will act normal." So it appears this backup feature is meant to provide tolerance for dead pixels on a strand. \$\endgroup\$ – JYelton Jun 13 at 0:00
0
\$\begingroup\$

The WS28xx series of LED drivers are (were?) made by Worldsemi, but there does not appear to be a datasheet for the WS2813 available on the site (yet). It seems that another company, Shenzen Normand Electronic Co may be the manufacturer. Maybe it is a copy or a clone... The datasheet can be found here.

In any case, page 2 states that data at BIN and DIN are compared. BIN is used in the event DIN does not receive valid data. It is not well-written; here is the relevant section:

The BIN receives the data signal, and then compare the data with the DIN side after phagocytosis of 24bit data, if DIN do NOT receive the signal, then switching to BIN for receiving the input signal, which ensure that any the IC's damage does not affect the signal cascade transmission and make the BIN in state of receiving signal until restart after power-off.

I'm amused by the inclusion of phagocytosis, a biological process whereby cells can "eat" large particles by engulfing them. I presume this is a bad translation that refers to the process of receiving and checking the 24-bit data packet common to the WS28xx family of LED drivers.

The main purpose of this is not to operate a second LED strip, but rather to allow a single contiguous strip to tolerate failed pixels.

WS2812 vs WS2813

Image from Elecrow.com

Essentially DIN is a primary data input and BIN is a backup, just as you described. The datasheet does not specify how BIN should be connected (or left disconnected) if the backup data function is not wanted.

Based on what I was able to find, it appears that you could easily connect data to both DIN and BIN, and if one of the driver ICs fails, it appears that DO will still pass whatever data was received at BIN.

If you prefer to not use this pin, you could connect it to ground as some suggest. You may want to test whether connecting BIN to ground causes any additional current to flow, should that be a concern in your project. It could be that it is best left floating (not connected) instead. Measure to be sure.

\$\endgroup\$
1
\$\begingroup\$

This is based on a few sources including the (poor) datasheet.

My interpretation is that BIN should be connected to the previous LED's DIN. Then if the one LED fails, the next one will not receive any data on DIN, but it will receive data on BIN. It will switch to backup mode, where it uses the data from BIN, and ignores the data intended for the previous LED. This allows the rest of the chain to continue functioning with only one dead pixel, instead of letting the dead pixel break the chain completely. The chain will still be broken if two pixels next to each other are dead.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.