Customizable flexible name bracelet

by bmcage, published

Customizable flexible name bracelet by bmcage Feb 3, 2013
3 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

14493Views 2482Downloads Found in Bracelets


A flexible bracelet you can adapt to your liking, and add your name, or another text, on.

For a two color version, see: http://www.thingiverse.com/thing:56257
For a full inside version, see http://www.thingiverse.com/thing:319183

Update 3.5.2014: fixed the issue with the excessive material in the inner circle


Open it in the customizer. As bracelet stretches, give inner radius so as to sit nicely on your wrist. Set outer radius, set height, and set the text you want on the bracelet, eg a telephone number where you can be reached!.

The text can be in relief, or as holes. When printing relief, make sure you print with 100% infill. Holes still must be tested on a printer, I assume you should print thick and slow so as to not jump over the holes too fast.

It is important that you give the nozzle diameter of your 3D printer, as this is what will make sure your bracelet does not break easily. The thickness is one nozzle diameter, if you want the bracelet thicker, set nozzle to 2 or 3 times your real nozzle diameter

More from Bracelets

view more

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

Can I sell this to my friends

I gave these files a licence that allows commercial, so you are free to do what you want.

Hi, what material would you use to make it nicely flexible?

i've also had the closed triangles, and i tried printing it again and again, but it starts off broken.

The letters are from a library and are flat, while the surfaces are curved. There will always be some problems with that. A derivative with non-curved outside curvatures could be made though.
In my experience, it is best with a thing like this to inspect the gcode before printing. For example, Cura messes up the slicing at 0.4 thickness, but works good with 0.5.
You can check before printing with this: http://gcode.ws/http://gcode.ws/ from http://www.thingiverse.com/thing:35248http://www.thingiverse.com/thi... if your slicer has no build in good gcode viewer

GCode Analyzer/Visualizer
by hudbrog

O.K. I had more time to look at what you are doing to construct the "Spikes", and I can see that this is where the problem is. There are two problems really, but only one affects the closed triangles.

On the outer rim, the "Spikes" come all the way out to the edge, and they are off to either side of letter faces. Ideally, you want the "Spikes" to come up behind the letter faces, the same way they (almost) do on the inner rim. This will leave that essential bit of extra room between the letter faces that will always work.

Since I mentioned the back faces, I may as well address the orther problem. The "SPikes" there push way into the inner faces, and this leaves a little bit of dangling face edges. It's probably too small to show up in most prints, but if you want to tidy things up, that's the place you want to look.

As I'm typing this, I'm noticing that the text also protrudes out the back of the letter face. I'm sure this is intentional, so that the letters can be printed as holes, but when not printing as holes, you should puch the letters outward a bit, so that they only print on the front. This makes for a cleaner print when using zero infill. Be sure to compensate for letter thickness. It would also be a nice addition to allow the adjustment of the letters to fill up more of the letter face.

If I have more time, I can feed you some snippets, but I'm still trying to wrap my head around the code to figure out what's what :)

The zig zag spacing is too close, and produces closed triangles when you slice it.

The gap is 2 or 3 times the nozzle diameter, so if you give a correct nozzle diameter, and don't scale the bracelet in your slicing software, closed triangles should not be possible. I personally sliced with replicatorg.
With what variables are your running customizer? Perhaps big difference between inner and outer radius? I suppose this could end up with closed triangles.

//inner radius of the bracelet in mm

inner_radius = 28; //[15:150]

//outer radius of the bracelet in mm

outer_radius = 33; //[15:150]

//length of the bracelet in mm

length = 15; // [5:60]

//diameter of your 3d printer nozzle in mm

nozzle = 0.5;

//number of sections on bracelets

sections = 17; //[15:60]

//text to put on bracelet

text = "";

//view text as holes?

holes = "no"; // [yes, no]

//text thickness as amount of nozzle

text_thickness = 3; //[2:6]

use <mcad fonts.scad="">

module test(){



baseheight = 0.8;

r1 = inner_radius;

r1a = r1*1.01; //I added this

r2 = outer_radius;

r2a = r2*0.99; //I added this

n = sections;

gapin = 3*nozzle; //I changed this

gapout = 5*nozzle; //I changed this

alpha = 2*PI/sections;

alpha_1 = alpha - gapin/r1a; //I changed this

beta = 2*PI/sections;

beta_1 = alpha - gapout/r2a; //I changed this

alpha_2 = gapin/r1a; //I changed this

beta_2 = gapout/r2a; //I changed this

alpha_3 = nozzle/r1a; //I changed this

beta_3 = nozzle/r2a; //I changed this

fudge = 0.01;

//process the text, we have beta_1 for the symbol, use beta_2 for border!





wordlength = (len(theseIndicies));

factorygap = 1;

scale_x = (beta_1-beta_2) * r2 / x_shift;

scale_y = (length - factorygap*gapout) / y_shift;

thicknessword = text_thickness * nozzle;

// Create the Text

module alltext() {

for( j=[0:(len(theseIndicies)-1)] ) 

  rotate([0, 0, (3/2*beta_2 + (beta_1-beta_2)/2 + j* beta)*180/PI]) 

  translate([r2 -1.5* nozzle, -(beta_1-beta_2) * r2 /2 , factorygap/2*gapout])









module innerholes() {

union() {

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

  rotate([0,0,(-alpha_1/2 + i* alpha)*180/PI])


      cube(size=[3*nozzle,gapin, 3*length], center=true);




module spikes() {

linear_extrude(height=length) { union(){

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

  polygon(points = [ [r1a*cos((-alpha_1/2 + i* alpha-alpha_2/2)*180/PI), 

                      r1a*sin((-alpha_1/2 + i* alpha-alpha_2/2)*180/PI)], 

                     [r2a*cos((2*beta_2/2 + (i-1)* beta)*180/PI), 

                      r2a*sin((2*beta_2/2 + (i-1)* beta)*180/PI)], 

                     [r2a*cos((2*beta_2/2 + (i-1)* beta-beta_3)*180/PI), 

                      r2a*sin((2*beta_2/2 + (i-1)* beta-beta_3)*180/PI)], 

                     [r1a*cos((-alpha_1/2 + i* alpha-alpha_2/2-alpha_3)*180/PI), 

                      r1a*sin((-alpha_1/2 + i* alpha-alpha_2/2-alpha_3)*180/PI)]


               paths = [ [0,1,2,3]]);



linear_extrude(height=length) { union(){

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

  polygon(points = [ [r1a*cos((-alpha_1/2 + i* alpha+alpha_2/2+alpha_3)*180/PI), 

                      r1a*sin((-alpha_1/2 + i* alpha+alpha_2/2+alpha_3)*180/PI)], 

                     [r2a*cos(((i)* beta+beta_3)*180/PI), 

                      r2a*sin(( (i)* beta+beta_3)*180/PI)], 

                     [r2a*cos(( (i)* beta)*180/PI), 

                      r2a*sin(( (i)* beta)*180/PI)], 

                     [r1a*cos((-alpha_1/2 + i* alpha+alpha_2/2)*180/PI), 

                      r1a*sin((-alpha_1/2 + i* alpha+alpha_2/2)*180/PI)]


               paths = [ [0,1,2,3]]);




module outerholes() {

union() {

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

  rotate([0,0,(beta_2/2 + i* beta)*180/PI])


      cube(size=[3*nozzle, gapout, 3*length], center=true);




module outercirc(){


cylinder(h=length, r=r2, $fn=100);

translate([0,0,-fudge]) cylinder(h=length+2*fudge, r=r2-nozzle, $fn=100);




module innercirc(){


cylinder(h=length, r=r1+nozzle, $fn=100);

translate([0,0,-fudge]) cylinder(h=length+2*fudge, r=r1, $fn=100);




module baseform(){








if (holes == "yes") {





} else {






I'm using Skeinforge to test this out. SF reports that at 0.4mm layers height, the edge width will be 0.72mm. Keep in mind that the slicer is not aware of the size of the nozzle. It is only concerned with the volume of plastic coming out. I do not know if this is the case with replicatorG.

I also notice that with some settings, the letters protrude out the back, and in other cases, they produce an indentation. I'll have a look at the code, and see if anything yells out at me, and get back to you.

My printer can't handle 0.4 layer height, ugly things come out with that, so never tried that again. It is strange however that a larger height increases the edge width above the objects width. I would call that a problem with the slicer, as obviously you will not be printing the object as constructed. The solution would be to increase the nozzle size. If you set it to 0.8, the width of the bracelet will be 0.8, the gaps will be larger, and layer height of 0.4 producing 0.72 edges should not be a problem.

I don't know of a way to make the letters actually go round, so they are flat, what causes the issues with the letters you see. I suppose using the base letter polygon, and projecting on a cylinder would be nicer and fix that, but a bit more code needed. MCAD I used here does not provide that as far as I know.

I now discovered another bracelet like this exist, which is based on cutting out pieces in scad, see http://www.thingiverse.com/thing:13505http://www.thingiverse.com/thi...

Perhaps I should add the letter adding code to that, as cutting out wedges will scale better perhaps.

Stretchy Bracelet
by emmett