Infinity mirror rhombic dodecahedron

Hi all,

I’m building 2 of these

I’ve put this in show and tell, but i just recently found out about pixel blaze and wondered if PB would work with what i want to do…

Some details:

There are 3 data inputs each feeding 340 leds, total 1020 leds per dodecahedron.

I want to somehow that both are “aware” of the other, so that means 6 inputs 2040 leds to manipulate. I have experience with teensy, arduino and esp32 and some others. I’ve done 32 parallel inputs with a teensy. I think esp32 should be able to parallel 8 channels or something and also use DMA so animation can render without waiting for the led protocol. Can PB do that too? Or will there be a PB firmware that can do that? Closed source right? Can you compile your own stuff in? A framerate of 50 Hz would be good, is that doable?

Not sure if PB is the right match for this, but i sure like the tech. Scripting and viewing your animations on the fly is really nice :stuck_out_tongue:


Hello and Welcome!

I’m sure other people will want to expand on this answer and discuss your specific needs with you, but just to get things rolling, yes, you can do this using a single Pixelblaze to control both dodecahedra.

To drive the number of LEDs and channels you’re working with, you’ll want a Pixelblaze3 and the “Pro” version of the output expander board. It’s also entirely feasible to put a Pixelblaze in each dodec, and have them communicate via GPIO or to control them both from a separate computer via the websockets API.

The Pixelblaze is partly open source, partly proprietary (mostly the byte-code compiler and VM) but it’s a capable enough platform that it can manage most projects without any alterations to the firmware. Code and documentation can be found in this repository. (Link goes to the language documentation - a great place to get an overview of Pixelblaze’s software architecture and capabilities.)

Frame rate will be dependent on the complexity of the pattern you’re running. Obviously, it’s not going to be quite as quick in the end as compiled code, but you’ll have way more flexibility to adjust things on the fly, and if you’re like the rest of us, you’ll probably wind up writing more, and more ambitious patterns because interactive development is just so nice. The 2D/3D mapping support is probably the best out there right now too.

If you’re coming from fastLED, the programming model is going to be a little different. Lately I’ve been explaining the flow as more-or-less similar to a GLSL shader, rather than being a straight up, imperative model (although you can do that too if you want.) The best way to get the flavor is to check out some of the code in either the pattern library or in any of the tutorial tasks in this forum.

Again, welcome, and if you have questions about any of this, please do ask!

1 Like

Yeah that looks really cool. I’ve been wanting to DIY my own hypercube, and will eventually run it with a pb setup

Just finished up soldering my 2nd dodecahedron. I have watched some more pb videos and found Alan Doak’s rhombic triacontahedron running with PB, but it seems just a bit too slow for me. I’ll probably code some custom stuff on esp32, but i’ll keep following PB and maybe use it for another project.