News Flash!

A newly renovated nightclub in the UK just opened their immersive "LED room", with nearly 10,000 RGB LEDs covering the ceiling and back wall.  I designed all the electronics that run the LEDs!

YouTube clip

 Showcased on Madrix website:
Madrix website

New Videos!  Click to play on youtube:

Video2 Video3

The room has 10,000 red/green/blue LEDs in a 4" grid covering approximately 1000 square feet.  They are on 1" x 20" pcb boards ("strips") that are mounted into wood slats that have perspex (acrylic) openings for the LEDs to shine through.  Each LED has 255 levels of brightness for the red, green, and blue, which smoothly mix so each LED is separately controlled to create millions of possible colors.  Besides the excellent color control, this installation and overall project had to:
  1. Work with the remarkable Madrix software to create a wide variety of sound-synchronized effects
  2. Be modular and have easily swappable electronics, so any failures can be quickly fixed
  3. Have straightforward wiring and powering, since it is in the UK and I'm in Oakland so all the installation needed to happen without me being around
  4. Have test modes at multiple points to diagnose every conceivable problem from a bad LED to a bad Ethernet cable to a loose connector to a firmware bug
  5. Work with standardized lighting protocols (DMX and ArtNet), to facilitate testing and to have a "plan B"
  6. Work the first time, with parts available in large quantity immediately - no waiting more than 1 week for anything.  From initial proposal to the prototype design to production manufacturing to shipping 2000 LED boards + custom cabling + control system hardware with completed ArtNet firmware was 7 weeks.  Which is crazy.  While also doing other client work.

I'm happy to say my hardware design achieves all this and is successfully running!

There are two main parts of the installation: the LED "strip" boards, and the control boards.  The overall flow is the Madrix program sends out the complete lighting data for all the LEDs (10,000 * 3 colors = 30,000 bytes of data) at 30-ish frames per second.  This goes from a Gigabit Ethernet port on the computer to an Ethernet switch, which routes it to 15 different control boards, each of which runs up to 7 sets of 17 pairs of LED "strip" boards.  This means commodity (i.e. cheap) computer networking hardware and cables are used to get this data distributed in a (relatively) easy, reliable manner.

The LED strip board design:

In order to keep costs as low as possible, but also use standard lighting protocols (in case the control board couldn't be created fast enough), the LED strip boards use DMX.  There are actually two designs, the "Left" (with electronics and LEDs) and the "Right" with just LEDs.  They plug together.  By having all the electronics on just the Left, several $thousand was saved.  Most of the area to cover is done by having 17 of the Left+Right pairs connected with 26-conductor ribbon cable, forming a single DMX universe (510 of 512 possible channels), and runs at 5V @ 11amps peak.  Video of the prototype is here.  This proved the "basic DMX universe unit" would work, and manufacturing started immediately.  In order to have these "DMX universes" fit in the actual space, the design is such that the Left board can be run without a Right, and also either Left or Right can be cut with tin snips to fit exactly in the area needed.  Nifty!

A single Left+Right strip-pair:
(LED strip-pair)

Close-up of the electronics, which are on the backside.  The LEDs are on the front of the board, facing the room.
Electronics are: Microchip PIC18F24K20 @ 64Mhz, receiving DMX from ST Microelectronics ST3485ECDR 3.3V RS485 RX/TX and running 30 channels of 8-bit, 220Hz PWM dimming with 2 ON Semiconductor CAT4016VSR-T2 16-channel constant-current LED driver chips.  Electronics runs at 3.3V from the very noisy 5V power via a diode and bulk filter cap to a 3.3V regulator.  Boards are standard 1Oz copper 10 mil trace/space with black soldermask, because black always looks good on long, thin circuit boards hanging out in a club.
(board electronics)

The LEDs.
  (amazing pretty little white squares that cost 78c each if you buy 3000 at a time.  Osram LRTB G6TG)
(LEDs off)

(LEDs on)

So that's the Left+Right LED "strips".  Each has 5 LEDs, electronics on the Left one, plugged together they make a 1" x 40" strip with 10 LEDs at a 4" spacing, and each strip-pair has uses 30 DMX channels (which 30 of the 512 in a DMX universe selected by DIPswitch), runs at 5V @ 0.65amps peak, has 3 built-in test modes, and is impervious by design to power supply noise and voltage dips, to work perfectly even 100 feet from the power supply with a multitude of cables carrying hundreds of amps pulsing all around.  No problem!  17 of these strip-pairs have their power and DMX signal connected together by custom-made ribbon cable with connectors at 4.5" spacing (4" between each strip-pair to maintain the overall 4" grid, and 0.5" of extra cable for slack).

But the installation requires nearly 60 of these DMX universes!  How to get +5V @ 11 amps and all the DMX data to 60 of them?  Let's talk about DMX distribution first.

DMX has been around a long time, and it works great.  But there is a scalability problem.  Most clubs and theaters need one or maybe two DMX universes for all their lights and lasers and fog machines and whatnot, because a single multicolor, spinning light needs just a couple of DMX channels to control it.  At 512 channels per DMX universe, you can run a lot of whizzy stuff on a single universe.  However, if you want to run 10,000 3-color (R/G/B) "lights", you need 30,000 channels.  60 DMX universes.  The normal way to get DMX lighting data out of a computer is a little USB box that gives you 1 DMX output.  I don't know if plugging 60 of them into one computer would work, and even if it did initially, that's a lot of things to fail and cables to come loose and mysterious Windows problems to fix and settings to configure and yuck.  Not acceptable.

This scalability problem of DMX is completely solved by sending the DMX lighting data over Ethernet in a format called ArtNet, which is an open standard.  Ethernet is so fast you can put 60 DMX universes on a network and not even notice anything is happening.  But, you now gotta get your lighting data out of Ethernet and output as standard DMX, and you need 60 outputs.  No problem... if you're rich.  Ethernet to 12 DMX outputs: $2500!  Want to buy 5 to run all this?  Or Ethernet to 8 DMX outputs: $1200, and we need 8 of them.  There's no way to get from Madrix (or anything that outputs ArtNet) to 30,000 DMX channels for less than $8500 - ish.

Money like this is crazy talk, because ArtNet to DMX isn't hard.  And that $8500 was just not going to happen with the budget.  That's more than the LEDs cost!  So I did what any self-respecting solopreneur electronics designer would do of course - I designed and made 15 of my own in 2 weeks:

(ArtNet to DMX)

This thing is the evaluation board (the nice looking rounded corner green board) for a newish chip I've been wanting to design with (the Stellaris LM3S6965) literally and figuratively bolted onto a board I made that has 7 DMX output connectors and power coming in.  As labeled above, you connect the Ethernet (back to that Ethernet switch the computer running Madrix is wired to), and then plug in up to 7 DMX universes, which run on cat5 cabling because it is almost ideal electrically and dirt cheap.  Then spend 5 long rushed days getting up to speed with a new chip, with a new toolchain, creating 7 serial ports in firmware ("bit-banged" 250kbaud), significantly tweaking an opensource tcp/ip stack (uIP), implementing the ArtNet protocol including a workaround for its surprise ridiculous shortsighted legacy 4 DMX universes per IP address limitation (by adding multi-homing to uIP, i.e. 2 IP addresses with one MAC), and voila.  For less than $2K we have 30,000 DMX channels going to around 60 universes over commodity Ethernet switches and cabling.  They could have run an installation twice this size.

The last big aspect to the design...powering everything: each of the 60 DMX universes needs +5V @ 11amps when it is on full.  This is a lot of power.  There is the significant problem that 11 amps of current down a wire of any appreciable length causes the voltage to drop... fast.  So the design was done with an eye on wire lengths and thickness (thicker = less voltage drop, but more expensive, sometimes much more).  The alternative would be to use a higher voltage (say, 12V) but then each LED strip-pair would need more electronics to work, which is more cost/complexity/potential failure, but thinner wire and less of it could be used (lowering wire cost and making installation simpler).  Electronics design is all about tradeoffs, with a dozen ways to do anything beyond the trivial, and the right answer is the one that balances the relative importance of many often competing goals.  Without painting yourself into the corner if something unexpected goes awry with your best-laid plans.

The right answer here was: simpler electronics, straightforward but more and slightly spendier wiring, lower overall risk, everything available off the shelf.  So each DMX universe of 17 strip-pairs has its own pair of thick-ish wires to a +5V power supply, and each power supply runs 5 DMX universes, and each feed out of the power supply has a separate 13-amp circuit breaker for the 11-amp (peak) feed.  There is an ArtNet to DMX control board with each power supply, and it sends the DMX signal to each of the connected LED universes.

What it looks like - here's about half the ArtNet to DMX boards (in a column on the left) and power supplies (silvery boxes in the center column) and circuit breakers (in vending machine esque enclosure), in a next-door side room/closet that has (a) air conditioning and (b) no sweaty partiers spilling their red bull with vodkas into 220Vac power supplies.

(power + control boards)

And there you have it!  Add ever more sophisticated swirly visuals and have thousands and thousands of people dig it for 20 years to come!

Many thanks (I wanna give a shoutout to!)

Lenore @ EvilMadScience for the project referral
Erupting Volcanoes that gave me 2 more days to finish (I'm not kidding! no flights = no international air shipping = a bit more time)
Tam @ Meritronics where all the LED strips were made in a big rush due to crazy schedule, compounded by 4-day USA customs delays
My brother Chris (website) for programming and testing and bubble-wrapping something like 1500 of the LED boards in a big big hurry
Stacey Rolland for making 70 pieces of ribbon cable with 17 connectors each perfectly
Steve & Steve @ the club for their patience and wiring me many $thousands and believing me that it was all gonna work
and especially my sweetie Laura for putting up with the scramble and the work and me sweating it all for weeks on end!

Thanks for reading!
I design stuff like this all the time, if you have a project you need custom work for, drop me a line.
Also see DMX LED drivers for sale.