Advanced Topics

This tutorial focused on the 25 LED Adalight project pack, which is good for monitors up to 27 inches diagonal. Some users want to build a larger rig for their living room TV. This can be done without too much trouble…but, just like the LED mount required some creative problem solving, boosting Adalight with additional LEDs will require some planning and a willingness to improvise in order to fit your specific situation.

The first thing needed is a more potent power supply. The 2 Amp supply included with the project pack is perfect for one strand of RGB pixels, but for two to six strands (50 to 150 LEDs) you’ll instead want to use our 5 Volt 10 Amp power supply:
Wiring for 50 LEDs is super easy: follow the wiring diagram that was given for the standard project pack (substituting the larger power supply above). Just as before, the DC jack adapter connects to the extra red and blue wires at the end of the first strand of LEDs. Then plug the second strand of LEDs into the end receptacle, and make sure all spare red/blue end wires are insulated or trimmed. Done! The second strand receives power through the mating connector.
Wiring for 75, 100 or more LEDs is a little more complicated. You’ll need some additional wire for distributing power, and a bit of soldering may be required.

The trick here is to minimize the length that power needs to travel along the LED strands. This ensures better brightness and more uniform color. As explained in the project pack tutorial, 5V can be applied at either end of a strand. We exploit this in the 50 LED setup above by connecting power near the middle…25 LEDs are powered in one direction, and 25 the other.

With more than 50 LEDs you’ll need to provide additional connections for power. This could be done at the start of every strand…but using the same trick as above, it’s also possible to alternate strands: for 100 pixels, connect power to the wires at the end of the first and third strands, and the others will receive power through the mating connectors.
Distribute power using extra wires connected at the DC jack. You can screw down two or sometimes three wires in each terminal. If that’s too crowded or if you want more secure connections, solder your own “Y” connections and insulate these with heat-shrink tube.

To connect to the strand power wires, you can either solder and insulate these connections, or use Euro-style terminal blocks — these can be clipped apart to provide two + and two – junctions.

Software Adjustments for Larger Setups

No changes are required in the Arduino software; it’s designed to work with arbitrarily large LED setups. If you’ve already uploaded the code to the Arduino board, you do not need to repeat this process.

The Adalight Processing sketch will require modification. This is the tricky part that’s specific to your setup…it’s not a simple copy-and-paste change, because televisions have different bezel sizes, stands, speakers or other obstructions to take into account. Arts and crafts time!

We need to sketch out a grid that’s close to the shape of the screen, with the right number of squares around the perimeter to match our LED strands. It’s recommended that you try a few sizes and iterations on paper. You don’t have to put LEDs in the corner squares (some users don’t like the look and will skip them), and in the end you might end up with a few more LEDs than grid squares — that’s okay, you can bundle the extra unused LEDs behind the screen.

Number the columns starting from 0 at the left, and the rows starting from 0 at the top. We’ll need these coordinates later for telling the software the position of each LED pixel. One common arrangement with 50-pixel installations has 17 squares across and 10 squares down, because it’s close to the 16:9 aspect ratio of most HDTVs. Grid location (0,0) will then refer to the top left square, and (16,9) to the bottom right.

I like to put the first LED (the one closest to the Arduino) at the bottom center of the screen, because the USB and power cords can be bundled alongside other cables already coming from the display. But you can start at any position, whatever works best with your own telly.
(This is the view from the front of the screen. When installing the LEDs on the back, you’ll want to mirror the layout, flipping everything left-to-right.)

Open the Adalight sketch in Processing and look for the following block of code starting around line 68:
The two numbers highlighted above should be changed to the width and height of your grid (17 and 10 for our sample grid above). Leave the initial '0' untouched. And you can ignore the second line (in gray) — that’s for multiple monitor setups.

Next, look for this block of code, starting around line 87:
Each set of three numbers in curly brackets {a,b,c} represents one LED pixel, specified in-order along the strand (the first set is pixel #1, second set is pixel #2, and so forth). The first number of each set should always be 0, while the second and third numbers are the column and row (or “x” and “y” coordinates) of that pixel. For our 50 LED sample grid above, the first pixel (at the bottom center) would be {0,8,9}, the second pixel {0,7,9}, progressing around the perimeter in the order we chose earlier. (More hints: pixel #11 is at {0,0,7}, pixel #30 is at {0,12,0}, and pixel #40 is at {0,16,6}…see how it works?)

If you try to run the modified program but it throws an error, you’ve probably mis-typed one of these number sets. Make sure there are three numbers in each set, separated with commas both between numbers and between sets.

Building a Standalone Adalight Program

Once the Processing sketch is working to your satisfaction, you can build a double-clickable standalone version that doesn’t require running the Processing IDE every time.

Load the Adalight.pde sketch in Processing. Then, from the “File” menu, select “Export Application.” Select your OS type, do not check the full-screen option, then click the “Export” button. This will create an application folder containing the standalone program and some support files. You can quit Processing now and just use the standalone version.

We’ve experimented with a stealth windowless version of Adalight…can’t say for certain how reliable this technique will be across all different systems, but you can try out the technique described in this this forum discussion and see what you get.

Third-Party Software Options

If editing Processing code isn’t your style, there are third-party software options that can also drive Adalight.

Because we didn’t write these packages and aren’t familiar with their inner workings, we can’t provide technical support. If you’re having trouble getting an Adalight system up and running, we’ll always ask that you start with the Processing sketch first. Once that’s working, then feel free to explore.

We’ve found Lightpack to be easy to use with a nice GUI and good performance. Don’t download the firmware file, just the software — with Adalight mode selected, this works with our LEDstream sketch already on the Arduino. The Russian site for Lightpack is a little more bleeding-edge, and includes Mac and Linux versions.

Boblight is another popular choice among Linux users. This is perhaps the most complex to set up, even moreso than the Processing code. With the right plug-in it’s said to also work with xbmc, but we’ve never gotten this far with it.
Last updated on 2015-05-04 at 04.27.56 PM Published on 2012-07-29 at 11.58.37 AM