Made a truncated icosahedron (soccer ball) out of 32 PCBs (12 pentagons, 20 hexagons) joined by 3D printed corner connectors and covered with 3D printed diffusers. Each PCB contains 32 side-emitting LEDs per edge. My goal was to create a hollow shape that would let you see the patterns covering the whole structure. As a bonus, the near-spherical shape makes the assembly pretty sturdy.
This looks super cool !
The patterns work great on it too! Did you spend a long time writing and tuning them?
Wow, you always amaze. Great job.
Almost none at all. Most of the playlist is 3D patterns which look great unaltered. I’ve also had success mapping 2D patterns to work on the surface of a sphere by calculating the normalized azimuth and polar angle for each point and mapping those to the values of X and Y for some 2D patterns.
Do you have a guide/write up on how you did the polar to Cartesian mapping you’ve described? Sounds very useful
This looks amazing, I can imagine several of these as chandeliers for a stage.
Did you 3d print the PCBs or did you source them from somewhere?
Sure. For every pattern that has a render2D, but not a render3D, I add this render3D function:
// This function computes spherical values with each call
export function render3D(index, x, y, z) {
x -= 0.5
y -= 0.5
z -= 0.5
render2D(index, 0.5 + atan2(y,x)/PI2, acos(z/hypot3(x,y,z))/PI)
}
It maps with distortions, but generally looks pretty good when mapping 2D functions to the surface of a sphere. Not sure how good/bad it would look with other 3D distributions of pixels.
I ordered the PCBs and had PCBA done by JLC. It’s not too costly as these things go, since each PCB contains only LEDs and capacitors. I also 3D printed corner connectors with heat set inserts that hold the PCBs together and diffusing covers that sit on the outside of each PCB to diffuse the light.
I will eventually get around to publishing the details of this project, though probably not for a few weeks yet. I think it’s reasonably buildable by most makers with good soldering and 3D printing skills.
I look forward to your full write up!
I have the soldering skills but have yet to dive into the world of 3d printing. I am going to get a 3d printer pretty soon and will eventually start brushing up on Blender.