Magyro Ball

A toy ball with magnets in a cardan suspension inside.



A free software license that requires that all work based on this must also be free software as in freely remixable and sharable by anyone under the same license but may be used commercially.

Learn more or download attribution tags


Note: This was not test-printed yet and the SCAD code is still alpha.

This design is copied from:
"ThinkGeek :: Nanodots GYRO DUO: Magnetically Gyroscopic Balls"
and brought into a well FDM printable form.

Default parameters are for magnets
with: h = 5mm - d1=25mm - d2=15mm

possible source:

86kg & 45kg holding force on full contact ! Take care of your fingers !

### How to find the optimal magnet(s):

You may need to recompile the stl files for your specific magnet size.
It is assumed that all magnets have the same thickness.
Try to choose the two magnet radii such that they fill a common sphere as good as possible. 
For feedback the OpenSCAD code echoes two "corner radius factors" back. If one of the magnets has a "magnet corner radius" factor below 1 you may want to increase this magnets radius or alternatively decrease the other magnets radius until both factors are near one.

### Tipps for making the gyro-ball:

*) Thinner & harder bearing pins should significantly reduce the probability of mechanism clogging since the magnets then create higher lever forces.

one could use pieces of:
iron nails / copper wire / brass rod / printing filament / toothpicks? / ...

*) Tip for making pins from filament:
Use a retractable utility knive to make a notch into a piece of ~3mm diameter PLA filament then use pliers to break the piece of (ABS may not be brittle enough to break) then cut eventually occuring pieces that deviate from a flat fracture off.

*) use thinn oil to lubricate the joints

*) keep mass of the gyro parts small (low infill) but note that this is not that importatnt since the magets are heavy anyway.

### Further notes:

*) through all the mechanics it's unavoidasble that the distance between the magnets becomes quite significant => big magnets that create big balls with relatively thinn shells are preferrable.

*) when it comes to gimbals you should know about the gimbal lock

*) the OpenSCAD design is animatable!

*) it might be interesting to try adding excess mass to one magnet side

*) are there sources for fully transparent plastic balls?

### Infos about some of the design decision:

*) All sizes are dynamically generated from magnet size so that the maximum amount of magnet power can penetrate through the shell

*) For simplicity of design and assembly an irreversible assembly design was choosen that includes glueing and or plastic welding.

*) the gap between the gimal ring and the gimbal sphere is determined indirectly via the "bearflatadd"-patrameter (no specific reason for that) <<< change?

*) in the code:
radii with underline postfix correspond to the radii of the bearing flats
radii without underline postfix correspond to the majority of the gimbal surfaces

*) the parameter relationships became so complex because all the stuff has to be cramped together to the absolute minimal space

*) GPL was choosen as license because lack of original idea but quite a lot of code

Materials and methods

two big disk magnets;
two (or three?) small disk magnets;
3mm diameter axle pins

for the precompiled stl files these should work:

hight of both magnet types: 5mm

diameter of big magnet: 25mm

diameter of small magnet: 15mm

possible source:



Issues are used to track todos, bugs or requests. To get started, you could create an issue.


Fe8aff430d86fa3086ffd41a9321d05a?default=blank&size=40Lion U added this to the Interesting collection ago
45b247430de7c92fb77ad3d1e3aa455a?default=blank&size=40Jody Lesiak added this to the toys collection ago
Mini tetrapod openconnects display largeLukas SΓΌss published this design ago