Parametric Hinge

by rohingosling, published

Parametric Hinge by rohingosling Mar 19, 2017

Design Tools



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

129510Views 27365Downloads Found in Parts


Parametric Butt Hinge

This is a parametric butt hinge designed in OpenSCAD, offering a wide range of parameters for customization. The hinge is designed to be printed in one step, but the individual leaves can be printed independently if desired. And in the case of applications that require an external pin, the default fused pin may be disabled, to leave a pin shaft ready to accept an external pin, during post printing assembly.

In the event that the Thingiverse Customizer is not working, which happens from time to time, you can still open and edit SCAD files directly in an SCAD editor, like OpenSCAD.

Experimental Version:
An experimental version of this model may be found here, https://www.thingiverse.com/thing:2351153
The experimental version includes additional features that are still being developed, or would otherwise over complicate the base model. I have made the experimental version available for those who would like to brave early access to some of the features that will possibly find there way into the base model, eventually. Please note, the experimental version is not updated as often as the base model, and may still include bugs and untested configurations.

Parameter Overview

Assembly Options

  • Male Leaf Enabled
    Print the male leaf if true, otherwise omit it from the print.

  • Female Leaf Enabled
    Print the female leaf if true, otherwise omit it from the print.

  • Leaf Fillet Enabled
    Enable filleted leaf corners. Aside from aesthetic value, filleted corners can help with warping to a degree.

  • Pin Enabled
    By default, the hinge is designed to be printed in one go, with a hinge pin fused to the female leaf. However, there may be applications where one may prefer to use an external pin. For instance, in the case where a metal pin is preferred for the sake of strength. In applications where an external pin is to be used, the pin may be omitted from the female leaf, by setting "Pin Enabled" to false.

  • Pin Auto Size Enabled
    If true, this will set the pin diameter to the leaf gauge.
    If false, the pin diameter may be specified by the "Pin Diameter" parameter.

  • Pin Shaft Counterbore Enabled
    Cut a counterbore into the end caps of the knuckle joints if true.
    While the pin shaft counterbore may be added even when the internal fused pin is enabled, the primary purpose of the pin shaft counterbore is to allow what ever external pin or bolt is being used in the case of an external pin, to be set flush with the top and bottom edges of the hinge, in the case where the internal pin is disabled, i.e. "Pin Enabled" is false.

  • Fasteners Enabled
    Include fastener holes if true.
    If false, leave the leaves free of fastener holes.

  • Knuckle Gusset Type
    Select whether or not to use knuckle gussets, and if so what type. Knuckle gussets add strength to the transition between the knuckles and the leaves. The length of the knuckle gussets is equal to the fastener margin size, so that the gussets will never overlap any fastener holes.
    There are four styles of knuckle gusset to choose from.

    1. None: No knuckle gussets.
    2. Linear: Straight edge gusset projected from a tangent on the knuckle down to the fastener margin on the leaf.
    3. Circular: Basically a simple fillet, tangential to both the knuckle cylinder and the surface of the leaf.
    4. Parabolic: A vertex form parabola, tangential to the knuckle cylinder, with its turning point tangential to the surface of the leaf at the fastener margin.
  • Throw Angle
    The angle of the hinge joint. The hinge joint range is from +180 degrees fully closed, to -90 degrees fully opened. The default throw angle is 0 degrees, ie. opened flat.
    This can be used either for assembly analysis, or in the case where one wishes to print the hinge standing vertically, it can be used to set a partially closed angle to keep the hinge stable during printing. For vertical printing, an angle of 120 degrees should keep the hinge stable during printing.
    If you just want to print the hinge flat on the build plate, then keep the throw angle at 0 degrees for your printable model.

  • Flip Model
    Rotate the model 180 degrees about the z-axis. This is useful for viewing the top and bottom pin shaft counterbore parameters.

  • Resolution
    The geometric model resolution. Corresponds to the number of sides used to construct cylindrical parts of the model, like the knuckle joint segments, and the leaf fillets.
    For example, a "Resolution" of 8, would specify cylindrical component elements to be constructed from 8 sides. a "Resolution" of 32 would result in 32 sided cylindrical component elements, and so forth.
    For a smooth model, a "Resolution" of 64 and above is recommended. By default "Resolution" is set to 128.

  • Component Color
    This is used purely to color the model in the Thingiverse Customizer. It should not affect the color of the model, printed from a color printer.

Hinge Parameters:

  • Hinge Width
    The width in millimeters, of the entire hinge, from the outer edge of the left leaf, to the outer edge of the right leaf.

  • Leaf Height
    The height in millimeters, of the hinge along the knuckle joint axis.

  • Leaf Gauge
    Defines the thickness in millimeters, of the leaves and the radius of the knuckle joint.

  • Component Clearance
    The inter-component gap in millimeters.
    Recommended values range from 0.3mm for a tight fit, to 0.5mm for easy-er manipulation after printing. Clearance values of 0.3 or below can be challenging to print. I have succeeded in printing a few of these hinges with component clearances of 0.2mm and 0.25mm. However, quite often, sub 0.3mm clearance results in a locked up knuckle joint, where the leaves break before the hinge loosens up. A clearance of 0.4 or greater should release without to much trouble.
    Note: The more knuckle segments there are, the greater the initial joint friction strait off the build plate. So for higher knuckle counts (7 or greater), component clearances of 0.4 or higher, may be required.
    If the knuckle joint is not moving free at 0.4mm or higher, try re-printing slower at a higher resolution, in particular z resolution. Lower temperatures can help as well.
    For PLA, a resolution of x=0.3, y=0.3, and z=0.15, at a speed of 6mm/s or less, with temperature 190 degrees C, seems to support a component clearances of 0.3mm to 0.4mm relatively well.
    All of the sample STL files in the "Thing Files" section, are set to 0.3mm component clearance.

  • Knuckle Count
    The number of knuckle segments in the knuckle joint.
    This number should be an odd number.
    For most applications, a knuckle count of to 3 or 5 should suffice. However, higher knuckle counts can offer increases in strength relative to gauge size and hinge dimensions.

  • Pin Diameter
    Manually specified pin diameter. This value is only used by the model, if "Pin Auto Size Enabled" is set to false.
    If "Pin Auto Size Enabled" is true, then the pin diameter is automatically set to the leaf gauge size.

Pin Shaft Counterbore Parameters:

  • (Top or Bottom) Pin Shaft Counterbore Diameter
    The diameter of the pin shaft counterbore. The counterbore is only added if "Pin Shaft Counterbore Enabled" is set to YES.

  • (Top or Bottom) Pin Shaft Counterbore Depth
    The depth of the pin shaft counterbore cut. The counterbore is only added if "Pin Shaft Counterbore Enabled" is set to YES.

  • (Top or Bottom) Pin Shaft Counterbore Shape
    The shape of the pin shaft counterbore hole. Currently circular, square and hexagonal are supported. In the case of square and hexagonal, the parameter "Pin Shaft Counterbore Diameter", refers to the diameter of a circle inscribed inside the square of hexagon.
    For the square shaped counterbore, this means that the diameter of the counterbore is equal to the size of the sides of the square.
    For the hexagon, the counterbore diameter is equal to the perpendicular distance between any two parallel sides of the hexagon.
    The counterbore is only added if "Pin Shaft Counterbore Enabled" is set to YES.

Fastener Hole Parameters:

  • Fastener Head Type
    Can be set to either counterbore for pan head machine screws, or countersunk for flat countersunk screws.
    The chamfer angle for flat countersunk may be adjusted by varying the other fastener hole parameters. For instance, a thread diameter of 3mm (e.g. M3 machine screws), a head diameter of 9mm, and a countersink depth of 3mm, with give a chamfer angle of 45 degrees.

  • Counter Sink Depth
    The depth below the surface of the leaves to sink the fastener heads.
    For M3 machine screws 2.5 to 2.6 is usually enough.
    If the fastener holes are not countersunk, then there will be mechanical interference between the fastener heads the the opposing leaves when the hinge is closed.

  • Fastener Thread Diameter
    The diameter of the threaded portion of the fastener hole.
    This can be made smaller than the fastener thread in order to support self tapping screws, or larger to give machine screws enough room to pass through.

  • Fastener Head Diameter
    The diameter of the counter sunk head portion of the fastener hole.
    Usually a good idea to make this diameter 0.5mm to 1.0mm larger than the actual fastener head diameter. For M3 machine screws, which typically have 6mm diameter pan heads, an "Fastener Head Diameter" of 7mm works well.

  • Fastener Count
    The number of fastener holes per leaf. The total number of fastener holes in the entire hinge will be "2 x Fastener Count".
    Fastener holes are arranged in one or two columns along the height of the hinge, as specified by "Fastener Column Count".

  • Fastener Column Count
    Specify whether to arrange the fastener holes on a leaf, in one or two columns.

  • Fastener Margin
    The distance from the circumference of the fastener head, to the edge of the leaf.
    Values between 3mm and 5mm are recommended for small to medium gauge hinges.

Print Settings

Printer Brand:




x = 0.3, y = 0.3, z = 0.15


66% or more recommended.


Print Speed, Resolution, and Temperature

To get a smooth moving hinge with a small component clearance (0.2 - 0.3), print slowly (4mm/s to 8mm/s), at a high resolution.

I have printed a few of these hinges in PLA at 190 degrees Celsius, with 0.2mm, 0.25mm, and 0.3 mm component clearances, using a 0.3mm nozzle, and a z resolution of 0.15.


Supports are required to support the curved regions of the knuckle joint near the build plate.

For small gauge hinges, you could probably get way with no support at all. But for larger gauges of about 5mm and above, you will probably want to add a little support from at least 50 degrees for a nice neat curved finish.

No support is required for the internals of the knuckle joint segments, as long as reasonable component clearances of between 0.2mm to 0.3mm are used.

Build Plate Adhesion

If you have a heated build plate, then you should get away with a brim or a skirt.

If you are printing on an un-heated build plate, you may experience warping, in which case a raft should help, at the expense of a poorer quality finish on the bottom surface.


For component clearances less than 0.4, the knuckle joints can be quite tough to free up. There is also a risk of the leaves breaking if you try to free up the knuckle joints with too much force.

For simple hinges with 3 to 5 knuckle joints, and a component clearance of 0.4mm or more, you may find that the hinge moves fairly freely strait off the build plate.

If the hinge is locked up after printing, which will most certainly be the case for component clearances of 0.3mm or less, there is something you can do to ease the process of loosening up the knuckle joint. What I find works fairly well is to soften the hinge in hot water for about 30 seconds, to a minute, and then very quickly take the hinge out of the hot water and rapidly try to move the knuckle joint. Because the hinge will be soft after removing from the hot water, care needs to be taken not to let the leaves of knuckle joint bend. If it looks like any part of the hinge is bending, put it back in the hot water and try again in 30 seconds to a minute, until the knuckle joint begins to loosen up.

I have never measured the temperature of the water. But for hinges printed using PLA, I find hot water from the bathroom tap seems to do the trick. The hot water in the case of my bathroom tap is just too hot for sustained contact with my hand, but cool enough that I can quickly reach in and remove the submerged hinge without being seriously burned.

If you are printing in ABS, you will need significantly hotter water, perhaps close to boiling, if not hotter. In which case, gloves and great care will be required in order to prevent injury.

How I Designed This


Fusion 360 animation, showing the throw range of the hinge.

More from Parts

view more

All Apps

Upgrade this Thing with Thingiverse Apps


Edit, personalize, or revise this Thing

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

I guess you know that Thingiverse isn't functioning in regards to your app. Other than manually modifying the SCAD file, do you have an alternative to getting STLs generated?

Yup, the Thingiverse Customizer has been broken since about December or so. I understand that Thingiverse is busy working on fixing it. So hopefully we'll have it back at some point soon.

Nope, no other apps like Thingiverse Customizer, that I know of. However, the best way to work with parametric SCAD models, is actually directly in OpenSCAD on your local machine anyway. If an SCAD model has been written to integrate with the Thingiverse Customizer, then you should see all the user configurable parameters at the beginning of the file, formatted as the Thingiverse Customizer requires.

I try to comment my code as descriptively as possible, to make it easier for people to use my SCAD models, even if they don't know much about coding. In all of my parametric SCAD models, I structure the code in the same way. If you start at the top of the file and scroll down, the first code section will be a bunch of constants, which you'll want to just leave as they are. And then the second code segment from the top, commented as "Thingiverse Parameters", are all the public parameters that you would normally see in the Thingiverse Customizer. You can just adjust those public values in that second section directly, and press F5 to update the model in the 3D view. Once you get used to doing that, there is a good chance you may end up actually preferring to work with SCAD models in OpenSCAD.

That's what I'm doing (editing in openscad). I did see another thingiverse mention that the current upstream (beta/alpha) version of openscad can read the same parameters and present it. I'll do a test print of the default setup to see how my printer does - to understand limits of all the settings. Anyway - thanks for posting the scad file. It makes it really straight forward to use.

Comments deleted.

This is an incredible piece of work. Thank you.

It is a pleasure, thank you very much for the compliment.

Comments deleted.

Can't open in cura and doesn't open in customizer. moving on...No reason why you couldn't use the STL standard. Looked good but too much work when there are tons others out there...

  1. I can't give you any STL files, because it is a parametric model. Parametric models require the consumer to set the parameters, and then generate STL files based on the configured parameters.

  2. SCAD models 'are' the standard for parametric models on Thingiverse.

  3. You can't open SCAD models in slicing software like CURA. You can open SCAD models with SCAD supported CAD software, like OpenSCAD, or the Thingiverse Customizer.

  4. The Thingiverse Customizer hasn't worked for a few months. Content creators have no control over this. However, it is not a problem, because you can just open SCAD files in OpenSCAD directly, and set the parameters there.

  5. I'm not so sure there are tons of others though. I stand to be corrected, but at the time of this writing, I think this may be the only parametric hinge model on Thingiverse. I'd be keen to take a look at any others that you find though. Parametric models are more complex to create than static models. I'd be keen to see how other designers have implemented parametric hinges, if you can find any others.

Firstly, these are nice thank you but I don't know how can I use this file. Is there any stl file ?

Comments deleted.


This is a parametric model created in OpenSCAD. You can generate .STL files from the OpenSCAD model (.SCAD file), either through the Thingiverse Customizer, or directly through OpenSCAD.

Thingiverse Customizer
You can access the model and configure its public parameters through the Thingiverse Customizer. The Customizer link "Open in Customizer", can be found near the bottom of the menu to the right of the pictures.

Alternatively, if you have OpenSCAD installed on your local computer, you can just download the .SCAD file and open it directly in OpenSCAD. The public parameters may be found in the source code under the section commented as "// Thingiverse Parameters." Once you have configured the model the way you want it, you can export the model to an .STL file.

Using the Thingiverse Customizer is the easiest option. But opening and editing the model in OpenSCAD directly, gives you access to the full source code, and you can then modify the model even more that what is possible through the Thingiverse Customizer alone.

Something I forgot to mention, is that the Thingiverse Customizer is not working at the moment, for some reason. So until Thingiverse fix it, the best way to configure parametric SCAD models, would be to install OpenSCAD, and edit the .SCAD files directly in OpenSCAD.

The hinge printed well but i can't seem to get them to free up without breaking the model. Kind of a flawed concept. Any tips on how to break it loose without damaging?

What material are you using? I have been using PLA for all the samples in the pictures. About 90% of the ones I’ve printed with PLA have worked. About 10% snapped at the joints, so that does happen. I have not tried with ABS or any other materials stronger than PLA.

There are a few things you can try.

  1. Print with the highest resolution you can. I have got these hinges to work, and in some cases work strait off the build plate, using a 0.3mm nozzle, and a print resolution of (x,y = 0.3, z = 0.15).

  2. Try increase the component clearance. The tightest component clearance I’ve achieved during testing is 0.15mm. However, 0.3mm to 0.4mm tends to give more consistent results. Try printing samples with increasing component clearance in 0.1mm increments, until you find a component clearance that works. However, if it is not working by the time you get to a component clearance of 0.6mm, then the problem is probably print settings rather than component clearance. With my printer, I get working mechanical components consistently, with component clearance between 0.3mm and 0.4mm.

  3. Print at a low temperature. So far, I have only tested these hinges with PLA. I still need to test with ABS to find the print parameters that will work with ABS. But for PLA, I have gotten these hinges to print and work correctly at temperatures between 180 and 190 digress C. Anything higher, and the PLA tends to fuse the joints.

  4. Print slowly, around 4mm/s to 8mm/s, with a filament cooling fan at max speed. By printing slowly at a low temperature, with a filament cooling fan, you improve the printers bridging capability, which helps to ensure maximum clearance between components. Before printing these hinges in one step, you may want to try some bridge tests, to check that your printer is configured to comfortably handle bridge spans of at least 10mm without any drooping. If your printer config isn’t setup to handle at least 10mm spans without drooping, then the joints on these hinges will definitely lock up.

  5. If you are using PLA and printing in one step, try softening the hinge assembly a bit by leaving it in hot water for a about 30 seconds. I am not sure what the ideal temperature should be, as I have not gotten round to measuring yet. I generally fill a wash basing with hot water from the hot water tap. After about 30 seconds of soaking in the hot water, I take out the hinge and while it is still soft from the hot water, I gently attempt to manipulate the joint until it breaks free. For PLA, this works most (~90%) of the time. I have not tried this with ABS. If you are going to try with ABS, then perhaps soak the hinge assembly in ‘boiling’ water in a pot on the stove, and then, using gloves to protect your skin, attempt the same manipulation to free up the joint while is it still hot from boiling on the stove.

  6. Disable the one-piece pin. If all else fails, disable the one-piece pin, by setting the “Enable Pin” parameter to “No”. Now you can print out the male and female leaves independently, and use an external pin. You can use nails or index machine screws as pins in that case.

I always get a "forbidden" error in the customizer queue.
Did I miss something?

Customizer is completly broken! I have no idea why nobody is fixing it :/

Here is a possible workaround:

When in Customizer mouse over to the top right of the preview window and click "View Source".
In the window that pops up select all text, right click and hit "Copy".
Open a new Notepad file on your Windows PC and paste the copied text.
Save as "YourFileNameHere.scad" <- This creates an .scad file.
Go to: http://www.openscad.org/
Download SCAD for FREE and install.
Open SCAD, click "File" and "Open".
Browse to your newly created .scad file and open it.
In the right hand window you'll see the code that generates your object.
Anytime you edit anything in the code, be sure you mouse to the top of that window and click "Preview" or hit F5 on your keyboard.
If the object creator is nice, every parameter of your customizable model will have a clear comment as to what changing that parameter will do.
When your done customizing the model click "Export to STL" at the top of the window.

Enjoy your customized model.

Not my Text, found here:

hello rohingosling

I really don't get it why your reply is flagged for moderation?
I get the full message through mail notifcation.

The customizer is totally broken in my oppinion.
Even the devs said they know the issue, and it will be fixed the tuesday before christmas... (look at the app comments)
But they fixed nothing :(

I tried it with your "AllowCookies" Method.
Still broken, same error.

I tried it in InternetExplorer.
Still broken, same error.

I will now try it directly with OpenSCAD...

Thx for your response :)


And me neither. Have no idea why they flagged the comment. The comment saved fine first time. And then I edited it, to correct a spelling error, at which point it got flagged. Maybe they prefered my poor spelling.

Anyway, it will take too long to write it all out again, so I'm just going to wait until they clear the comment as safe for all audiences.

And yup, just use OpenSCAD directly. It works much better.

Two points.

I'm not sure what is wrong with the Customizer. It works in my browser. But after doing a bit of a Google search, I found a lot of people who have solved the problem of the Customizer not working specifically in Google Chrome, by adding "customizer.makerbot.com" to the Chrome browser's "cookie allow list". If you want to try this, you can find the Chrome cookie allow list in Chrome settings as follows.

Settings/Advanced/Privacy and security/Content settings/Cookies/Allow/ --> Add

After pressing the "Add" button, you can add "customizer.makerbot.com", to allow cookies for the Makerbot customizer.
I'd be keen to know if this solves the problem?

Another slightly easier way to download the source .scad file, if you want to load it directly in OpenSCAD, is to download it from the "Thing Files" tab. Just under the main profile picture of the model, you will see a row of tab buttons, "Thing Details", "Thing Files", "Apps", ..., "Remixes". Select "Thing Files", and you can just download the SCAD model directly from there, ready to be loaded into Open SCAD.
This is exactly the same as papavomsee's solution above, except that you don't need to copy and paste anything, as the file already exists.

This is in fact the best way to work with SCAD models, directly in OpenSCAD. As papavomsee pointed out, you have access to all the source code and can make more modifications that would normally not be possible in the Thingiverse Customizer. Plus, Open SCAD just works better than the Thingiverse Customizer. You can move and rotate the model more freely, which makes working with the model much more comfortable.

And, I like to think I am one of those modelers who's code is fairly neat, structured and well commented. ;)

can u probaly change the scad file a bit to edit the holes on each side seperatly? most of the time i want to use them for different material thickness on each side so i have to use smaller screws on the left and bigger screws on the right

That is a good idea. I may not get time to do it soon. But that is a good idea. I'll definitely add that feature as soon as I get a chance.

In the meantime, something you can do, is create two models with differently configured holes, and the pin disabled on both models. Then print out the male and female leaves of each model individually. Then you can use a nail or a long machine screw as an external pin, to assemble the two leaves with their differently configured holes. Using an external metal pin would also give you a stronger assembly.

'Open in Customizer' doesn't work. What happened?

I just tried now and it appears to work on my side.
What is not working? Is the Customizer not opening, or is the model not working in the Customizer?

This project looks very complete! Thank you for sharing it!

I would like to suggest another feature that I really find useful:
Do you think it would be possible to add auto-close/auto-open functionality?

You can find an example of a hinge with auto-close on Thingiverse (https://www.thingiverse.com/thing:1595140). However, this one is not parametric so it's not so useful altogether.

What do you think?

Hinge, autoclose
by airald

Thanks, glad you find it useful.

I think an auto close feature is a great idea. I will definitely add it to my to-do list.

Great functionality.

It works fine.
Is it possible to add a feature?

The male part encloses the female pin-part completely which is great for stability and strength.

Is it possible to have a small (parameterized) opening in the male part (snap together).
Then the male-part could snap around the female pin.

Now I do use the openscad script but would need to remove (using 3d software) a small part of the male-part so it snaps into
the female pin.
The two leafs are integrated into two (own model)parts without screws. it is more easy printing when the leafs are integrated into the parts due to the size of the complete model (does not fit on a 20x20 cm buildplate) and when done printing the two parts could just be snapped together.

if you consider changing the script, it would be an advantage to parametrize where the opening of the snapgap will occur.

My 2 cents of thoughts :)
As already said: great work and cool that you made the script public.

Thanks. And that is a good idea. I will definitely look into it.

I get a syntax error line 450 when I load the file in Openscad :/

Sorry, my bad, was openning it with OpenScad 2014 version...
Working fine with 2015.

Oh wow! Thanks for the support! ;)
And while I'm here, I love the work you're doing with Atelier. Looking forward to seeing how that turns out.

How hard would it be to add radius to this? Meaning either the hinge is completely a cirlce, or where its like a rectangle but with half circles on the ends.

I have created a separate experimental version of the model, which may be found here. https://www.thingiverse.com/thing:2351153
I have only added circular hinge support to the experimental version for now. It has an option for a completely circular hinge, as well as an option where the knuckle joint is left uncut, but the leaves are cut into semicircles from the edge of the knuckle joint, roughly as you describe above.

You can find the "Hinge Shape" parameter in the "experimental-parameters" group in the Customizer.

For the sake of mathematical convenience, I used the existing "hinge-parameters / Leaf Height" parameter, to set the radius of the circular hinge shape, both for full circle and semicircle leaf options. In this case, the radius is half the value of "hinge-parameters / Leaf Height".

To configure the fastener layout, use the following existing fastener parameters.
"fastener-parameters / Fastener Count"
"fastener-parameters / Fastener Column Count"
"fastener-parameters / Fastener Margin Distance"

Experimental Parametric Hinge

It should be possible. I'd have to think about how to arrange the fastener holes. I'll take a look on the week end.

Is there a way to make one side of the hinge higher than the other side?

I want to use this hinge to install my acrylic door to an Anet A8 printer sitting in an IKEA Lack "enclosure" and I need the part which holds the acrylic glass to be 3mm "higher" because of the height of the glass. Or on the other side just make the part of the hinge which is screwed to the table 3mm higher to allow the 3mm distance for the acrylic glass to be mounted.

Thanks :)


I have added differential leaf gauge support to an experimental version of the model, which may be found here. https://www.thingiverse.com/thing:2351153

The experimental parameters for the experimental version, may be found under "experimental-parameters" in the Customizer.

The differential leaf gauge feature in the experimental version of the model, works as follows:

  1. Specify a regular leaf gauge using the existing leaf gauge parameter, "hinge-parameters / Leaf Gauge".
  2. Use the differential gauge parameter, "experimental-parameters / Leaf Gauge Differential Offset", to specify a differential offset to the base leaf gauge.
  3. Positive values for "experimental-parameters / Leaf Gauge Differential Offset", will cause the female leaf to be thicker than the male. To create a thicker male leaf, use negative values for "experimental-parameters / Leaf Gauge Differential Offset".

In a case where you might want the gauge of one leaf to be 5mm, and the other to be 8mm (3mm higher than the thinner leaf), you would proceed as follows.

  1. Compute the regular gauge thickness, by calculating the average of the thick and thin leaf gauges. leaf_gauge = (5+8)/2 = 6.5mm.
  2. Compute the differential offset from the regular leaf gauge calculated in step one, by calculating the delta between the thick and thin leaf gauges. differential_gauge_offset = (8-5)/2 = 1.5mm.
  3. Set "hinge-parameters / Leaf Gauge" to 6.5mm.
  4. Set "experimental-parameters / Leaf Gauge Differential Offset" to 1.5mm. Because the value is positive, the female leaf will be 8mm, and the male leaf will be 5mm. To make the male 8mm and the female 5mm, simply set "experimental-parameters / Leaf Gauge Differential Offset" to the negative value, -1.5mm.


  • The reason for the less intuitive approach of using an offset to the existing leaf gauge, as opposed to the more intuitive approach of just using two parameters to specify the male and female leaf gauges independently, was to more conveniently integrate with the existing math, without making to many changes to the code.
  • There are some rendering artifacts that appear in the fastener holes in the Customizer. These should not be present in the STL file or the prints that you make from the model. They are just imaging artifacts caused by SCG boundary overlaps in the model. I'll fix this for the sake aesthetics, at some point.
  • I have not gotten round to adding support for knuckle gussets on differential leaf gauges. So you won't be able to use knuckle gussets with uneven leaf gauges. I'll get to it eventually! ;)
Experimental Parametric Hinge

Wow, this is amazing :) Thanks a lot! I'll download and test as soon as possible. Your new version comes right on time for my current project. I'll keep you updated in the comments section of the new part.

Have a great day!

Not yet. But if time allows, maybe I can add the feature. Just so I understand, based on your explanation, are you referring to the thickness of the leaves, what I refer to as leaf gauge in the model. Or, are you referring to the width of the leaves?

Yes correct, I refer to the thickness of the leaves. It would be awesome if you were able to add this feature in the future. Thanks.

Thanks so much..........

What happened to the files. Too sad, I would have liked to print them.


There is just the one OpenSCAD file, "parametric_butt_hinge_2.9.scad".

There is only one file, because it is a parametric model that you customize via the model's parameters. Thingiverse also only allows one parametric model at a time, in order to simplify integration with the Customizer.

You can open the model in the Customizer, and set the parameters you want there. Once you are happy with the model, you can press the "Create Thing" button, to create a remix of the model. Then, you can go into your new remix of the model, and download the STL file from there.

If you do print any, I would love to see how they come out!

Great job! Do you have a source repository to use as a reference for learning/remixes?

Thank you kindly. To be honest, I have never remixed anything before, so I'm probably not the best person to ask. In fact, I've only ever written two OpenSCAD scripts. This one and a caged ball bearing. The only repository I have is my GitHub, here. https://github.com/rohingosling

Although most of the work in my Github is unrelated to 3D modeling, I have tried to comment my OpenSCAD files as informatively as possible, which may help.

Thanks, that's great!

Thanks that will be a lot of help I have 3 more enclosures to build.

Would a hinge like this work on a hollow core door? I have all 3" hinges on my doors. squared corners.

I don't know for sure, but if I were to hazard a guess, I would say no. Maybe, if you used a large number of hinges, 5 or more, printed in ABS, or Nylon, or even some of these newer fiber reinforced filament materials, then 'maybe' they might hold for a while. But hollow core doors are still pretty heavy, so as a long term solution plastic hinges may not be the optimal choice.

However, if you are willing to give it a try, I'd be curious to know if it works.

No the first on didn't work and it's because of my robo 3d ri printer is over extruding plastic. But the second one and all the rest I've made
i have adjusted the setting to 6 and it works fine no extra movement I can post picture if you like, i'm working on a 205mm one now, They are to be used for a 80/20 extruded aluminum with acrylic glass enclosure for my two robo 3d r1s and my creality cr-10 each of course.

Thanks Again for taking the time to put this up on thingiverse

It's a pleasure. And yup yup, over extrusion will definitely lock up the joint. I'm keen to see pics of the finished enclosure once you have it all up and working. I'm looking for ideas for an enclosure myself. I like the idea of extruded aluminum and acrylic.

After such a great job it would take to build boxes for tools, even a closure. You know where I can find them if you want to print? Bravissimo for the magnificent job.
Translated with Google

Thanks, much appreciated.
I actually originally made this hinge for a printer enclosure. But the rest of the enclosure is made out of wooden panels. I found some tool boxes on Thingiverse. Most of the toolboxes you can find though, have built in hinges.

one question about the hinge, how can I line up the holes exactly I'm trying to make a hinge to use on a piece of 80/20 extruded aluminum using the T slots and I can't seem to get the holes exactly straight in line. In other words I'm trying to make a piano hinge.
Thanks for the help

Comments deleted.

You know, when I was designing this, I thought of adding an option to select the number of fastener hole columns, so that one could configure a single column of fastener holes on each leaf, like a piano hinge. I'll see if I can add the option. Should be doable.

In the meantime, something you could do to line up the holes exactly, is to compute the hinge width as follows.

hinge_width = 4 x fastener_margin + 2 x fastener_head_diameter + 2 x leaf_gauge

This will align all the fastener holes on each leaf into a single column. Even if you specify an even number of holes for each leaf, they will overlap exactly to form single holes with that formula.

Thanks that a lot of help!

In the event that you ever need to make piano style hinges again, I have added a parameter to select one or two columns of fastener holes.
So you don't have to use that formula anymore to line up a single column of holes, you can just set "Fastener Column Count" equal to 1.

Pleasure. Did the one you printed work?
I'm keen to know how easy/hard it was to free up the knuckle joints on the ones you are printing. Because your leaves are quite narrow, it may be quite tough to get enough leverage to free up the joint.
I might print some long narrow piano like test hinges the way you have configured yours, just to get a feel for what's required to free up the joint after printing.

One of the easiest hinge customizers on Thingiverse worth a tip
Printing one now!


Thanks! Much appreciated.