Glitching LED Display Proves Crowd Favorite

There’s something enchanting about the soft glow of a properly diffused LED, and this is only improved by greater numbers of LEDs. [Manoj Nathwani] was well aware of this, setting out to build a large display using ping-pong balls for their desirable optical qualities.Unfortunately, not everything went to plan, but sometimes that’s not all bad.

The matrix, built back in 2016 for EMF Camp, was sized at 32×18 elements, for a total of 576 pixels. This was achieved with the use of 12 WS2811 LED strips, with the lights set out on a 50mm grid. Cheap knock-off pingpong balls were used for their low cost, and they proved to be excellent diffusers for the LEDs.

With everything wired up to a NodeMCU, basic testing showed the system to be functioning well. However, once the full matrix was assembled in the field, things started to fall over. Basic commands would work for the first 200 LEDs or so, and then the entire matrix would begin to glitch out and display random colors. Unable to fix the problem in the field, [Manoj] elected to simply run the display as-is. Despite the problems, passers-by found the random animations to be rather beautiful anyway, particularly at night.

After the event, [Manoj] determined the issue was due to the excessive length of the data line, which in the final build was 48 meters long. While the problem may be rectified when [Manoj] revisits the project, the audience seemed to appreciate the first revision anyway.

LED displays will be a hacker staple until the heat death of the universe. Ping pong balls will also likely retain their position as a favorite diffuser. If you’ve got a great LED build of your very own, be sure to hit up the tips line!

9 thoughts on “Glitching LED Display Proves Crowd Favorite

  1. That grid would take 34.5 A at full whack, and he’s using a 50W supply (10A @ 5V).

    Unless he’s carefully adjusting the full scale to be capped at 1/3rd of the potential draw (60mA per pixel on full white), those dynamic patterns are going to likely exceed the capability of that supply.

    There is a reason Paul (ala PJRC) makes a strong point for bulk capacitance on large arrays.

    I very strongly suspect he’s browning out in places, and as a result, the buffered data is also being corrupted.

    Notice how you don’t see much blue in the recorded behaviour…

    1. While the 60mA figure really is an overestimation of the maximum power usage of any WS28.. LED Strip, 10A would indeed be very undersized.. If you ever use the color white.

      Btw, the FastLED library does provide features for limiting power usage. Could be using that.

      1. I think I saw he said things were good with the Adafruit Neopixel test programs, which (IIRC) set the global brightness to 127 in the setup function.

        If overlooked, and not applied to the self-written code…

        You perceive far less relative change in visible brightness when up the higher end of the scale, your eyes perceive far more change at the lower end of things.

        Poorly explained, but there isn’t much visible benefit to running at max brightness. If you dont do gamma adjustment, and dont cap the global brightness, you can get excessive current consumption for not very much visual benefit.

      1. The larger displays are no joke.

        You need to plan well and use some serious construction methods to keep things safe when working with that sort of current, and the heat that goes with it.

        I made 3 of these, and learned a huge amount. This is only half of one, but fully loaded these had 1,920 pixels around a 6″ aluminium tube. You can hear the cooling fans in the tube, but mainly, you can hear the fans on the 2x60A(!) 5V supplies running the show.

        https://youtu.be/6FifNi0Cg0o

    2. My Christmas tree uses 300 of those LEDs with a 10A power supply, and I have to run it at ~65% average brightness or the exact same thing happens to me. The top of the tree glitches and displays random patterns if I exceed that limit for more than a subsecond…

  2. My first attempt had 6 strings using a 20A supply. I noticed that the last couple of stings had pale blue instead of vibrant blue as in the first string. Measured the voltage at each string and see the drop is huge along the way. Looking into running heavier power wires to each sting in star arrangement but still having data line in one long sting. Capacitors at each string sounds good too, thanks. Ran it using FastLED and an Arduino Uno as a test. Works great.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.