LED Flex Cube (3x3x3)

A 3x3x3 LED cube designed to use a flexible PCB to create a twist (or should that be fold) on a classic project.

Similar projects worth following
The LED cube is a classic electronics project. It is a great chance to practice soldering and the difficulty ramps up significantly as the dimensions increase. However, once you've made your 3x3x3, 4x4x4, or NxNxN cube where do you go next? how about adding some LEDS to your very own PCB? but why shy away from the led cube?

As i'm cheap and relish a challenge I chose to stick within the limits of the prize offered by OSHpark, 2'' total area. Aiming for 4 layers in the cube, 3 layers for the LEDs and 1 for control/power.

In order to create something more than just a flashing paperweight I've included an accelerometer. So now it can be a paperweight that flashes as you pick it up...

The flex cube contains 4 layers; 3 layers containing 9 LEDs each and 1 containing power and control.

A big part of any LED cube is... the LEDs! I chose the APA102-2020 as they are tiny and serial-addressable. Getting 9 on each layer wasn't too much hassle, however when routing was nearly complete I realised that the centre LED on each layer was  almost completely obscured and so added four cut-outs to the top two layers. I'm sure this won't make much difference but worth a try. I've scattered decoupling caps throughout the layers, however they tend to clash with components on other layers when it get folded.

The control is provided by a SAMD21, which is overkill to just drive some LEDs but it's what i'm familiar with so that's why it's on the PCB (It could have been far simpler to go with a 5V micro for both power supply and level-shift reasons but oh-well). 

Power is provided over USB with the 3.3v supply for the SAMD provided by a simple linear reg. I've seen the APA102s sink the best part of 100mA at fully brightness & displaying white, so 27 of them might be a little outside what a standard USB power supply can provide, but i'm sure it'll be fine.

I've used the MMA8451 as the accelerometer. This was a last minute decision, and it probably shows in how it's been squeezed into place.(I'll try and add some more detailed images of the control layer). But if it works i think that it'll be worthwhile in adding some user interaction.

I used Altium for the schematic capture and layout. This worked really well as Altium has inbuilt flex PCB support, enabling you to define bend lines, flexible/rigid regions, and to see how the the PCB looks as it is folded, which is really useful for checking part-to-part clearances as well as any unintended clearances.

I tried to stick with flex-PCB best practice where possible, but 2 square inches isn't much room and I decided that more space on the PCB would be better than completely following the best practice on minimum bend radii as long as I only bend them once (maybe). I tried to alleviate this by adding hatched fills to the bend areas, and only routing on one side of the PCB. I'll let you know how robust this seems to be if i get my hands on any...

As i couldn't find room to add mounting holes for standoffs there's no real way to make the PCB self-supporting as-is. This is definitely a project that might benefit from stiffeners or from a rigid-flex layer stack, but also those both sound like a lot more effort. To support it in its current form I'd like to try a resin pour, maybe with a clear 3D printed frame to hold it in place. Both of those are a little outside of my current knowledge, if you've got any thoughts then hit me up! 

next steps:

If this turns out alright, i'd consider making a slightly larger version. Probably still 3x3x3 but trying to get a better "aspect ratio" and maybe adding in room for standoffs, battery and more sensors, any maybe add some strain relief to the bending sections.

Just showing the copper and overlay layers as they stand currently, i might add the full set of gerber data later if anyone asks for them

x-zip-compressed - 34.46 kB - 05/28/2019 at 18:45


  • 1 × SAMD21 microcontroller
  • 27 × APA102-2020 Serial RGB LED
  • 1 × SN74LVC3G17DCTR Logic ICs / Gates and Inverters
  • 1 × 47346-0001 Connectors and Accessories / Telecom and Datacom (Modular) Connectors
  • 1 × MMA8451 Semiconductors and Integrated Circuits / Misc. Semiconductors and Integrated Circuits

  • Project submitted

    ben0111000005/29/2019 at 08:00 0 comments

    I started this project after seeing the Hackaday Flexible PCB competition (link). I'd been interested in flexible and rigid flex PCBs before but had never bitten the bullet and designed my own.

    This has been a good chance to learn about some best-practice for flex layout and it's been a fun project to work on.

    It's also been the first project that I've published on Hackaday, which has provided a nice chance to look back over a project and reflect on what i might do differently next time (mainly adding logs as the project progresses, rather than adding everything at once).

    Thanks for stopping by!

View project log

Enjoy this project?



Andrey wrote 08/24/2020 at 23:00 point

Have you actually made it? Can you see the LEDs through the substrate?

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates