• More boards: WS2812 over RS422/RS485

    Adam Demuri03/21/2020 at 02:22 0 comments

    The final Colordance 2.0 installation will have a main control board in a podium. This board will control the main bright LED panels, as well as standard strips of LEDs on the outside (for visibility). There will be six poles, each having a bright LED array and an LED strip. To reduce the risk of failure, the bright LEDs and LED strips will be driven separately. This means that the main control board will need to drive twelve strings of lights. The poles will be 10 feet tall, and be situated in a circle 15 feet in diameter, so the line between the control board and the LEDs could be up to 30 feet.

    The WS2812 protocol isn't designed for long distances like this. I couldn't find many people on the internet who had done this (successful or no). We decided that it was best to reduce risk by using a different hardware  transport for the signal between the control board and the poles. I chose RS422 because it supports a high enough datarate (WS2812 is 800khz), and because it is differential, so it has good noise immunity and can support long lines.

    Note that RS422 and RS485 are similar. Each RS422 line is one-way, with a fixed transmitter and receiver. RS485 allows multidirectional communication by tri-stating when not transmitting. Since we only need one-way communication, either kind of transceiver will work.

    I used capacitive termination for the RS422 line. See this application note for details. This worked fine with my ~20ft ethernet cable, although I didn't test the waveform with an oscilloscope. We're likely to need some termination at our cable length and data rate. However, using a 120 ohm resistor means that each RS485 line will burn a moderate amount of power. Capacitive coupling means that it will only consume power when the line is active (and even, much less). I used 1300pF capacitors.

    I started with the receiver boards. Here are the requirements for these boards:

    • Take a 12V supply
    • Supply 5V 1A, to power the strip lights
    • Supports two WS2812 signals over RS422
    • Has hookups for connecting PIR (motion) sensors from pole to control board

    I used Ethernet (with RJ45 plugs) to transport the signal. I'm hoping that these will be relatively robust (a concern for art that lives outside, especially for Burning Man).

    Here's the receiver board:

    See the design files here.

    And hooked up to an LED strip and a 2x2 LED panel:

    I also designed a simple transmitter board for testing. The RS422 driver I plan to use on the control board has 4 driver channels - I designed the transmitter test board to use all of them, just in case.

    Design files here.

  • First run of 2x2 LED boards

    Adam Demuri01/25/2020 at 01:22 0 comments

    The finished project will have six 4x4 arrays of LEDs. Each array will consist of four 2x2 PCBs, arranged in a square. We have to make our own PCBs for this because we need each LED to be pretty bright. We couldn't find anything off-the-shelf that (1) has bright enough LEDs, (2) is cheap enough, and (3) will be easy to mount in a grid.

    These PCBs use primarily surface-mount components, so that we can do reflow assembly. They'll probably take about an hour to assemble and test. The process is standard for DIY surface mount assembly - use a stencil to apply solder paste, hand place the components, and reflow the solder in a toaster oven.

    Here's one of the PCBs. The parts have been placed, but not reflowed yet.

    There are connectors on two sides so that the boards will tile.

    Here's that board in our toaster oven (with convection!):

    We tested that the boards tile successfully:

    Design

    The LED boards use the WS2811 chip to control the LEDs. This means that they can be controlled using standard software (e.g. FastLED). The WS2811s control constant-current LED drivers. These drivers are essentially a switching-mode power supply with current sense.

    The boards are designed to run directly off of 12v. The control electronics are 5v, so there is a small onboard linear regulator.

    We're concerned about robustness, since these will be installed in a harsh environment. We included a couple of features to make the design less likely to fail. The 12V power input has a PTC (resettable) fuse and a TVS diode. This should protect against transients (e.g. static shocks), and against hooking up the board backwards. There is also a TVS diode on the data input, again to protect against transients such as static shocks.

    Thermal Considerations

    These LEDs are quite bright. They are "9W" LEDs. The actual ratings are 700mA per color, 3.0-3.6v for green and blue, and 2.0-2.6v for red. With that much power, the LEDs need significant heatsinking. The PCB has a large copper area around the LED to dissipate heat. According to this helpful article, the thermal resistance of this heatsink should be around 25C/W. We expect to run the LEDs at no more than half brightness, so the worst-case total power consumption is ~3.2W. An LED turns about 70% of incoming power to heat, so we need to dissipate about 2.2W of heat. At 25C/W, this means the LED will be 55C above ambient. We plan to run this outdoors at night, where the air temperatures should be <20C. This means we should have a peak LED temperature of 75C. In reality, the LEDs will probably have a much lower duty cycle, so hopefully they will stay cooler.

  • Backlog: previous work

    Adam Demuri12/20/2019 at 06:03 0 comments

    Colordance Circle is an evolution of the original "Colordance" project. Here are some images of the original Colordance in action:


    Here's a quick description of how that worked:

    There are two components, the podium, and the screen. The podium contains a 5x5 DMX stage light:

    The podium also has a control box, for changing parameters of the effects:

    The control box is made of solvent-welded, laser-cut acrylic. The control box PCB includes a Teensy 3.5, the potentiometers and encoders, connectors for the buttons and APA102 LEDs, a DMX interface (with galvanic isolation), and an SD-card based logger.

    The screen is a large piece of white spandex material that we attached to webbing and velcro:

    The screen is rigged on the bottom, and velcroed to a piece of rigged webbing on the top. The velcro is selectively blocked so that the screen will detach when wind speeds hit roughly 30mph.