Chain Generator

by Sal, published

Chain Generator by Sal Aug 12, 2012
52 Share
Download All Files

Thing Apps Enabled

Open in Customizer Order This Printed View All Apps



Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag

Thing Statistics

52228Views 24205Downloads


An OpenSCAD script that generates link chain designed to print without support or post assembly.

Update! New name, cleaned up script. Tossed out all old scad and stls.

Update 2, May 2013. Reworked the script to generate clean link geometry. TODO (low prio): Make the code as clean as the geometry...

Chain links are 22 x 12(15) mm with a 3.5 mm diameter cross-section. (Straight chain is 12 mm wide, others 15 mm) These dimensions are easily modified in the scad file or through customizer, but make sure to check that the links do not intersect!


Your printer needs good bed adhesion, OK overhangs and bridges. If you do succeed, just lift the chain from the bed and you are ready to go!

All Apps

Customizer is the easiest way to take great 3D printable designs and make them your own. Make your OpenSCAD designs infinitely more valuable by empowering the community to customize them.

App Info Launch App
Customizer Thing App

3D Print your file with 3D Hubs, the world’s largest online marketplace for 3D printing services.

App Info Launch App

Auto-magically prepare your 3D models for 3D printing. A cloud based 3D models Preparing and Healing solution for 3D Printing, MakePrintable provides features for model repairing, wall thickness...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Print through a distributed network of 3D printing enthusiasts from across the US, at a fraction of the cost of the competitors. We want to change the world for the better through technology, an...

App Info Launch App

Quickly Scale, Mirror or Cut your 3D Models

App Info Launch App

3D Print a wide range of designs with Treatstock. Easy to use tools to get the perfect result. The global 3D printing network that connects you with high-quality and fast working print services nea...

App Info Launch App

For people with Da Vinci 1.0 or any other printer that doesn't have good bed adhesion make sure to put a raft on it. I also set the layer height to 2.0mm and put speed to slow. I also have 90%-Solid. Those are the settings that work the best with mine.

Can i put stuff on the chain after it has been 3d printed?

I printed without support and it was a mess. Is it not designed for a Solidoodle 2?

It is not designed for any particular printer. Your problem description is very vague so it is difficult to help. Read the instructions for this thing, and print slowly to let the plastic cool off between layers. Good luck!

do you think it would be possible to print a hollow chain with a couple vertical shells? I'm trying to cut down on the print time but keep the aesthetics

Sorry for not replying earlier. I have never tried printing hollow chains. Go for it and tell us how it went!

you can print without support, right?

Yes, that's the idea.

New version again, as the last attempt had duplicated vertices due to a missing union() call. The mesh looked good, but slicing failed miserably. However, it should now be fixed in the scad, 5 and 10 link stl's.

A lot of the links slice/print with a bit of a hole/cut in the link. Examining the STL, it looks like the links are not entirely manifold since they have an internal wall which trips up the slicer. Any idea how to fix this? No amount of slicing tweaks seem to be able to fix it since its an STL issue. Otherwise, very cool thing!

Ok, scad and the 5 and 10 link straight chains updated. Please try again!

Haven't had issues with that myself (using slic3r). I will see if I can change the script to make the output cleaner.

After too many failed prints due to knocked over links I gave in and told slicer to add a 2mm brim to the bottom layer. That turned the whole affair into (only) an overhang and bridges problem which we all know is handled by a liberal amount of cool air and slow speed. Success at last!

I would like to have a go at printing this but wondered what the smallest feasible size might be? I was thinking of printing some 1/6 chain link to go with an action figure kitbash that i am working on.

This one was printed at about 50% scale: http://www.thingiverse.com/make:16144http://www.thingiverse.com/mak.... I would not go much below that with my printer (.35 nozzle), but feel free to try, and please report on your conlusions! If printing a complete chain fails, you might try printing separate open links lying flat on the bed. (almost like these http://www.thingiverse.com/thing:67445)http://www.thingiverse.com/thi.... But of course not as cool as having a solid chain...

Interlocking chain link
Chain Generator
by Sal

Updated to work in the customizer! Don't forget to increase width to 15 when choosing circular or spiral types! (If you change any other parameter except number of links, you are on your own ;))

Oh, man -- I should have added this to my sporkchucks! Very nice!! 8-) 8-)

It is never too late! The default size chain is definitely sturdy enough for some culinary ninja-moves. :-D

Ok, major update. Threw out all the old stuff and in with the new. Let me know if you need anything of the old back... Now you can print long chains in a spiral (Many thanks to dzach for leading me on to that, I hope stealing your idea was OK) O:-) I have not tried printing a spiral yet, maybe something for tomorrow...

One application for a 3m chain that comes to mind is for a dog leash.

Weeeelll, that would be if you have a small dog or print in metal... But a typical dog leash clip would be a nice Thing.

not if you print in PLA! I have one of these printed in PLA that I've been challenging my friends to pull apart for weeks and noone has had any success (even when they play tug-o-war with it)

Well, I started by doing all the math for the model and found out that describing a spiral parametric chain is not the easiest exercise in the world. So I ended up tweaking the 60
° angle and the spacing instead of calculating it and reached a quick solution. It only took 28' to compile (that's minutes) =-O

The actual scad file I have for this spiral chain is for a 3m long piece that will fit a 215x215mm print bed, with the links as close together as possible without touch
ing, but I had no patience to compile or print it.

I am looking for good applications for this chain... Maybe a nice clip to attach it to something? (or to itself for a bracelet) Ideally something that can be printed together with the chain, but that is not necessary... Any ideas? Pointers to suitable things?

Here is an 1m long chain in an archimedean spiral layout. At the end I attached the Gothic part that I made earlier, while the link at the end was being built. Apologies for the crap photo.

I'll upload the scad file with the archimedean spiral as soon as I overcome some problems that I have with http://amazonaws.comamazonaws.com that do not allow me to upload files.

Wow, that is great! (why didn't I think of making a spiral?) :) now who is up for calculating minimum radius for a given link geometry? ;) lets see if I can dig up some pen and paper...

20 cm chain (22 links at approx. 1/2 scale) printed in 15 minutes :)

Working on code for variable length open or closed chains. Had hoped to publish today but not quite there yet...

New script uploaded with support for closed chains, see description.

It is easy to link two chains together while printing, look at the last of attached pictures. To make room for more links try setting spacing=l/2+.5 in the straight_chain module.

This is great!

If you set n=4 in module halflink in chain.scad you get a Gothic chain :)

I tried to modify the .scad file to do a 180 degree loop that would let you print lots more chain on a single build platform.. I can't figure out how to do it parametrically without the use of variables or recursion. I have a feeling it's possible, but it might take someone more experienced than me to do it. Anyone care to take a shot at it?

// Quick'n Dirty addition, need to clean


module looped_chain(links=5, d = 15, t = 4, l=20)





    for (i=[0:links-1]) {