64x64 LED Array
In December of 2023 I was in the mood to do some updating of my pixel software so I decided to power up this array again after it had been sitting unused for at least eight years, which meant that it was no longer functional. All four of the 3.3v / 25 amp buck converters were now dead. This is not surprising as they were cheap electronics from China.
So my options were to order four more 20 buck converters from China or just use the 5 amp buck converters I already had. As I didn't want to spend any more money on this projects, or wait for them to be delivered, I went with the parts I already had.
Once it was working again I saw that there are three pixels that occationally flicker white, in one of the sixteen sub panels. Although a bit annoying, I decided to ignore this problem for now as it does not interfere with software development.
Unfortunately, after spending all the time repairing the array I didn't end up having much time to work on the software.

Yes, building an LED array may seem rather pointless, but isn't that often the case with a home brew project?
I wanted to see how an array with a spacing of 10mm (100/meter) looked compared to my previous array which was 16.67mm (60/meter). I also wanted to see if adding a diffuser layer would improve the viewability of the array. It does!

In the above photo the array is not square do to the camera angle. The separation down the center is the result of the pixels not being evenly attached to the board yet.

At the time I was the lead engineer for the native-code Windows UI at Sococo, so I created a modified version of their windows client to display a live bobble head on the panel. The bobble head is displayed at 40% intensity.
It will be a bit flimsy standing it upright until I attach an aluminum frame to the back of the board and attach the diffuser to the front of the board.
Some parts of the array appear to be more fuzzy. This is because without the frame the board is not flat preventing the diffuser from being a uniform distance from the pixels. Also, the protective plastic is still attached to the transparent acrylic spacer and diffuser.
The actual size of the array is 640mm x 640mm. Construction details
Functioning clocks



Live video

Additional test images




The array is made up of sixteen 16x16 flexible panels which uses WS2812B LEDs. The top and right edges of the panels were trimmed to allow the panels to overlap and maintain the 10mm spacing.
Four 2x2 sub-panels were then assembled with each lower panel data input connected to the output of the panel above. Data input leads were then attached to each of the top panels, and power leads were connected to two points on the bottom side of each flexible panel after removing insulation.
All four sub-panels were then assembled into the full sized array. The flexible panels are held together using strips of
clear shipping tape
on the back side. The fully assembled array was then attached to the board with
double-sided cellophane tape.
The board is a piece of painted hardboard marker board
which was cut to 31-3/4" x 28" which exactly fits in my window.
I don't recommend using these flexible panels to build large arrays because they must be trimmed and since it is difficult to attach the data leads once they are trimmed. Another problem is that the overlap creates a small bump in the height of the array. I think a better choice would be to use 100/meter strips that are only 8mm wide, also available waterproofed. Using the the non-waterproofed strips would also allow for a 2mm gap between row to place small fasteners.
Also see more sample images on this array.
Diffusing the light
The diffuser makes a huge difference in being able to make out what is being displayed. The side effect
is that it is also easier to photograph. These types of LEDs seem to really confuse digital cameras.

Array without the diffuser at 5% intensity.

This is what I used for the diffuser. I chose the darker yet thinner product. The thicker product might be
good too. I bought a 1 sq ft sample first so I could see how it looked before spending lots of money on it.
ACRYLITE® Optical rear projection Grey 7D513 RP which
appears to have been discontinued.
It works best if the diffuser is about 1/10" away from the pixels, so I used a clear sheet of acrylic as a
spacer. This also helps to keep the diffuser an even distance from the pixels. An even distance is required
otherwise some pixels will look sharper and less defuse, as is visible in the sub-panel test photo.
ACRYLITE® extruded (FF), sheet, Colorless 0A000 GT
Testing one of the sub-panels under a small sample diffuser
The acrylic tends to warp from the heat of very bright pixels. That is another reason I used a full clear
sheet as a spacer rather than only using a spacer around the edges. Once I attach it around the edges
the spacer will not allow it to warp toward the pixels in the center. That is the hope anyway.
Unfortunately, it turned out that excessive heat does build up which causes the acrylic to bow outward making the center pixels appear considerably less sharp. I am considering switching the acrylic spacer layer under the diffuser to polycarbonate which is hopefully much stiffer. Better yet would be to find a diffuser that works well without the need for a spacer.
Power and heat
I powered the pixels with 3.3v instead of 5v. The pixels are way too bright at 5v with the result being
that you must dim them in software. This effectively reduces your color space. But operating them at
3.3v makes them naturally a bit dimmer.
These LEDs also draw way too much current at 5v if you have them very bright. At 3.3v it reduces the
current to about 1/2 that at 5v. It also reduces the heat. At 5v full white intensity they get hot enough
to smell. At 3.3v they only get hot enough to warm your hands.
I used 3.3v / 25amp buck converters mounted on the back of the array to provide power. This allows
me to place a 35v power supply many feet away without have to worry about voltage drop. At 3.3v full
white intensity it draws about 80 amps. On the 35v side this translates to less than 10amps.
The WS2812B is rated to operate down to 3.5v but the only buck converter options are 3.3v or 3.7v.
Since I wanted the brightness/current as low as possible I went with 3.3v and I have not had any
problems. Note that at the lower voltage it is even more important to control voltage drop.
Avoid using wire from China for power leads because it is copper clad aluminum which has a higher
resistance which will increase voltage drop.
Ray Wu was able to find me the buck converters and he now has them on his website under Electronics.
DC-to-DC buck converter. 3.3v/25 amp
Note: I powered my fence pixels with 35v and 12v buck converters.

The components
Currently the components are attached to the board using Scotch mounting tape since I can't put screws
through to the front. Long term I will glue something to the back which I can then attach components.

Each output of the ECG-P2-2 controllers drive 512 pixels which is two of the
16x16 flexible panels. Each 3.3v buck converter powers four of the sixteen flexible panels.
At the lower left is a TP-LINK 5 port ethernet switch which only cost $10.
Pixel Controllers
I am using the ECG-P2-2 controllers made by Joshua Systems. I selected this controller because each
output can address multiple universes and because of it's small size and it is available in an enclosure.
I was not able to find any single controller that was capable of managing all 4096 pixels.
Each controller output drives two flexible panels as 4 universes of 128 pixels organized as 16 pixels by 32 alternating rows with the first row starting at the upper right. The software address the full array as four columns of 16x64 pixels in 32 universes.
Final Assembly
In order to keep the array and the diffuser flat and to protect the rear components, I next added an aluminum frame to the back. The frame was constructed using 25mm x 50mm T-Slot framing from 80/20 Inc.

A 9v buck converter has been added to power the Ethernet switch and the fans from the primary 35v power supply. Four terminal blocks were also added to neaten up the wiring

Even though the array only gets warm in open air I was concerned it would over heat when fully enclosed under the acrylic.
So I added four 40mm x 10mm Noiseblocker
fans along one edge and air intake vents along the opposite edge.
These 12v fans are even quieter when powered with 9v, but unfortunately they did not move enough air so I added
a 12v buck converter off of the terminal block in the upper right (after the above photo was taken) to power the fans. That helps but there is still
too much heat build up when the brightness is above twenty five percent.
Excessive heat then causes the acrylic to bow outward making the center pixels appear less sharp. I am considering
switching the acrylic spacer layer under the diffuser to polycarbonate which is hopefully much stiffer.
On the front side a strip of high impact Polystyrene plastic
was added around the edge to raise it to the same height as the pixels.

In normal viewing you can't see through the diffuser, but with the camera strobe you can faintly.
Software
The software is my own and is written in C++ as a Windows console application. Making it a console
application made it easy for a colleague to build and run it on his Mac which he used to operate
pixel strings.
At some point I will make the software binary available for downloading.