Driving RGB Pixel LEDs With CAT5 Cable

cable-test

[Teknynja] was working on a project where he needed to drive a few strips of Adafruit Neopixels – WS2812 LED strips – that were located several feet apart. These LED strips draw a lot of current, and are very timing sensitive; anything more than a few feet of wire between the microcontroller and the LED strip will probably result in missed data, voltage drops, dimming LEDs, and possibly a non-functional strip.

The solution, as in all matters concerning long distance transmission of data, was CAT5 cable. [Teknynja] used RS-422 drivers and receivers to pull this task off, with 75174 line drivers receiving signals from a Teensy 3.0, and 75176 bus transceivers reading everything at the other end of a 20 foot cable.

For the power drop issue, [Teknynja] is feeding 12V into a few of the wire pairs in the cable and using a cheap  LM2596 buck converter to step everything down to 5V at the strip.

With a fairly simple circuit, [Teknynja] was able to drive a few strips of WS2812 LEDs through 20-foot lengths of CAT5 cable with ease; it worked just the same as if the pixels were connected directly to the Teensy on a workbench.

Comments

  1. Ingenious!

  2. George Johnson says:

    I’d try to use AC for the power. It might be too noisy though. But possibly changing the frequency of it may help. You have a regulator on the other end anyway, so this is just eliminating a large(r) power loss.

    But pretty good work though.

    • Max says:

      Why would using AC “eliminate a large(r) power loss”?
      A good switching regulator should be more efficient than a transformer with a rectifier. Also, I imagine getting exactly 5V out of a settup without a feedback loop as beeing pretty difficult.

    • jiogqa says:

      You can use low frequency AC (like 2 or 3 Hz)

    • tekkieneet says:

      AC or DC would have similar I*R losses. What you are saving is the big bulk capacitor that you are going to need at the far end (instead of both ends) and give you reverse polarity “protection”. I would consider driving it with *unregulated* DC instead of AC.

      CAT5 have lots of parasitic capacitance per unit length. This is what limits the slew rate of the control signal over distance. Driving signal with differential signal is basic stuff.

    • static says:

      I’m curious as to why the use of AC was suggested. Supply voltage being equal AC has no advantage over DC when it comes to overcoming the resistance of a conductor. In fact there is a distance where HV DC gains the advantage over HV AC. AC won the “current war” for a variety of reasons, that AC is inherently better than DC for overcoming conductor resistance wasn’t one of them.

  3. cpldcpu says:

    You do not need line drivers on both ends for this feat. There are two critical things to consider when driving ws2812 via long lines:

    – Make sure you convert your signal to 5V CMOS levels. 3.3V is marginal and will lead to trouble with long leads.
    – Long lines will cause signal reflections due to impedance mismatch and cause lots of errors due to this. This can be preventes by proper matching. Parallel termination will not work with CMOS, but you can use series termination at the input of this line.

    http://www.irctt.com/pdf/Nov_07_Electronic_Products.pdf

    http://en.wikipedia.org/wiki/Characteristic_impedance

  4. smith says:

    cat5 contains twisted parallel pairs and has very low loss. it is also not susceptible to much noise being that it contains TWISTED pairs. This being said, parallel lines will always have the same voltage at any point along the line. all wire has a calculated resistance per foot so a little bit of arithmetic can tell you if you need an amplifier (in this case likely to be a PPPoE booster.)

    elementart

  5. smith says:

    cat5 contains twisted parallel pairs and has very low loss. it is also not susceptible to much noise being that it contains TWISTED pairs. This being said, parallel lines will always have the same voltage at any point along the line. all wire has a calculated resistance per foot so a little bit of arithmetic can tell you if you need an amplifier (in this case likely to be a PPPoE booster.)

    elementary

  6. bwmetz says:

    I’m sure the cat5 will achieve greater distances, but isn’t the real hero here the RS-422 differential line drivers? Those little beauties we’re used for extremely long terminal runs using Cat3 long before Cat5 was around, the differential signaling instead of using a common ground being the key. I also seem to recall that RS-422 would even work with line cable in a pinch, though twisted pair for better noise reduction was preferred. I like the use of cable on hand but I bet 20 ft could be achieved with the other two cable types as well, i.e. don’t waste your Cat5 if you have the other lying around.

  7. loans says:

    The differential signalling is absolutely what helped him here. RS-422 or RS-485 will both do impressive distances over cat 5, and perform better with better cable.

  8. macegr says:

    I used WS2811 over CAT5 using SN75176 transceivers quite successfully on this project: http://bootiesattva.blogspot.com/2013/09/the-zonohedral-cathedral.html

  9. Thomas says:

    This is getting ridiculous. The WS2812b is really easy to drive and the timings aren’t nearly as strict as HaD likes to pretend. I just put a 10 µH inductor in the dataline (admittedly, together with a 330 Ω series resistor) and it doesn’t faze them one bit.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 93,673 other followers