There are tons of models for Magic/Rubik's Cube on the net. I was interested in trying to model one that is printable with a simple one-color/material printer, can be assembled without glue or additional hardware, and still has decent mechanical behavior.
After having created an initial model I learned a lot of things that you could do wrong. In fact, my first model had tolerances of 0.2mm between the individual pieces since I thought this would improve mechanics but I found that those tolerances add up to so much extra space that the result was way too loose. That combined with some other design faults in the original model led to the situation that while it still worked it could just fall apart while playing with it. As a result, I never published the initial model.
This new model is designed with absolutely no extra tolerances and I found that when printing with PETG this just leads to exactly the right tension in the cube to get a good playing experience. As such this also serves as a good test for the accuracy of your printer. I strongly recommend printing with PETG since the model includes a snapping mechanism for which PLA probably is too brittle. But in the end I didn't try this, so feel free to try it if you like.
My print was done with the PrusaSlicer default settings for 0.2mm layer height (QUALITY) on my MK3S+, meaning 2 perimeters and 15% infill. With similar settings, you should expect good results on other printers as well. Note that the snapping mechanism is designed in a way that the slicer will increase infill on the mechanically critical part automatically without special settings needed in the slicer.
Note that the included pegs for assembling the pieces are very tight and might require players to insert them properly. If you feel this is too cumbersome you might replace them with smaller pegs and compensate for the missing friction by using glue. By doing so you obviously give up one of my purity goals but this decision is up to you.
To get a full cube you simply have to print the included model 6 times, obviously with different colors.
Assembly instructions:
I plan to add the OpenSCAD sources to the model later but first need to clean up the code from my experiments a bit. For now, you already get the STL file. Note that for some reason, that I did not yet debug down, OpenSCAD created some non-manifold faces in the model. They do not seem to confuse the slicers though.