Show me the youtube video of the wall in action!

Everyone wants to make giant LED displays to show their cool, geometric LED waves, or fuzzy pink Elvis art. However, in order to address a massive wall of LEDs, you have to figure out how to turn your fuzzy pink Elvis art into a string of zeros and ones which get properly buffered, shifted, and sent down a wire at the speed of electricity - no easy feat. However, in this instructable, we're going to demonstrate how to use a PixelPusher LED controller coupled with L.E.D. Labs' iPad software to eliminate that pesky middle step of digital buffoonery.

Step 1: Get Your Supplies

This instructable focuses on the back end components needed to make this wall work, although we will talk a bit about fabrication of the superstructure as well. This method of controlling LEDs requires the use of a pixelpusher to do the heavy lifting of physically driving the LEDs. The LED Labs software running on the iPad does the heavy lifting of taking your image / video / algorithm and breaking into chunks the PixelPusher can understand.

For this instructable, we are going to be controlling WS2801 LEDs in "pixel" packages instead of "strip" packages. They are very common, and are a bit more expensive than some other options, but are very easily controlled from a wide variety of chipsets. Typically, strip packages are much more common since their installation is substantially simpler, but to get the effect we desired with this piece, we had to go after the pixel versions instead. We ended up getting ours from a bulk supplier in China since we needed around 2000 LEDs, but going local is always simpler and saves your sanity in the long run if you need smaller quantities:

5V WS2801 pixels on Adafruit: http://www.adafruit.com/product/322
Pixelpusher on Illumn: http://www.illumn.com/heroic-robotics-pixelpusher....

Additionally, you'll of course want an iPad, the appropriate 5V power supply, and a wireless router. Our favorite wireless router to use is the Ubiquiti consumer models since they are equipped with some advanced features like auto-resetting and the like which can keep your LED system running nonstop. However, they are a bit more advanced than other consumer level routers, so pick one that suits your expertise level.

<p>I'm finding a lot of WS2811, not 2801s online, would those work with the pixel pusher? I know they're a 3 wire unit, I wasn't sure if the Pixel Pusher was compatible with these. Also, I noticed the PP is limited to 25 amps. But your display looks like it's more than 50 amps total. How do you power the pixels, if the power exceeds the 25 amps per PP? </p>
Yes, you can use LEDs which support 1 wire and a fixed clock like WS2812s, just need to switch up your pixel.rc file to match...I've actually just made a much larger display with WS2812s which is around 5,000 pixels.<br><br>Remember - you don't need power to be managed through the pixelpusher to use it. If you think you're going to draw more than 25A, just shunt power straight to the LEDs and have the PP manage data only. You'll have to share ground between them, but that is all.<br><br>
<p>I'm planning on making 4 separate panels (identical) with about 500 pixels each. Could I use one controller, and just run data to each panel? Or would it be easier to install 4 separate PPs and network them together. Obviously 1 PP would be cheapest, but if the programming would be easier with 4, it may be worth the extra money.</p>
<p>I don't know how you are planning on programming, so its up to you on this front. </p>
<p>Very cool! Can you explain how you determined the power supply wattage? Is all power delivered to the led strips from the PixelPusher?</p>
For wattage of power supply, take current per LED and multiply it by the number of LEDs. You can under-rate this a little bit to save some cash if you know you won't blast them all to white at the same time. (i.e. 60mA * 4000px = 240,000mA = 240A @ 5V. 240V * 5V = 1200W power supply req'd).<br><br>Adafruit has a really good primer on this and how to distribute power amongst the LEDs here: https://learn.adafruit.com/12mm-led-pixels/power<br><br>Hope that helps!
<p>I have ws2812b led strips. They only have three connectors. Power data and ground. How do I make those it on the 4 pins on the PP board where it says power data clock ground? Is there an adaptor pin?</p>
Hi! Ws2811s and 12s have a fixed clock, so there is no clock wire. I don't know if the 12b's are officially supported by pixel pusher or not, but you can run the 2811s by setting that for your strip parameter in your setup file, and you can use onewire as a multiplier to match the clock on those LESs. More info is at the hardware configuration guide: https://sites.google.com/a/heroicrobot.com/pixelpusher/home/getting-started
<p>I have tried connecting a string of ws2811s to a pixel pusher but the first pixel is keeping its red colour on all the time. I tried this with a WS2812 strip to the same effect. So if its meant to be black, it's red, if it's meant to be green, it's yellow. Did you face this issue and how could it be solved. What might this be?</p>
<p>That's a really weird one. Are you setting the strip attributes correctly in your pixel.rc file? See step 3. You could also try using swap to swap the data and clock lines in your setup...that could be it...</p>
Nope, that didn't work. I'm finding this to be very strange. It is clearly a signal issue since it lights up red on a GRB string and green on an RGB string. It is just the first address/led that's doing this.
Yes I'm pretty sure the rc file is ok.<br><br>I set it to be a ws2811, in grb (for the string light) and in rgb (for the strip) order. The string light turns its first led in red and the strip in green. Mine are already swapped. Are yours swapped or did you attach the pin to the data line without swapping? I swapped so I could have data next to ground (+ C D - instead of + D C -)<br><br>I'll try unswapping it. Great instructable btw.
<p>I'm very curious as to why you used two PixelPushers. From what I read a single unit should be able to control the amount of LEDs you used. Any particular reason for doubling down?</p>
<p>It has to do with mapping. If I used 9x outputs, I could make each of the panels exactly the same, and have a way easier time mapping the pixels to the overall display. Although the total number of LEDs is less than the maximum allowed by the PP, it is far simpler to program large LED matricies if you know your individual units are the same (particularly if you want to do video / picture display). </p>
<p>Hi, so i want to make some thing like this but a much more scaled down version. Approximately 3M x 2m (10' x 6.5').</p><p>Would i essentially undertake all the same steps / software? and just set the software to a smaller area?</p><p>How many pixels do you think i would need?</p><p>Thanks</p>
I understand that each led draws .06 amps at full white, what will happen if with your setup, you turn them to ful white?
hi <br>Great job, how we tell controller our wall DPI?! for example 50 x 30 pixel?? <br>how it can figure it out?
It will depend completely on your control setup, and how you connect all the LEDs together. in my example, there is a pixel layout feature in LED lab that I used, otherwise you'd do this in bare code in processing if you were using a pixelpusher as we did in this instructable
<p>This is great! Thank you for the clear instructions. Has anybody looked at letting other sensors control the Pixel Pusher? I'm thinking like a webcam or an XBox kinect sensor would allow for some really cool interactions with the wall.</p>
hey! although my implementation was using an iPad for simplicity, PP is natively controlled via processing, so yes - lots of sensor and graphic stuff could happen there via native code or arduino formats.
<p>did you use only 1 psu for all 2000 leds?</p>
yes - check out the first picture in step 4, one big 5V power supply for a router and all LEDs.
<p>hello! i will be building this soon , I've already purchased some strips and a pp to experiment and then expand it =)</p><p>but i don't get why do you used 2 apps when 1 has 8 outputs can you epxalin this to me please?</p>
I had 9 outputs :-)
This is an great use of leds! Looks amazing.
<p>Things have become so much easier in the past decade or so. When we did a wall with about the same number of pixels in 2001 it was an immense amount of work and custom programming! I know Pixel Pusher appeals to a broader audience, as it is well supported by now, though I've seen some really impressive work done with other controllers - the LEDscape stuff using Beagle Bone works really great and is also totally scalable, including some truly massive displays. Fadecandy is fantastic for higher-resolution work in the colorspace, though the USB interface limits scalability somewhat. And new stuff coming out all the time, it seems.</p><p>It's worth noting that ALL of the controllers geared towards the cheap LED strips and pixels coming from China are limited in color resolution since their controller chips (even the newest ones) use fewer bits than the truly professional (and expensive) systems made for LED video walls and while there are software tricks that will help for some applications there is something to be said for that, especially when the color steps become really noticeable at lowest intensity levels.</p><p>I would also point out that for people who want to build a wall or panel with a simple grid pattern, the cost per pixel can be greatly reduced by going with dedicated LED arrays on PC boards, and using them like tiles. I've seen costs as low as 15 cents per RGB pixel using this approach! The real advantage of using premade chains of pixels such as you used is gained when mounting them to irregular surfaces and in nongrid patterns.</p>
<p>Hi. I designed PixelPusher- as far as colourspace goes, PP supports five-axis pixels (RGBOW) and 48 bits per pixel. Even using the APA102 BetterPixel parts (which are cheaper than the TLC59711 48-bit-per-pixel-plus-seven-bit-brightness parts) we support 29 bits per pixel.<br><br>We also sell 20x20 PCB tiles. :-)</p>
That's great, for the few serious users who have the resources to fabricate their own custom hardware at the display/pixel end of their video wall. <br>The processing resources available at the controller end (i.e. PixelPusher or whatever) are FAR less limited, since you only need a few comparatively fast and expensive boards to format the data streams going out to all of those strings or panels of RGB-only pixel control chips. Bit per pixel support isn't the limiting factor here.<br><br>Virtually everyone who isn't a professional with a serious budget is going to be cost-sensitive enough to find anything other than RGB pixels using cheap Chinese control chips (whether APA102, WS28xx, LDP8806, or whatever) even an option for their wall-sized array, however. Even if they have the skills and time to design their own PC boards using pixel controllers with better resolution such as the TLC59711.<br>By comparison, the 36 and 48 bit-per-pixel RGB displays used on pro-grade video walls can look ultra-smooth at the low brightness end, and global pixel brightness control just isn't as flexible.<br><br>I've seen expensive multiwatt 4, 5, or 6 channel (LED color) pixels on the market (no pixel controller chip of course, just the LEDs). Are there any 4 or 5 channel monolithic LED packages akin to the low-power RGB ones typically available to the public, or any comparable ones with onboard pixel control chips?<br>
<p>The TLC59711 chips are available to the public and support 52 bits per pixel- they're really quite nice, though they're not integrated into LED packages (monolithic is the wrong word, since *no* LED controller-LED system is monolithic- you can't fabricate control logic in gallium nitride yet).</p><p>The APA102s, for which PixelPusher supports the 5-bit brightness vernier, is a significant improvement over simple 24-bit pixels like the WS2812. They stop clip-down and banding from happening at low brightness levels. We're also working on support for a later APA part which has deep pixel support, with a true 48 bits per pixel.</p>
interesting! first I'm hearing about the LEDscape stuff - I'll definitely check it out. The cool part about the iPad LED Lab app is its built in interactivity options, and intuitive (read: non-programmer oriented) controls for creating new scenes. Clients *love* to be able to build their own scenes for the piece. However, sometimes we really just need a static rotating loop though that I can seal up in a box somewhere which is much better suited for an embedded solution. Thanks for that!<br><br>I hear you on color depth - since we're normally not making real *video* walls for people, and more like light up architectural features, a bunch of our clients have appreciated being able to shave some cash off of the price by moving to less expensive tech. Definitely a good point to bring up on color depth though!
Good work!
<p>That looks really cool... and expensive. :)</p>
<p>haha - well, smaller versions aren't as expensive :-D</p>
<p>Very cool setup. How many LEDS is that? and how much was the build? </p>
Thank you!! Its a bit over 2,000 LEDs. the cost of the LEDs alone was a bit over $1,000 from Chinese suppliers - would be a bit more than double that from US sources. Hope that helps!
<p>could I get the led supplier source? Was it on alibaba?</p>
yes - no one fancy :-)
how much would this cost on an average ?
<p>hi </p><p>this is really great project thanks a lot for sharing this with us realy cool i like it and i thinkj i will go to make it 2</p>
<p>Very nice build! I have a bunch of the W2801 pixels I got from China and have been looking for something cool to do with them. This fits the bill!</p>
<p>Super awesome ! How about a packman game on it ;P</p>
haha :-)
<p>Thats sooo cool! I want to try this Project as a schoolprojekt and i was wondering how many Pixelpusher i can chain together and run with LED lab?</p>
If I remember correctly, on a single pixelpusher you can push 4000 LEDs. However, the *really* amazing part of the PPs is that you can chain multiple controllers together to push as many pixels as you can pay for (in this instructable I used 2 of them to make my life easier on the install). LED Lab supports as many PPs as it finds on your WiFi connection, so theoretically there is no limit to the number of LEDs you can use with this setup.
I love this, you should sell and install them (thinking clubs and pubs). Could do picture sized variations as well. To you it might seem simple but to me I'm marveling at the shiny and thinking I'll never have time to do that.
Thanks for the compliment! This one was built for a client...Sheet Metal Alchemist used to be just me, but now its the name of my custom fabrication firm...check out: www.sheetmetalalchemist.com :-)
Would an arduino be capable of driving the LEDs in a reasonably sized (say, 25x25) matrix smoothly (as opposed to the pixelpusher)? I've been meaning to look into it, but school has been getting in the way.
<p>Yes, Ladyada has a really good example of this on her website. I've become a fan of the pixelpushers though because of their extendability and ease of programming beyond the basics (i.e. I see a lot of LED arrays which use only primary colors instead of smoothly bending waves over the 256^3 colorspace). For some info on how to use an arduino to power a 32x32 array, check out: https://learn.adafruit.com/32x16-32x32-rgb-led-matrix/overview</p>
<p>Hi, I was planning to build something similar with my leftover ws2811 leds. What's the spacing between each led? Seems quite nice</p>
<p>Hey Jokkeh! The spacing is about 3-5/16&quot; on center of the LEDs. Its kind of a weird number so I could generate even spacing of the pixels to fit into 9 equally sized panels. Hope all that helps!</p>

About This Instructable




More by sheetmetalalchemist:"Spiro" - a 5' Diameter, Wall Mounted Spirograph Make an interactive iPad controlled LED Wall How to Survive an Inpatient Hospital Stay 
Add instructable to: