About
MADOS is a free and Open Source 3D printed building block system that uses the MADOS joint system. It allows 3D printed blocks to be assembled into larger structures such as toys, storage, small items of furniture, and more.
MADOS started as a personal project to create a 3D printed alternative to T-Slot Aluminium Extrusion, which is a system used to make engineering structures and to make custom items of furniture.
The design went through several iterations until the MADOS joint was designed, which allowed the blocks to be connected without needing separate fastener pieces.
The design was further refined to allow all internal MADOS joints to be connected to by Snap Fit, Twist, and Diagonal joints, which each have 10 different strength options.
The goal of MADOS is to create a global standard for joints used on 3D printed parts. This will hopefully make parts easier to design, easier to assemble, more reusable, and compatible with designs from other creators.
This website was created as a tool to search and filter through Parts, and share Assemblies that use MADOS joints or are compatible with the MADOS system.
How it Works
MADOS Joints have a narrow triangular shape and they go diagonally across the square face of an object.

This allows them to be printed without support structures on almost any side of an object at any 90 degree rotation. They are designed to be spaced 10mm apart from each other, and can be printed on every side of a 10mm cube without the joints overlapping.

The internal joint has a symmetrical shape meaning parts can be joined at different rotations. Every internal joint is identical, no matter the rotation or the angle it's printed at.

Whilst the internal joint is always the same, there are different types of external joint compatible with this design. All external joints can be printed on the top or side of an object without support structures.

Each type of external joint has 10 different strength options, labelled 0 to 9. This number is included at the end of the file name, and is often debossed on the physical part so it can be seen on printed models.
0 is the weakest but easiest to join, and 9 is the strongest but most difficult to join.
Each model also has a recommended strength setting based on PLA model testing. Models with many joints usually have a lower strength setting.

The most common joint type is the snap fit joint, which is connected by simply pushing the part into the joint until it clicks into place.
Some Snap Fit parts have spacings between each of their joints that allow the parts to be connected to each other.
A Half-Size Snap Fit joint is often used on parts where the joint is printed vertically. This makes them less likely to break off along the layer lines.

Another type of joint is the Twist joint.
Twist joints need to be printed in groups of 4 to get the best performance. They are connected by twisting the part Clockwise whilst pushing it into the joint until it produces a click.
This usually gives a stronger connection than the Snap Fit joint and they are more resistant to pulling and bending, however they are limited to groups of 4 meaning they can't be used to connect wide parts. Because of this, they are most effectively used to create frames of larger objects.
Twist joints can also be mirrored to get Anticlockwise joints (Counter Clockwise).

The final type of joint is the Diagonal joint, which is connected by sliding the joint down and inwards at 45 degrees until it produces a click.

Because this joint slides in at an angle, parts with multiple diagonal joints can connect to 2 or 3 different faces at the same type, allowing it to be used as corner brackets.

Some parts have diamond shaped channels where separate joiner pieces can be attached. These joiners can either use an Internal Snap Fit joint, which connect by being pushed into the channels, or they are Internal Threaded Joiners, which are screwed in. These joiners are used to connect 2 blocks together, or to attach M8 threaded bolts and rods.

MADOS parts often have a dipped feature on one side of the channel, which acts as a Poke-Yoke feature. Aligning these features across 2 different blocks ensures that the threads will be aligned when screwing them together. This works for both the larger thread on the threaded joiners, and the M8 thread within different joiner parts. Aligning the Poke-Yoke features on one face, will mean all other faces are aligned too.

This means blocks can be combined with M8 rods to create stronger structures by securing them down the channels inside the blocks.

That's a summary of how this system works. Check out the Assemblies page to see examples of structures you can make with this system.
